Elementary cellular automaton

Last updated
An animation of how an evolution is determined in Rule 30, one of the 256 possible rules of elementary cellular automata. One-d-cellular-automate-rule-30.gif
An animation of how an evolution is determined in Rule 30, one of the 256 possible rules of elementary cellular automata.

In mathematics and computability theory, an elementary cellular automaton is a one-dimensional cellular automaton where there are two possible states (labeled 0 and 1) and the rule to determine the state of a cell in the next generation depends only on the current state of the cell and its two immediate neighbors. There is an elementary cellular automaton (rule 110, defined below) which is capable of universal computation, and as such it is one of the simplest possible models of computation.

Contents

The numbering system

There are 8 = 23 possible configurations for a cell and its two immediate neighbors. The rule defining the cellular automaton must specify the resulting state for each of these possibilities so there are 256 = 223 possible elementary cellular automata. Stephen Wolfram proposed a scheme, known as the Wolfram code, to assign each rule a number from 0 to 255 which has become standard. Each possible current configuration is written in order, 111, 110, ..., 001, 000, and the resulting state for each of these configurations is written in the same order and interpreted as the binary representation of an integer. This number is taken to be the rule number of the automaton. For example, 110d=011011102. So rule 110 is defined by the transition rule:

111110101100011010001000current patternP=(L,C,R)
01101110new state for center cellN110d=(C+R+C*R+L*C*R)%2

Reflections and complements

Although there are 256 possible rules, many of these are trivially equivalent to each other up to a simple transformation of the underlying geometry. The first such transformation is reflection through a vertical axis and the result of applying this transformation to a given rule is called the mirrored rule. These rules will exhibit the same behavior up to reflection through a vertical axis, and so are equivalent in a computational sense.

For example, if the definition of rule 110 is reflected through a vertical line, the following rule (rule 124) is obtained:

111110101100011010001000current patternP=(L,C,R)
01111100new state for center cellN112d+12d=124d=(L+C+L*C+L*C*R)%2

Rules which are the same as their mirrored rule are called amphichiral. Of the 256 elementary cellular automata, 64 are amphichiral.

The second such transformation is to exchange the roles of 0 and 1 in the definition. The result of applying this transformation to a given rule is called the complementary rule. For example, if this transformation is applied to rule 110, we get the following rule

current pattern000001010011100101110111
new state for center cell10010001

and, after reordering, we discover that this is rule 137:

current pattern111110101100011010001000
new state for center cell10001001

There are 16 rules which are the same as their complementary rules.

Finally, the previous two transformations can be applied successively to a rule to obtain the mirrored complementary rule. For example, the mirrored complementary rule of rule 110 is rule 193. There are 16 rules which are the same as their mirrored complementary rules.

Of the 256 elementary cellular automata, there are 88 which are inequivalent under these transformations.

It turns out that reflection and complementation are automorphisms of the monoid of one-dimensional cellular automata, as they both preserve composition. [1]

Single 1 histories

One method used to study these automata is to follow its history with an initial state of all 0s except for a single cell with a 1. When the rule number is even (so that an input of 000 does not compute to a 1) it makes sense to interpret state at each time, t, as an integer expressed in binary, producing a sequence a(t) of integers. In many cases these sequences have simple, closed form expressions or have a generating function with a simple form. The following rules are notable:

Rule 28

The sequence generated is 1, 3, 5, 11, 21, 43, 85, 171, ... (sequence A001045 in the OEIS ). This is the sequence of Jacobsthal numbers and has generating function

.

It has the closed form expression

Rule 156 generates the same sequence.

Rule 50

The sequence generated is 1, 5, 21, 85, 341, 1365, 5461, 21845, ... (sequence A002450 in the OEIS ). This has generating function

.

It has the closed form expression

.

Note that rules 58, 114, 122, 178, 186, 242 and 250 generate the same sequence.

Rule 54

The sequence generated is 1, 7, 17, 119, 273, 1911, 4369, 30583, ... (sequence A118108 in the OEIS ). This has generating function

.

It has the closed form expression

.

Rule 60

