Normally, all elements in init and the evolution list are integers between 0 and .

When a general function or replacement list is used, the elements of init and the evolution list can be any expressions.»

Explicit replacement rules lhsi->rhsi can contain patterns.

In a 1D cellular automaton, replacement rules or an explicit function fun are always taken to apply to a 1D list of neighbors. If the neighbors are specified by explicit offsets, they are given in the order of the offsets.

When the neighborhood in a multidimensional cellular automaton is defined by a range specification such as {r1,r2,…}, the list of neighbors is taken to be a full array with dimensions 2{r1,r2,…}+1.

If the neighbors in a multidimensional cellular automaton are specified by an explicit list of offsets, the neighbors are supplied in a one-dimensional list in the order of the offsets.

If an explicit function fun is given, the first argument supplied to it is the list of neighbors. The second argument is the step number starting at 0.

A complete rule specification is considered to be a pure Boolean function bfun if BooleanVariables[bfun] yields an integer v. In this case, bfun is applied to neighborhoods of v cells at each step. The neighborhoods extend Ceiling[v/2] cells to the left.

In an order‐s cellular automaton, specified by {rule,kspec,rspec,s}, each step depends on s preceding steps.

Initial conditions are constructed from init as follows:

{a1,a2,…}

explicit list of values ai, assumed cyclic

{{a1,a2,…},b}

values ai superimposed on a b background

{{a1,a2,…},{b1,b2,…}}

values ai superimposed on a background of repetitions of b1,b2,…

{{{{a11,a12,…},off1},{{a21,…},off2},…},bspec}

values aij at offsets offi on a background

{{a11,a12,…},{a21,…},…}

explicit list of values in two dimensions

{aspec,bspec}

values in d dimensions with d‐dimensional padding

The first element of aspec is superimposed on the background at the first position in the positive direction in each coordinate relative to the origin. This means that bspec[[1,1,…]] is aligned with aspec[[1,1,…]].