Stop 1 of 4
Guided tour
Why this rule matters
Four stops, four ideas: collapse, randomness, additive symmetry, and localized computation near the ordered/chaotic boundary. Each one runs live with marked features. Watch first; explore after.
Why these four stops?read in layers
Start here these four rules cover the four very different things a cellular automaton can do: disappear, repeat, look random, or grow shapes. If you see all four, you've seen the whole range.
High school Rule 0 erases everything (Class I). Rule 30 looks like static even though it's 100% deterministic (Class III) - Wolfram famously used it as a random-number generator. Rule 90 makes a Sierpiński triangle from a single seed because it's XOR-of-neighbours (additive). Rule 110 grows little gliders that interact (Class IV) and is the only one of the four proven to be Turing-complete.
Undergrad Rule 90's nested structure is a consequence of its additivity over GF(2): its evolution is given by the binomial coefficients mod 2, which is exactly the Sierpiński triangle pattern. Rule 30 passes most standard randomness tests at the centre column despite being fully deterministic, illustrating computational irreducibility - no formula short-circuits the simulation. Rule 110's universality is shown by Cook (2004) via cyclic-tag-system emulation.
Going deeper the four-stop tour intentionally skips Class II rules (most of the 256). They're behaviourally the largest family but the least interesting for understanding the range of CA behaviour. The atlas in the lab shows the full 256-rule distribution so you can see how unusual Class III and IV actually are.
What the metrics reveal
Connect each mark to a measurement
The tour marks what your eye should catch. The lab measures the same behaviour, so a pattern can move from "I see it" to "the rule exposes it in the numbers."
How do measurements turn "I see it" into a number?read in layers
Start here looking at a CA picture, your eye notices things like "it's all black," "it's stripey," or "it looks like static." Measurements are just careful ways of counting those impressions so two different rules can be compared without arguing about what you saw.
High school for example, row density is just "what percentage of this row is black?" - a number between 0 and 1. Row entropy turns a 50/50 mix into the highest score and a one-colour row into 0; it asks "how surprising is the colour of a random cell in this row?". Each metric is a question with a numerical answer.
Undergrad the metrics in the lab map to distinct information-theoretic and dynamical-systems quantities: H(p) = Shannon entropy of the per-row Bernoulli distribution; Hn = per-cell entropy rate over n-cell blocks; row N→N+8 correlation ≈ lag-8 spatiotemporal autocorrelation rescaled to [-1, 1]; the perturbation lightcone is a one-trajectory Lyapunov probe analogous to the maximum Lyapunov exponent for continuous systems.
Going deeper these aren't the only useful measurements. The 1990s/2000s ECA literature also uses input-entropy (Wuensche), Z-parameter (Wuensche), compression ratios, topological entropy, communication complexity, and several others. None of them is canonical; each highlights a different aspect of complexity. The survey by Martínez (arXiv:1306.5577) compares how each classifies the 256 rules.
- Collapse / order
- Low row entropy and high row correlation: the rule forgets the seed and keeps repeating itself. Measure collapse.
- Noise / random-looking behaviour
- High entropy, lively density, and low correlation: rows stay mixed and stop resembling their recent past. Measure Rule 30.
- Triangles / additive symmetry
- Block entropy stays structured while correlation follows repeated algebraic texture. Measure Rule 90.
- Localized packets / gliders
- Sensitivity spreads as tracks instead of a blast; entropy and correlation sit between frozen order and noise. Measure Rule 110.
Explorer
Rule
How do I read the bits readout?read in layers
Start here the bits readout shows the rule's little decision table. Each three-cell pattern (the column header) maps to a black or white output (the column body). That's the whole rule - you could write it on an index card.
High school the eight columns are the eight possible left-centre-right patterns, in order from 111 (rightmost in the canvas, leftmost in convention) down to 000. Reading the eight output bits left-to-right as a binary number gives the rule's decimal name. Rule 30 = 00011110; rule 110 = 01101110. Change one output bit and you've made a different rule - one of the 7 neighbours of the current rule in the 256-rule hypercube.
Undergrad the 256 rules sit at the vertices of an 8-dimensional Boolean hypercube. Symmetry quotients (spatial reflection ⊕ colour complement) reduce 256 → 88 inequivalent orbits. Local rule changes (flipping one output bit) can move you across class boundaries, so neighbourhood structure in this hypercube is itself a rich object - studied by Wuensche under "rule space" topology.
GIF export uses the current rule, seed, width, and generation count.
Hand-set seed row: click cells below, then choose "hand-set row".
Lab
Langton λ lab
Turn a rule into measurements you can see. Langton's λ counts how many of the eight neighbourhoods produce a live cell; Langton used λ to frame phase transitions and computation near the edge of chaos. Density and entropy show whether rows collapse, repeat, or keep information mixed. Block entropy measures short-cell patterns, normalized per cell so H2 and H3 stay comparable. Row correlation checks how much a future row still resembles its past, and sensitivity flips one starting cell to follow the lightcone of disagreement.
What each metric actually is, plainlyread in layers
Start here each row in the metric grid asks the picture one question and gives a number back. "How much black is in this row?" (density). "How mixed-up is it?" (entropy). "Does the future look like the past?" (correlation). "If I poke it, does the poke spread?" (sensitivity). The numbers let you compare two rules without arguing about what you saw.
High school Langton's λ = (number of 1s in the rule's output table) / 8. Row entropy uses Shannon's formula H(p) = -p·log2 p - (1-p)·log2(1-p) where p is the fraction of black cells in the row; maxes at 1 for a half-and-half row. Row correlation compares each row to the row 8 steps later and rescales matches to a number between -1 (perfectly inverted) and +1 (perfectly the same). Sensitivity flips one cell at the seed centre and tracks the cone of differences.
Undergrad Block entropy Hn: slide a window of n adjacent cells across the row, count how often each of the 2n possible windows appears, take the Shannon entropy of that empirical distribution, then divide by n. The per-cell normalisation puts H2 and H3 on the same axis (entropy rate). The perturbation lightcone is the discrete-CA analogue of a maximum Lyapunov exponent probe. Reference: C. G. Langton, "Computation at the edge of chaos: Phase transitions and emergent computation," Physica D 42 (1990) 12-37.
Going deeper the atlas's complexity (≈ 0.72·entropy-score + 0.28·decorrelation) and sensitivity (≈ 0.62·max-changed/width + 0.38·spread-rate) are weighted combinations defined for ranking on this site only - they're not standard published measures, so don't cite them. Standard alternatives in the literature: Wuensche's input-entropy and Z-parameter, Lempel-Ziv compression ratio, topological entropy, and communication complexity (see the survey in Martínez 2013).
Try rule 30 for random-looking irreducibility, rule 110 for Class IV gliders and computation, and rule 90 for clean nested structure. Narrow widths and wraparound boundaries can change the numbers, so treat lab metrics as evidence from the current setup.
Fraction of neighbourhood outputs that create a live cell.
Read adjacent pairs. Higher values mean more short local patterns stay in play.
Read neighbourhood-sized triples. Rich rules use more of the tiny pattern alphabet.
Compare rows eight steps apart. Near 1 repeats, near 0 forgets, negative inverts.
Track how fast one flipped cell widens its future disagreement cone.
Metric lens
Choose what to look for next
Pick one measurement and the lab highlights the matching evidence: the score card, the sparkline, or the canvas where the behaviour becomes visible.
Sensitivity shows where one flipped cell matters
Watch the magenta delta canvas: narrow tracks mean structure carries the change; a broad burst means chaos; a quick fade means the rule forgets.
All-rule measurement map
λ × complexity × sensitivity
Scan every rule in one field. The horizontal axis is Langton's λ, the vertical axis is a weighted entropy/decorrelation score, and colour marks a weighted one-cell perturbation score. "Complexity" and "sensitivity" are composite rankings for exploration here, not standard canonical measures. Click a ranked rule to open its lab view.
| Rule | Class | λ | Complexity | Sensitivity | Spread |
|---|
How to read it
Class I rules erase information; metrics dive toward zero or one. Class II rules make tidy repetitions. Class III rules keep high entropy and spread small changes fast. Class IV rules are the interesting middle in Wolfram's classification: block entropy stays alive, row correlation neither freezes nor vanishes completely, and changes travel as structured packets. Langton's edge-of-chaos idea is a nearby lens, not a synonym.
Why rule 110 and rule 30 matter
Rule 30 is a compact demonstration of computational irreducibility: the only honest way to know row 100 is to run the intervening rows. Rule 110 is famous because its moving local structures can perform universal computation. The lab view makes both claims visible: not as slogans, but as density, entropy, and perturbation growth.
Original seed
Perturbed seed
Changed cells highlighted
Magenta cells are positions where the one-cell perturbation changed the future. A narrow, persistent cone hints at mobile structure; a full blast suggests chaos; a quick fade means the rule forgets.
Comparison view
Two rules, one seed
Pin two rules and watch them evolve side-by-side from the same starting row. Use #compare=30,110 to share the pair.
Why compare from the same seed?read in layers
Start here using the same starting row makes the comparison fair. Any difference you see is the rule's fault, not the seed's.
High school the default pair - 30 vs 110 - contrasts a Class III rule (chaotic, statistically random-looking) with a Class IV rule (gliders + interactions, universal computation). Same seed, very different futures. Try also 90 vs 150 (both additive but with different propagation), or 110 vs 124 (mirror equivalents - identical dynamics, mirrored output).
Undergrad for reflection-equivalent pairs (e.g. 30/86, 110/124), comparing from a left-right-symmetric seed (single centre cell) makes the two outputs mirror images. Choosing an asymmetric random seed breaks that symmetry and shows the orbit structure directly. The compare view is also a quick check on the equivalence-class machinery used by this site: mirror-pairs from the same symmetric seed must produce mirrored outputs row-by-row.
Rule 30
Rule 110
Gallery
The 256 rules
Click any preview to load it into the explorer, or filter by Wolfram class.
Why don't the class counts add to 88?read in layers
Start here the four class chips show how many rules out of the 256 land in each behaviour family. They add to 256, not to 88. The 88 number you might have heard comes from grouping rules that are basically the same (mirrors and colour-swaps of each other).
High school the symmetry group has 4 elements (identity, reflection, complement, both). A "generic" rule has an orbit of size 4 under this group, but rules with their own internal symmetry have smaller orbits (size 1 or 2). 88 inequivalent orbits cover all 256 rules: 256 = 4×64 generic + (a few smaller orbits worth of self-symmetric rules), which is why 256/4 = 64 isn't exactly the right count.
Undergrad by Burnside / Cauchy-Frobenius: |orbits| = (1/|G|) · Σ |Fix(g)|. With G = {identity, reflection, complement, reflection∘complement} of order 4: |Fix(id)| = 256; |Fix(reflection)| = 64 (six of the eight neighbourhoods pair under l↔r, leaving six free output bits); |Fix(complement)| = 16 (input pairs must have opposite outputs: four free bits); |Fix(reflection∘complement)| = 16. Total = (256 + 64 + 16 + 16)/4 = 88 inequivalent orbits, exactly Wolfram's count.