The game of life is based on the mathematical concept of cellular automata, created by John von Neumann in the late 1940’s. The idea behind cellular automata is that the behavior of a group can be
described by examining the interactions between an individual simple machine, termed an automaton, and the nearby identical automata that directly interact with it. These automata, referred to as cells, affect the cell in focus and define that cell’s neighborhood and change depending on the rules of interaction in the system. For example, in Conway’s Game of Life, the neighborhood consists of the eight surrounding cells that determine whether the cell in question will be living or dead in the following round


The interactions between automata are determined by a set of rules that govern state changes. In the case of Life, there are only two states, alive and dead, but there could easily be many that represent different phenomena. The cellular automata itself is a data array consisting of the same number of dimensions as the possible number of states for each cell.

Cellular automata closely follow the complex behavior of organic colonies in their interactions. Over time, colonies tend to either die out, reach a stable level of organisms, maintain a constant rate of growth, or increase and decrease in population unpredictably. Without prior observation of a given pattern, predicting which of the four states the pattern will settle into is extremely difficult. Another unique characteristic is the ability of cells to self replicate, both individually and as part of complex structures, as proven by John Von Neumann in 1947. Von Neumann’s machine consisted of an infinite, two-dimensional grid of cells that could be in up to twenty-nine states and followed a large number of complex rules. It contained several sub-organisms that gathered materials from the environment, read the instructions and copied them, then performed the computation. Von Neumann’s machine worked by passing on the instructions used to create an automaton as data within the new cell. In biological cells, these instructions would be termed DNA.