The sequence generated is 1, 3, 5, 15, 17, 51, 85, 255, ...(sequence A001317 in the OEIS ). This can be obtained by taking successive rows of Pascal's triangle modulo 2 and interpreting them as integers in binary, which can be graphically represented by a Sierpinski triangle.

Rule 90

The sequence generated is 1, 5, 17, 85, 257, 1285, 4369, 21845, ... (sequence A038183 in the OEIS ). This can be obtained by taking successive rows of Pascal's triangle modulo 2 and interpreting them as integers in base 4. Note that rules 18, 26, 82, 146, 154, 210 and 218 generate the same sequence.

Rule 94

The sequence generated is 1, 7, 27, 119, 427, 1879, 6827, 30039, ... (sequence A118101 in the OEIS ). This can be expressed as

.

This has generating function

.

Rule 102

The sequence generated is 1, 6, 20, 120, 272, 1632, 5440, 32640, ... (sequence A117998 in the OEIS ). This is simply the sequence generated by rule 60 (which is its mirror rule) multiplied by successive powers of 2.

Rule 110

The sequence generated is 1, 6, 28, 104, 496, 1568, 7360, 27520, 130304, 396800, ... (sequence A117999 in the OEIS ). Rule 110 has the perhaps surprising property that it is Turing complete, and thus capable of universal computation. [2]

Rule 150

The sequence generated is 1, 7, 21, 107, 273, 1911, 5189, 28123, ... (sequence A038184 in the OEIS ). This can be obtained by taking the coefficients of the successive powers of (1+x+x2) modulo 2 and interpreting them as integers in binary.

Rule 158

The sequence generated is 1, 7, 29, 115, 477, 1843, 7645, 29491, ... (sequence A118171 in the OEIS ). This has generating function

.

Rule 188

The sequence generated is 1, 3, 5, 15, 29, 55, 93, 247, ... (sequence A118173 in the OEIS ). This has generating function

.

Rule 190

The sequence generated is 1, 7, 29, 119, 477, 1911, 7645, 30583, ... (sequence A037576 in the OEIS ). This has generating function

.

Rule 220

The sequence generated is 1, 3, 7, 15, 31, 63, 127, 255, ... (sequence A000225 in the OEIS ). This is the sequence of Mersenne numbers and has generating function

.

It has the closed form expression

.

Note: rule 252 generates the same sequence.

Rule 222

The sequence generated is 1, 7, 31, 127, 511, 2047, 8191, 32767, ... (sequence A083420 in the OEIS ). This is every other entry in the sequence of Mersenne numbers and has generating function

.

It has the closed form expression

.

Note that rule 254 generates the same sequence.

Images for rules 0-99

These images depict space-time diagrams, in which each row of pixels shows the cells of the automaton at a single point in time, with time increasing downwards. They start with an initial automaton state in which a single cell, the pixel in the center of the top row of pixels, is in state 1 and all other cells are 0.

Random initial state

A second way to investigate the behavior of these automata is to examine its history starting with a random state. This behavior can be better understood in terms of Wolfram classes. Wolfram gives the following examples as typical rules of each class. [3]

Each computed result is placed under that result's source creating a two-dimensional representation of the system's evolution.

In the following gallery, this evolution from random initial conditions is shown for each of the 88 inequivalent rules. Below each image is the rule number used to produce the image, and in brackets the rule numbers of equivalent rules produced by reflection or complementing are included, if they exist. [5] As mentioned above, the reflected rule would produce a reflected image, while the complementary rule would produce an image with black and white swapped.

Unusual cases

In some cases the behavior of a cellular automaton is not immediately obvious. For example, for Rule 62, interacting structures develop as in a Class 4. But in these interactions at least one of the structures is annihilated so the automaton eventually enters a repetitive state and the cellular automaton is Class 2. [6]

Rule 73 is Class 2 [7] because any time there are two consecutive 1s surrounded by 0s, this feature is preserved in succeeding generations. This effectively creates walls which block the flow of information between different parts of the array. There are a finite number of possible configurations in the section between two walls so the automaton must eventually start repeating inside each section, though the period may be very long if the section is wide enough. These walls will form with probability 1 for completely random initial conditions. However, if the condition is added that the lengths of runs of consecutive 0s or 1s must always be odd, then the automaton displays Class 3 behavior since the walls can never form.

Rule 54 is Class 4 [8] and also appears to be capable of universal computation, but has not been studied as thoroughly as Rule 110. Many interacting structures have been cataloged which collectively are expected to be sufficient for universality. [9]

Related Research Articles

<span class="mw-page-title-main">Koch snowflake</span> Fractal curve

The Koch snowflake is a fractal curve and one of the earliest fractals to have been described. It is based on the Koch curve, which appeared in a 1904 paper titled "On a Continuous Curve Without Tangents, Constructible from Elementary Geometry" by the Swedish mathematician Helge von Koch.

<span class="mw-page-title-main">Cellular automaton</span> Discrete model studied in computer science

A cellular automaton is a discrete model of computation studied in automata theory. Cellular automata are also called cellular spaces, tessellation automata, homogeneous structures, cellular structures, tessellation structures, and iterative arrays. Cellular automata have found application in various areas, including physics, theoretical biology and microstructure modeling.

In number theory, Aleksandr Yakovlevich Khinchin proved that for almost all real numbers x, coefficients ai of the continued fraction expansion of x have a finite geometric mean that is independent of the value of x and is known as Khinchin's constant.

In mathematics, the Fibonacci polynomials are a polynomial sequence which can be considered as a generalization of the Fibonacci numbers. The polynomials generated in a similar way from the Lucas numbers are called Lucas polynomials.

<span class="mw-page-title-main">Rule 110</span> Elementary cellular automaton

The Rule 110 cellular automaton is an elementary cellular automaton with interesting behavior on the boundary between stability and chaos. In this respect, it is similar to Conway's Game of Life. Like Life, Rule 110 with a particular repeating background pattern is known to be Turing complete. This implies that, in principle, any calculation or computer program can be simulated using this automaton.

A mathematical coincidence is said to occur when two expressions with no direct relationship show a near-equality which has no apparent theoretical explanation.

In number theory, an n-smooth (or n-friable) number is an integer whose prime factors are all less than or equal to n. For example, a 7-smooth number is a number whose every prime factor is at most 7, so 49 = 72 and 15750 = 2 × 32 × 53 × 7 are both 7-smooth, while 11 and 702 = 2 × 33 × 13 are not 7-smooth. The term seems to have been coined by Leonard Adleman. Smooth numbers are especially important in cryptography, which relies on factorization of integers. The 2-smooth numbers are just the powers of 2, while 5-smooth numbers are known as regular numbers.

<span class="mw-page-title-main">Rule 30</span> Elementary cellular automaton

Rule 30 is an elementary cellular automaton introduced by Stephen Wolfram in 1983. Using Wolfram's classification scheme, Rule 30 is a Class III rule, displaying aperiodic, chaotic behaviour.

<span class="mw-page-title-main">Cake number</span> Greatest number of regions into which a cube can be partitioned by n planes

In mathematics, the cake number, denoted by Cn, is the maximum of the number of regions into which a 3-dimensional cube can be partitioned by exactly n planes. The cake number is so-called because one may imagine each partition of the cube by a plane as a slice made by a knife through a cube-shaped cake. It is the 3D analogue of the lazy caterer's sequence.

In combinatorial mathematics, an alternating permutation of the set {1, 2, 3, ..., n} is a permutation (arrangement) of those numbers so that each entry is alternately greater or less than the preceding entry. For example, the five alternating permutations of {1, 2, 3, 4} are:

<span class="mw-page-title-main">Eulerian number</span> Polynomial sequence

In combinatorics, the Eulerian number is the number of permutations of the numbers 1 to in which exactly elements are greater than the previous element.

<span class="mw-page-title-main">Butterfly curve (algebraic)</span>

In mathematics, the algebraic butterfly curve is a plane algebraic curve of degree six, given by the equation

<span class="mw-page-title-main">Von Neumann neighborhood</span> Cellular automaton neighborhood consisting of four adjacent cells

