A cellular automaton consists of:
(a) A structure of cells, such as the squares on a chess board.
(b) A set of values or "states" such that each cell is associated with a particular state.
(c) A set of rules describing how one state of the system (a particular configuration of cells in specific states) is to be transformed or converted to another state of the system.
This is software for exploring five cellular automata, as follows:
1. An extended version of Conway's Life, called q-state Life.
2. A simulation of the Belousov-Zhabotinsky chemical reaction in which, beginning from a random state of the system, spirals and curlicues "spontaneously" emerge.
3. A process called Togetherness in which cells with random states move so as to maximize the number of neighbors of each cell in the same state as that cell (or, thought of in another way, in which the cells rearrange themselves so as to form maximal clusters of cells all having the same state).
4. Viral Replication, a simulation of a population of dividing cells subject to viral infection.
5. Diffusion-Limited Aggregation, illustrating a process in which particles diffuse (moving randomly) and aggregate to form a fractal structure.
The documentation provides a complete description of the algorithms used.