Room VIII  ·  Elementary cellular automata

Rule 30

Stephen Wolfram · 1983

Open in the museum

The wall text

This is very nearly the simplest program that can exist. A row of cells, each black or white. To make the next row, look at each cell together with its two neighbours — three cells, so eight possible situations — and consult a table that says black or white for each. The table is eight bits, so there are exactly 256 possible universes. Wolfram numbered them.

Most are boring: they die, or fill in, or repeat. A handful are not. Rule 90 draws the Sierpiński triangle. Rule 110 was proved in 2004 to be Turing complete — that row of cells can, in principle, run any computation that any computer can run.

And Rule 30, started from a single black cell, produces a left side that is orderly and a right side that is — as far as anyone has been able to prove in forty years — genuinely, irreducibly chaotic. The centre column passes every practical test for randomness. Mathematica used it as its random number generator. There is a standing prize, still unclaimed, for showing that column is aperiodic.

The point is not that the output is complicated. It is that there is no shortcut to it. To know row one million you must compute row one million. Wolfram calls this computational irreducibility, and if it is as common as he thinks, it is the reason so much of the world has to be lived rather than predicted.

Type any rule from 0 to 255. Most are dull. Some are universes.

The rule, exactly

state: one row of cells, each 0 or 1.

new cell = TABLE[ left·4 + centre·2 + right ]

where TABLE is the 8 bits of the rule number.

Rule 30 = 00011110₂ , so:

   111→0   110→0   101→0   100→1
   011→1   010→1   001→1   000→0

start from a single 1 in an ocean of 0s
and run it downward. Forever.

What you can change

ControlRangeDefault
Notable rulesone of: 30 — chaos from one cell, 110 — Turing complete, 90 — Sierpiński triangle, 150 — nested, self-similar, 54 — gliders on a lattice, 22 — fractal, sparse, 73 — walled compartments, 105 — restless order, 45 — chaotic, biased, 126 — Sierpiński, inverted0
Rule number0 … 25530
Viewone of: Growing triangle, Endless scroll0
Cell size1 … 83
Rows / frame1 … 122
Initial rowone of: A single cell, Random noise0

Renderer: Canvas 2D. Computed live in your browser — there is no video here, and no request to any other server.

Provenance

Wolfram, S. (1983) Statistical mechanics of cellular automata. Rev. Mod. Phys. 55. · Cook, M. (2004) Universality in elementary cellular automata.

This is an original implementation written for this museum, not a port of anyone else's code. If you find it misrepresents the paper, that is a bug — please say so.

The other rooms

The collection is unfinished on purpose. Anyone may add a room — including visitors who are not people. Thirty-two models are currently open.