In cellular automata, the von Neumann neighborhood is classically defined on a two-dimensional square lattice and is composed of a central cell and its four adjacent cells. The neighborhood is named after John von Neumann, who used it to define the von Neumann cellular automaton and the von Neumann universal constructor within it. It is one of the two most commonly used neighborhood types for two-dimensional cellular automata, the other one being the Moore neighborhood.

In mathematics, the Jacobsthal numbers are an integer sequence named after the German mathematician Ernst Jacobsthal. Like the related Fibonacci numbers, they are a specific type of Lucas sequence for which P = 1, and Q = −2—and are defined by a similar recurrence relation: in simple terms, the sequence starts with 0 and 1, then each following number is found by adding the number before it to twice the number before that. The first Jacobsthal numbers are:

In mathematics, a Delannoy number describes the number of paths from the southwest corner (0, 0) of a rectangular grid to the northeast corner (m, n), using only single steps north, northeast, or east. The Delannoy numbers are named after French army officer and amateur mathematician Henri Delannoy.

Backhouse's constant is a mathematical constant named after Nigel Backhouse. Its value is approximately 1.456 074 948.

<span class="mw-page-title-main">Rule 90</span> Elementary cellular automaton

In the mathematical study of cellular automata, Rule 90 is an elementary cellular automaton based on the exclusive or function. It consists of a one-dimensional array of cells, each of which can hold either a 0 or a 1 value. In each time step all values are simultaneously replaced by the exclusive or of their two neighboring values. Martin, Odlyzko & Wolfram (1984) call it "the simplest non-trivial cellular automaton", and it is described extensively in Stephen Wolfram's 2002 book A New Kind of Science.

<span class="mw-page-title-main">Regular paperfolding sequence</span>

In mathematics the regular paperfolding sequence, also known as the dragon curve sequence, is an infinite sequence of 0s and 1s. It is obtained from the repeating partial sequence

A mathematical constant is a key number whose value is fixed by an unambiguous definition, often referred to by a special symbol, or by mathematicians' names to facilitate using it across multiple mathematical problems. Constants arise in many areas of mathematics, with constants such as e and π occurring in such diverse contexts as geometry, number theory, statistics, and calculus.

<span class="mw-page-title-main">Ulam–Warburton automaton</span>

The Ulam–Warburton cellular automaton (UWCA) is a 2-dimensional fractal pattern that grows on a regular grid of cells consisting of squares. Starting with one square initially ON and all others OFF, successive iterations are generated by turning ON all squares that share precisely one edge with an ON square. This is the von Neumann neighborhood. The automaton is named after the Polish-American mathematician and scientist Stanislaw Ulam and the Scottish engineer, inventor and amateur mathematician Mike Warburton.

References

  1. Castillo-Ramirez, A., Gadouleau, M. (2020), Elementary, Finite and Linear vN-Regular Cellular Automata, Information and Computation, vol. 274, 104533. Section 3. https://doi.org/10.1016/j.ic.2020.104533.
  2. Cook, Matthew (2009-06-25). "A Concrete View of Rule 110 Computation". Electronic Proceedings in Theoretical Computer Science. 1: 31–55. doi: 10.4204/EPTCS.1.4 . ISSN   2075-2180.
  3. Stephen Wolfram, A New Kind of Science p223 ff.
  4. Rule 110 - Wolfram|Alpha
  5. Wolfram, Stephen (1994). "Tables of Cellular Automaton Properties" (PDF). Cellular Automata and Complexity: Collected Papers (PDF). Westview Press. pp. 516–521. ISBN   0-201-62716-7.
  6. Rule 62 - Wolfram|Alpha
  7. Rule 73 - Wolfram|Alpha
  8. Rule 54 - Wolfram|Alpha
  9. Martínez, Genaro Juárez; Adamatzky, Andrew; McIntosh, Harold V. (2006-04-01). "Phenomenology of glider collisions in cellular automaton Rule 54 and associated logical gates" (PDF). Chaos, Solitons & Fractals. 28 (1): 100–111. doi:10.1016/j.chaos.2005.05.013. ISSN   0960-0779.