partitioning cellular automaton