# Elementary cellular automaton simulator

This page allows you to experience the fascinating behavior of elementary cellular automaton. Elementary cellular automaton is the simplest form of cellular automaton, consisting of cells arranged in a straight line. It has the characteristic that the next state of each cell is determined by the states of the cell itself, its left neighbor cell, and its right neighbor cell.

Pattern | 111 | 110 | 101 | 100 | 011 | 010 | 001 | 000 |
---|---|---|---|---|---|---|---|---|

New state | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 |

Elementary cellular automata play an important role in the field of computation theory. Among them, there exist ECA rules that have computational power equivalent to a universal Turing machine, and they are considered to be the simplest form of a universal computing model. Additionally, there are ECA rules that generate fractal-like self-similar patterns or chaotic behaviors, garnering attention in the study of complex systems. The fact that they produce complex behaviors from simple rules is thought to be useful for modeling natural phenomena.

## Rules of an elementary cellular automaton

- A one-dimensional array of cells is given
- Each cell is assigned a value of either 0 or 1
- The state of a particular cell at time t+1 is determined by the states of that cell itself and its two neighboring cells (left and right) at time t
- A rule is defined that specifies the next state (0 or 1) for each of the 8 possible combinations of the states of the three cells (center, left neighbor, right neighbor): 111, 110, 101, 100, 011, 010, 001, 000
- Therefore, there are 2^8 = 256 possible ruleset specifications