# Three Dimensional Self Reproducing Cellular Automata

I came across an interesting blog post by John D Cook on self reproducing cellular automata. In the article he describes the work of Edwin Banks and demonstrates how a very simple base 2 rule produces continuous reproductions of the initial state. The rule states: given a two-dimensional grid containing only ones and zeros, the next value for a cell is the sum of its non-diagonal neighbors modulus 2.

All indications pointed to this rule exhibiting the same behavior with 3D cellular automata, but I was still eager to verify it. Sure enough when the rule is extended to three dimensions it produces self replicating 3D cellular automata. Using the same “plus” sign configuration as in our 2D example, we can generate a sequence exactly analogous to the 2D results, but extended in three dimensions.

This works with even very complex initial states, such as this Triceratops model:

The full Mathematica code used to produce these plots is supplied below: