A 2 state cellular automata uses rules that apply on a 3 by 3 neighborhood.
the bitmap can be encoded as a 9 bit long number
so we can represent the above transition as
there are 29 (i.e. 512) possible transitions 2 state 3x3 bitmap each yielding a 1 or a 0
we can represent this as a 512 digit long binary number
this can be represented as a sequence of 86 base64 encoded digits, each digit representing a 6bits (26)
This is called a Cellular Automata Rule Biology – CARB – which acts as a lookup table
There are 2512 possible CARBs (around 10151, which is more than the estimated number of atoms in the universe) and it would take a hell of a lot of computational effort to process all of them.
The objective is to find out which CARBS are viable and which ones are not. By viable, I mean when presented with a grid of cellular automata, applying the CARB to each of the cells in the grid does not cause the pattern to die out or become swamped or repeat.
Reference implementation is
Note that Delphi source code is available under a free license for non commercial use.