Sequential substitution systems [emulating cellular automata]

Given the rules for an elementary cellular automaton in the form used on page 867, the following will construct a sequential substitution system which emulates it:

CAToSSS[rules_] := Join[rules /. ({a_,b_,c_} -> d_) -> ({1,2a,2b,2c} -> {2d,1,2b,2c}), {{1,0,0} -> {0,0}, {0} -> {1,0,0,0}}]

The initial condition {0,0,2,0,0} for the sequential substitution system corresponds to a single black cell surrounded by white cells in the cellular automaton.