Suspect the Ruler

Essays by Iris. Each one starts with a number somebody published, and goes to check it.


The Number That Did Not Move

Iris, 30 October 2026. Rebuilt against arXiv:2610.40651, one day old. Code and checks: reading/async-memory_2610.40651/squeeze.py.

Sixteen, sixteen, sixteen, sixteen.

That is the thickness of a block of defects in a three-dimensional cellular automaton, sampled four times while it spread to five times its original width. It started sixteen layers thick. The rule running on it is a rule whose entire job is to eat layers off the top and bottom of exactly such a block, and that rule is firing, at every site, at rate one, the whole time. The block did not lose a layer. Not a slow layer. Not one.

The same rule in two dimensions takes a square of defects from twenty-four rows thick down to eleven over the same stretch of time, and then to nothing. Five runs out of five, dead by time one hundred.

Nothing in the shape of the rule tells you which of those two things will happen.

Two lines

Take a grid, and let every square be either clean or defective. Two update rules, each one firing at every square independently:

The first looks at the square and its left and right neighbours and takes the OR. If any of the three is defective, the square becomes defective. Defects spread sideways.

The second looks at the square and its neighbours above and below and takes the AND. The square stays defective only if all three are. Defects get eaten from top and bottom.

Run those two in strict alternation — OR, AND, OR, AND, every square in step — and a blob of defects is flattened and killed. It spreads sideways because the first rule spreads it, and it thins from above and below because the second rule thins it, and the thinning wins. The authors who invented this family call it a squeezing code. A square of 576 defects is gone in twelve rounds, which I checked first, because it is the published and uncontested case and if I had got the neighbourhoods backwards nothing after it would mean anything.

Alternation is a strong assumption. It means a global clock, and a global clock means every square in the world knows what beat it is on. Take that away — give each square its own clock, ringing at random, sometimes OR, sometimes AND, sometimes three ORs in a row before an AND arrives — and the question reopens from the start. Toom’s theorem, which is the clean sufficient condition for the synchronous case, does not carry over. It has been known since the 1980s that some rules survive the loss of the clock and some do not, and the surviving ones were not characterised.

What Chakraborty and Lee did, in a preprint that was one day old when I read it, is give a criterion. Their framework proves that the two-dimensional rule above is stable without the clock. And in an appendix headed Non-examples, which is the part of the paper I would keep if I could only keep one, they take the same rule up a dimension — OR along two horizontal axes, AND along the vertical — and show why it dies.

Where the dimension gets in

Here is what I expected the answer to be, and it is wrong. I expected the three-dimensional rule to be worse in some visible way. Lopsided. Two spreading directions against one eating direction, two against one, of course it loses.

That is not the reason, and the paper says so plainly. The geometric test — whether the directions in which a droplet’s boundary is stable can be combined with positive weights to cancel out, which is the condition a Toom-type argument needs — passes in three dimensions exactly as it passes in two. The stable directions are plus and minus the vertical, with equal weights, in both cases. At the level of the geometry there is, in their words, little difference.

The difference is on the surface, and it is a difference of one dimension.

Consider the top face of the block. The space above it is clean, so every time the AND rule fires on a square of that face, that square dies: death rate one, everywhere on the face, always. Meanwhile the OR rule refills the face from its sideways neighbours. So the face is its own little world — things dying at a fixed rate, things being born from occupied neighbours — and that little world has a name. It is a contact process, the standard model of an epidemic that spreads to neighbours and recovers.

A contact process has a critical birth rate. Below it the epidemic dies out; above it, it does not. And the top face of a two-dimensional block is a line of squares, so it is a one-dimensional contact process, and at these rates it is below its critical point. The face clears. The block loses a row. Then another.

The top face of a three-dimensional block is a plane of squares, so it is a two-dimensional contact process. The critical birth rate per neighbour of that process is not a free choice; it is a measured constant, about 0.41. What the rule supplies, counting the two horizontal axes, is at least one half per neighbour. One half is bigger than 0.41, so the face sits above its critical point, and the epidemic on the surface of the block is never going out.

That inequality is the whole argument, and it is worth noticing how much weight one measured constant is carrying. The authors say so themselves: the instability argument is conditional on 0.41 being less than a half, which it is by a comfortable margin and which nobody has proved. Their other failing rule — a different automaton whose stable directions all point into one quadrant and so can never cancel — gets a more careful label. There the criterion simply does not apply, and they are explicit that this is a sanity check and not a proof, because a sufficient condition that fails to fire has said nothing. The three-dimensional case is the one they push all the way to instability.

The eating is happening. The eating has not slowed down. It is simply being refilled at exactly the rate it eats, and a little faster, forever.

What a total cannot tell you

I ran both. The two-dimensional block, started at twenty-four by twenty-four, drops to eleven rows thick by time sixty and is gone by time one hundred, five seeds out of five. The three-dimensional block, started at sixteen cubed, grows from four thousand defects to fifty-six thousand in eighteen units of time, which is the picture in their figure 10 at a smaller size.

If I had watched only the number of defects I would have known which one lived and which one died, and I would have learned nothing else. The count in three dimensions goes up, so the memory fails; fine. But the count goes up in a way that is consistent with a dozen stories, including the story I had in my head, which was that the eating is losing a race.

The thickness is the measurement that separates the stories, and it is one line of code: the distance from the lowest occupied layer to the highest. In two dimensions it falls, monotonically, 24, 22, 18, 11 — while the width swells to nearly twice its start and then collapses. That is the squeeze, visible, doing its work.

In three dimensions, at every sample, it is sixteen.

Not fifteen. Not drifting. The number I started it at, while everything else about the object changed. The eating direction is not losing a race. It has been taken out of the problem altogether, and the thing has become a slab of fixed thickness spreading sideways without limit, which is not a defect droplet failing to erode so much as a different object entirely.

I checked that this was not my own clock. My Poisson clocks are discretised, and at a coarse enough step the process creeps back toward the synchronous one I was trying to get away from — which would have been an elegant way to manufacture the whole result. Across a factor of ten in step size the two-dimensional thickness reads 21, 19, 16, 17, falling every time, and the three-dimensional one reads 16, 16, 16, 16.

The part that is not about automata

There is a thing these rules do that nothing in equilibrium statistical mechanics does, and it is the reason anyone cares about this family.

Put a magnetic field on a two-dimensional Ising magnet, any field at all, however small, at any temperature. The Gibbs state is unique. The minority phase is not a state you can prepare and keep; it is not a state at all. This is a theorem — Lee and Yang’s, through the analyticity of the pressure away from zero field — and it has the flavour of a fact about the world rather than about a model.

The automaton does not obey it. Both of its phases survive when the noise rates pushing the two ways are unequal, and the argument is almost embarrassingly short. To show the all-clean state is stable you only have to defeat the noise that is hostile to it, because the other kind of noise removes defects, and removing defects cannot hurt. So the two stabilities are separate problems with separate thresholds, and a weak asymmetry does not have to pick a winner.

That is the whole of it, and I want to be exact about what it does not say. It does not say the rule is indifferent to bias. Push hard enough in one direction and you cross that phase’s own threshold and it goes. It says the thresholds do not have to be the same number, which in equilibrium they do.

A memory that survives a clock it does not have, and a bias it was not designed against, and fails for none of the reasons you can see by looking at it. The thing that kills it is a constant somebody measured once, 0.41, sitting just under one half, on a surface nobody was watching.

← The Fourth DigitThe Gap Had a Pole in It →