Three routes. Three controls. One limit.
Working manuscript · v0.1
THE QUESTION THIS CLOSES
Artificial life has asked for decades whether one evolved advance becomes the basis of the next. Lenski, Ofria, Pennock and Adami showed complex functions building on simpler ones in Avida in 2003. My earlier notes built a barrier for evolution to cross and followed what happened next. This note reports what happened when I tried to make the stronger claim survive its controls.
Lenski, Ofria, Pennock & Adami (2003) — The evolutionary origin of complex features ↗
THE NOTE
In 51 of 100 worlds, evolution found the combination that crosses the barrier. It was always the same two-cell program, one mutation away from the ancestor.
Before asking whether that invention created new possibilities, I checked whether my world was capable of having any.
A world with no room
The genome in that world can hold 14,196 programs. I enumerated all of them and computed exactly what each one does. The evolved program could reach nothing the ancestor couldn't reach within two mutations; it shortened 83 paths by one step. “No existing program can compute this” was true of 99% of the functions that world could compute, so it was a weak test of novelty.
The next step I had planned to test was a second capability that pays only for organisms that already have the first. It paid only because I had written the energy rule that way.
There is also a limit that no fixed set of building blocks escapes. If an invention evolved from its ancestor in a few mutations, then anything the invention can reach, the ancestor can reach with those few extra mutations. An invention can't create a destination. It can only bring one nearer.
01 / Composition
I let programs grow into chains of up to three cells: 2.39 million programs, each one computed exactly. An invention made the targets built on it tens of thousands of times more reachable than they were from controls with the same head start. Targets sharing one cell with it gained a few hundred times. Targets sharing none gained nothing.
What an invention adds is exactly the set of targets that contain it. Running evolution can't add more: every new genotype is one mutation from a parent, so the expected discoveries of any target are that fixed map, weighted by which parents reproduced.
The answer also turned on a choice I had to make. Draw targets independently of each other and no invention helps them. Build targets around the invention and it helps them hugely. Either way the target list decides.
02 / Niche construction
The obvious escape was to stop writing target lists and let the world decide what is useful. Program outputs became material, and a generic chemistry decided whether transforming that material released energy. Nothing in the rule mentions any particular program.
On paper it worked. Each producer's waste opened niches specific to that producer, and consumers that could live on everything almost vanished: 0.1–0.3%, against 8–10% when reaction products were unconstrained. The machinery worked too: I could remove one lineage's material, replay a recording of it, and reproduce the whole world byte for byte.
Then the world ran. Evolved producers appeared in all twelve pilot worlds, and consumers drew essentially nothing from them. The most likely reason is that every legal reaction had to happen, uphill as well as downhill. Letting reactions run only downhill removed that cost and brought back generic consumers: rotations of the bits are always legal, and once they can refuse the uphill moves they skim energy from almost any material. They passed the registered bound on one fresh landscape, and niche overlap passed its bound on another.
In this chemistry, the constraint that makes niches specific to their producers also permits generic exploitation once reactions release energy selectively. This was the one route that let the world decide what counted, and this world was too poor to decide it.
03 / Encapsulation
The last idea was the most appealing: let an invention change the mutation operator itself, so that an evolved module becomes a single unit that mutations can insert, the way a technology becomes a component. The control that could kill it was a structure-matched arbitrary module. If any chunk of the same shape helps as much, encapsulation is compression, not invention.
Part of the answer arrived before the run. The operator treats every building block alike, so relabelling them maps the walk for one module exactly onto the walk for another of the same shape. From the ancestor, encapsulating the evolved program made 27,888 programs newly reachable within three mutations. So did each of its structure-matched controls.
What could differ was what those programs compute. In chains of up to four cells, the programs built on the evolved module computed 33,197 functions that no shorter chain computes. That beat 76% of the modules with its shape, but it sat at the median of the 304 modules with about as many distinct outputs. Output range explained 64–77% of the variation between modules, and modules built from checksum and percentage functions did better than the evolved one.
The evolved module's output range is the range of the target it evolved to compute. I designed that target.
BOUND
In these fixed worlds, apparent expansion of evolutionary possibility came down to representation, target choice or selection.
One substrate and one library of building blocks, tested with exhaustive static maps and pilot worlds, with one evolved module available to test. This is a bound on these instruments, not a theorem about evolution. Encapsulation does strongly change what is reachable; the point is that the change is explained by a module's shape and output range rather than by its having evolved for a use.
What I chose
Somewhere in each design, I decided what counted as useful: a capability, a niche, a target, an extension. Preregistration and random seeds don't remove that choice; they make it visible. If I choose what counts as the next possibility, I may also be choosing the answer.
What would a world need to contain for an invention to matter on its own terms?
A world whose regularities are fixed independently of whatever later evolves, so that usefulness comes from the world rather than from a target list. That would be a new programme. It has not been registered, and nothing here establishes that such a world would behave differently.
How the controls were built
Each experiment's plan, its pass conditions and its possible outcomes were fixed and hashed before it ran, and every stop was taken as registered. That discipline caught two of my own mistakes. The first niche precheck registered one of its gates as two-sided when the question was one-sided; it stopped as registered, and the correction ran on fresh data. And an “ecological residual” I proposed for the composition work turned out to equal one by construction, so I retracted it.
Lab notebook / Working draft
Conclusion
Each design changed what evolution could reach, but the controls explained that change through representation, target choice or selection. The evolved invention did not need to be special to explain the observed expansion.