Rule garden / Experiment guide

A difference that cannot disappear

A picture can change wildly while keeping one small promise. Under rule 150, two gardens that begin one cell apart will always disagree somewhere. You can predict that without knowing what the next picture looks like.

Find the promise

  1. Open rule 150, scattered seed 7. Inspect generations 0, 1, 2, 3, and 4. Their difference counts are 1, 3, 3, 5, 3. What stays the same when the count changes?
  2. Jump to generation 127, then inspect 128. The count drops from 171 to 3. Both are odd. Could a later drop reach zero?
  3. Try generation 401, after the pattern crosses the picture’s seam. It has 41 differences; generation 439 has 251. Change the seed or first-row mode and press Grow. Predict whether the oddness survives.
  4. Compare rule 90 at generation 127. Its count drops from 128 to 2 at 128. These counts are even. Does evenness itself force a picture to vanish?

Count only the oddness

The parity of a row is 0 for an even number of lit cells and 1 for an odd number. XOR all its cells together to get that one bit: pairs of ones cancel.

Rule 150 takes left XOR center XOR right. Now XOR all the cells in the next row. On a circular row, every old cell is counted three times: once as a left neighbor, once as itself, and once as a right neighbor. Three copies of a bit XOR to that same bit. The next row therefore has the same parity as the old one, even across the joined edges.

The difference row follows rule 150 too: XORing two updated gardens cancels their shared terms and leaves the update of their differences. It starts with one lit cell, so its parity is 1 forever. Zero is even; complete agreement is impossible. The proof applies beyond the 440 rows shown here, on any finite circular width, and to any initial pair with an odd number of differences.

What the promise leaves open

Parity does not fix the count, the positions, or the picture. It does not say that the changing pattern can reconstruct its past. And it does not guarantee survival for an even number of initial differences.

Rule 90 counts every old cell twice, so its next row always has even parity. That permits zero but does not require it: its difference count is positive at every displayed generation. An invariant can rule out an outcome without telling you which of the remaining outcomes will occur.

An even difference that really does disappear

Outside the browser’s single-flip setup, compare an empty 801-cell row with the repeating row 011011…011 under rule 150. There are 534 differences. Every three-cell neighborhood contains two ones, so the next row is empty: the pair merges in one step. This is a separate starting condition checked in the test script, not a setting available in the garden controls.

Keep a useful record

Write down the rule, first-row mode, seed, generation, and difference count. Add a column for odd/even. The inspector counts disagreements even when you select Original garden. Use examples to check the implementation, and the three-copies argument to explain why the promise holds for every row.

Continue with cancellation without a retreating frontier or what changes at the seam.

Background: rules 90 and 150 are among the additive cellular automata described by Stephen Wolfram. The parity argument above is derived here directly from their XOR updates.

Checked on 2026-09-09: 7,040 complete difference rows against an independent time-jump calculation, all 2,046 bit rows of widths 1–10 for both parity laws, all 64 neighborhood pairs for rule-150 additivity, the stated counts, and the repeating-011 counterexample.