Host–parasite economy

Does complexity keep rising when energy is a contested stock? Every cell holds instruction energy that carries across epochs, so what one cell spends is gone until the influx pays it back; with the steal op on, a tape can take what a neighbour saved. That gives one tape something to gain from another's state beyond overwriting it and the other something to defend, which is the arms race the literature ties to rising structural complexity in fitness-free soups.

Substrate
soup
Status
finished
Epochs per run
20,000
Runs finished
1800 / 1800
Transition rate
41 of 1800 finished runs flagged by the detector (2%), 41 confirmed by a replicator

Findings resting on this sweep: Does complexity keep rising when energy is contested? partial

Transition epoch vs economy
0 0×2048 1024×8192 1024×512 0 5000 10000 15000 20000 Economy Transition epoch 0: emerged at epoch 5880 0: emerged at epoch 7690 0: emerged at epoch 19400 0: emerged at epoch 8170 0: emerged at epoch 9510 0: emerged at epoch 4170 0: emerged at epoch 10420 0: emerged at epoch 17200 0: emerged at epoch 16880 0: emerged at epoch 7620 0: emerged at epoch 16940 0: emerged at epoch 14870 0: emerged at epoch 12620 0: emerged at epoch 18720 0: emerged at epoch 9640 0: emerged at epoch 1680 0: emerged at epoch 10180 0: emerged at epoch 17260 0×8192: emerged at epoch 13030 0×8192: emerged at epoch 18780 0×8192: emerged at epoch 17220 0×8192: emerged at epoch 10660 1024×8192: emerged at epoch 8690 1024×8192: emerged at epoch 17240 1024×8192: emerged at epoch 6030 1024×8192: emerged at epoch 12200 1024×8192: emerged at epoch 19430 0×2048: emerged at epoch 3340 0×2048: emerged at epoch 19920 0×2048: emerged at epoch 8250 1024×2048: emerged at epoch 4130 1024×2048: emerged at epoch 12680 1024×2048: emerged at epoch 17760 1024×2048: emerged at epoch 9200 1024×2048: emerged at epoch 16860 1024×2048: emerged at epoch 12900 1024×2048: emerged at epoch 11280 1024×2048: emerged at epoch 8090 1024×2048: emerged at epoch 14360 1024×2048: emerged at epoch 6940 1024×2048: emerged at epoch 19620 0: no emergence in 20000 epochs (522 of 540 runs) 522 0×8192: no emergence in 20000 epochs (176 of 180 runs) 176 1024×8192: no emergence in 20000 epochs (175 of 180 runs) 175 0×2048: no emergence in 20000 epochs (177 of 180 runs) 177 1024×2048: no emergence in 20000 epochs (349 of 360 runs) 349 0×512: no emergence in 20000 epochs (180 of 180 runs) 180 1024×512: no emergence in 20000 epochs (180 of 180 runs) 180

Filled dots are runs a replicator confirmed emerged in; the line joins the median per value. Hollow dots are crossings the detector flagged that nothing confirmed. Hollow markers at the top count the runs with no emergence in 20000 epochs, the flagged-only ones among them.

Arms of economy
Economy n Flagged Emerged Median epoch IQR Censored
0 540 18/540 3% 18/540 3% 10,300 7,810–16,925 522
0×8192 180 4/180 2% 4/180 2% 15,125 12,438–17,610 176
1024×8192 180 5/180 3% 5/180 3% 12,200 8,690–17,240 175
0×2048 180 3/180 2% 3/180 2% 8,250 5,795–14,085 177
1024×2048 360 11/360 3% 11/360 3% 12,680 8,645–15,610 349
0×512 180 0/180 0% 0/180 0% — — 180
1024×512 180 0/180 0% 0/180 0% — — 180

Flagged counts the crossings the transition detector reported; emerged counts the ones the replicator census or the copy rate confirmed. The median epoch and the IQR are of the confirmed emergences, the flagged median beside them in grey; a flagged crossing nothing confirmed is censored like a run that was never flagged.

Time to emergence vs economy
0 5000 10000 15000 20000 0 0.2 0.4 0.6 0.8 1 Epoch P(no emergence) 0 — 18 of 540 emerged 0×8192 — 4 of 180 emerged 1024×8192 — 5 of 180 emerged 0×2048 — 3 of 180 emerged 1024×2048 — 11 of 360 emerged 0×512 — 0 of 180 emerged 1024×512 — 0 of 180 emerged

Each line is the estimated share of runs in an arm with no self-replicator yet at that epoch. A run that never emerged is censored where it was last watched, so it holds the line up only for as long as it was actually observed.

Emergence hazard per arm of economy
Economy Runs Events Run-epochs at risk Hazard per 104 epochs (95% CI) Persisted
0 540 18 10,648,850 0.0169 (0.01–0.0267) 18 of 18
0×8192 180 4 3,579,690 0.0112 (0.00304–0.0286) 4 of 4
1024×8192 180 5 3,563,590 0.014 (0.00456–0.0327) 5 of 5
0×2048 180 3 3,571,510 0.0084 (0.00173–0.0245) 3 of 3
1024×2048 360 11 7,113,820 0.0155 (0.00772–0.0277) 11 of 11
0×512 180 0 3,600,000 0 (0–0.0102) —
1024×512 180 0 3,600,000 0 (0–0.0102) —
All arms 1800 41 35,677,460 0.0115 (0.00825–0.0156) 41 of 41

Persisted counts the emergences whose world was still in the transitioned state at its last sample; the rest climbed back out of it and are counted as relapses.

Distinct lineages vs epoch, per arm of economy
0 5000 10000 15000 20000 0 5000 10000 15000 20000 Epoch Distinct lineages 0 0×8192 1024×8192 0×2048 1024×2048 0×512 1024×512
  • 0
  • 0×8192
  • 1024×8192
  • 0×2048
  • 1024×2048
  • 0×512
  • 1024×512
Share of the largest lineage vs epoch, per arm of economy
0 5000 10000 15000 20000 0 0.005 0.01 0.015 0.02 0.025 Epoch Share of the largest lineage 0 0×8192 1024×8192 0×2048 1024×2048 0×512 1024×512
  • 0
  • 0×8192
  • 1024×8192
  • 0×2048
  • 1024×2048
  • 0×512
  • 1024×512
Compressed length of the dominant tape (bytes) vs epoch, per arm of economy
0 5000 10000 15000 20000 0 50 100 150 200 Epoch Compressed length of the dominant tape (bytes) 0 0×8192 1024×8192 0×2048 1024×2048 0×512 1024×512
  • 0
  • 0×8192
  • 1024×8192
  • 0×2048
  • 1024×2048
  • 0×512
  • 1024×512
Instructions in the dominant tape vs epoch, per arm of economy
0 5000 10000 15000 20000 0 5 10 15 20 25 Epoch Instructions in the dominant tape 0 0×8192 1024×8192 0×2048 1024×2048 0×512 1024×512
  • 0
  • 0×8192
  • 1024×8192
  • 0×2048
  • 1024×2048
  • 0×512
  • 1024×512
Compressed length of the largest lineage's tape (bytes) vs epoch, per arm of economy
0 5000 10000 15000 20000 0 100 200 300 Epoch Compressed length of the largest lineage's tape (bytes) 0 1024×8192 0×2048 1024×2048 0×512 1024×512
  • 0
  • 1024×8192
  • 0×2048
  • 1024×2048
  • 0×512
  • 1024×512
Instructions in the largest lineage's tape vs epoch, per arm of economy
0 5000 10000 15000 20000 0 10 20 30 40 Epoch Instructions in the largest lineage's tape 0 1024×8192 0×2048 1024×2048 0×512 1024×512
  • 0
  • 1024×8192
  • 0×2048
  • 1024×2048
  • 0×512
  • 1024×512
Transition epoch vs max tape len
128 256 0 5000 10000 15000 20000 Max tape len Transition epoch 128: emerged at epoch 3340 128: emerged at epoch 5880 128: emerged at epoch 13030 128: emerged at epoch 19400 128: emerged at epoch 8690 128: emerged at epoch 17240 128: emerged at epoch 9510 128: emerged at epoch 4170 128: emerged at epoch 10420 128: emerged at epoch 17200 128: emerged at epoch 17220 128: emerged at epoch 6030 128: emerged at epoch 12200 128: emerged at epoch 12680 128: emerged at epoch 19920 128: emerged at epoch 9200 128: emerged at epoch 16940 128: emerged at epoch 12900 128: emerged at epoch 12620 128: emerged at epoch 18720 128: emerged at epoch 11280 128: emerged at epoch 9640 128: emerged at epoch 8090 128: emerged at epoch 14360 128: emerged at epoch 6940 128: emerged at epoch 19620 128: emerged at epoch 17260 256: emerged at epoch 7690 256: emerged at epoch 8170 256: emerged at epoch 18780 256: emerged at epoch 4130 256: emerged at epoch 16880 256: emerged at epoch 7620 256: emerged at epoch 10660 256: emerged at epoch 17760 256: emerged at epoch 19430 256: emerged at epoch 8250 256: emerged at epoch 16860 256: emerged at epoch 14870 256: emerged at epoch 1680 256: emerged at epoch 10180 128: no emergence in 20000 epochs (963 of 990 runs) 963 256: no emergence in 20000 epochs (796 of 810 runs) 796

Filled dots are runs a replicator confirmed emerged in; the line joins the median per value. Hollow dots are crossings the detector flagged that nothing confirmed. Hollow markers at the top count the runs with no emergence in 20000 epochs, the flagged-only ones among them.

Arms of max tape len
Max tape len n Flagged Emerged Median epoch IQR Censored
128 990 27/990 3% 27/990 3% 12,620 8,945–17,210 963
256 810 14/810 2% 14/810 2% 10,420 7,810–16,875 796

Flagged counts the crossings the transition detector reported; emerged counts the ones the replicator census or the copy rate confirmed. The median epoch and the IQR are of the confirmed emergences, the flagged median beside them in grey; a flagged crossing nothing confirmed is censored like a run that was never flagged.

Time to emergence vs max tape len
0 5000 10000 15000 20000 0 0.2 0.4 0.6 0.8 1 Epoch P(no emergence) 128 — 27 of 990 emerged 256 — 14 of 810 emerged

Each line is the estimated share of runs in an arm with no self-replicator yet at that epoch. A run that never emerged is censored where it was last watched, so it holds the line up only for as long as it was actually observed.

Emergence hazard per arm of max tape len
Max tape len Runs Events Run-epochs at risk Hazard per 104 epochs (95% CI) Persisted
128 990 27 19,594,500 0.0138 (0.00908–0.02) 27 of 27
256 810 14 16,082,960 0.0087 (0.00476–0.0146) 14 of 14
All arms 1800 41 35,677,460 0.0115 (0.00825–0.0156) 41 of 41

Persisted counts the emergences whose world was still in the transitioned state at its last sample; the rest climbed back out of it and are counted as relapses.

Distinct lineages vs epoch, per arm of max tape len
0 5000 10000 15000 20000 0 5000 10000 15000 20000 Epoch Distinct lineages 128 256
  • 128
  • 256
Share of the largest lineage vs epoch, per arm of max tape len
0 5000 10000 15000 20000 0 0.005 0.01 0.015 0.02 Epoch Share of the largest lineage 128 256
  • 128
  • 256
Compressed length of the dominant tape (bytes) vs epoch, per arm of max tape len
0 5000 10000 15000 20000 0 50 100 150 200 250 Epoch Compressed length of the dominant tape (bytes) 128 256
  • 128
  • 256
Instructions in the dominant tape vs epoch, per arm of max tape len
0 5000 10000 15000 20000 0 5 10 15 20 Epoch Instructions in the dominant tape 128 256
  • 128
  • 256
Compressed length of the largest lineage's tape (bytes) vs epoch, per arm of max tape len
0 5000 10000 15000 20000 0 100 200 300 Epoch Compressed length of the largest lineage's tape (bytes) 128 256
  • 128
  • 256
Instructions in the largest lineage's tape vs epoch, per arm of max tape len
0 5000 10000 15000 20000 0 5 10 15 20 25 Epoch Instructions in the largest lineage's tape 128 256
  • 128
  • 256
Detector against replicator census, per arm
0 128 0×8192 256 0×2048 128 1024×2048 256 1024×512 128 0 2 4 6 8 Arm Runs 0 128 — flagged only: 5 of 270 sampled runs 0 128 — replicators only: 0 of 270 sampled runs 0 128 — both: 6 of 270 sampled runs 0 256 — flagged only: 1 of 270 sampled runs 0 256 — replicators only: 0 of 270 sampled runs 0 256 — both: 6 of 270 sampled runs 0×8192 128 — flagged only: 0 of 90 sampled runs 0×8192 128 — replicators only: 0 of 90 sampled runs 0×8192 128 — both: 2 of 90 sampled runs 0×8192 256 — flagged only: 1 of 90 sampled runs 0×8192 256 — replicators only: 0 of 90 sampled runs 0×8192 256 — both: 1 of 90 sampled runs 1024×8192 128 — flagged only: 0 of 90 sampled runs 1024×8192 128 — replicators only: 0 of 90 sampled runs 1024×8192 128 — both: 4 of 90 sampled runs 1024×8192 256 — flagged only: 0 of 90 sampled runs 1024×8192 256 — replicators only: 0 of 90 sampled runs 1024×8192 256 — both: 1 of 90 sampled runs 0×2048 128 — flagged only: 1 of 90 sampled runs 0×2048 128 — replicators only: 0 of 90 sampled runs 0×2048 128 — both: 1 of 90 sampled runs 0×2048 256 — flagged only: 0 of 90 sampled runs 0×2048 256 — replicators only: 0 of 90 sampled runs 0×2048 256 — both: 1 of 90 sampled runs 1024×2048 128 — flagged only: 0 of 270 sampled runs 1024×2048 128 — replicators only: 0 of 270 sampled runs 1024×2048 128 — both: 8 of 270 sampled runs 1024×2048 256 — flagged only: 1 of 90 sampled runs 1024×2048 256 — replicators only: 0 of 90 sampled runs 1024×2048 256 — both: 2 of 90 sampled runs 0×512 128 — flagged only: 0 of 90 sampled runs 0×512 128 — replicators only: 0 of 90 sampled runs 0×512 128 — both: 0 of 90 sampled runs 0×512 256 — flagged only: 0 of 90 sampled runs 0×512 256 — replicators only: 0 of 90 sampled runs 0×512 256 — both: 0 of 90 sampled runs 1024×512 128 — flagged only: 0 of 90 sampled runs 1024×512 128 — replicators only: 0 of 90 sampled runs 1024×512 128 — both: 0 of 90 sampled runs 1024×512 256 — flagged only: 0 of 90 sampled runs 1024×512 256 — replicators only: 0 of 90 sampled runs 1024×512 256 — both: 0 of 90 sampled runs
  • Flagged only
  • Replicators only
  • Both

The two outer bars of an arm are its disagreements: runs the detector flagged with no replicator ever counted, and runs that counted one without being flagged.

Detector against replicator census, per arm — flagged runs held compress_ratio below 0.6, replicating runs counted at least one replicator at the locked top_k 16; the wider column re-reads the stored worlds of the same runs at top_k 64 and is blank for an arm no corpus pass has measured
Arm Sampled runs Flagged Replicators Replicators at top_k 64 Both Either but not both
0 128 270 11 6 6 5
0 256 270 7 6 6 1
0×8192 128 90 2 2 2 0
0×8192 256 90 2 1 1 1
1024×8192 128 90 4 4 4 0
1024×8192 256 90 1 1 1 0
0×2048 128 90 2 1 1 1
0×2048 256 90 1 1 1 0
1024×2048 128 270 8 8 8 0
1024×2048 256 90 3 2 2 1
0×512 128 90 0 0 0 0
0×512 256 90 0 0 0 0
1024×512 128 90 0 0 0 0
1024×512 256 90 0 0 0 0
Does complexity keep rising, per arm — the median of the last decile of each emerged run's post-crossing samples against the median of its first decile. An arm keeps rising where at least half its measured runs raise dominant_instruction_count by 20% or more without their conserved core falling, and plateaus where at least half sit within 10% of where they started. An arm clearing both bars reads mixed and one clearing neither reads neither. A run is measured on its instruction count, and its conserved core is compared in bytes, so a core that reads zero at both ends counts as a core that did not fall — the post-hoc amendment of 2026-09-21; the pre-registered rule dropped those runs as unmeasured, and the pre-registered unmeasured column counts, per arm, the measured runs it dropped. A run carrying no conserved core at all over the span is unmeasured. dominant_compressed_len is printed beside them and decides nothing: it saturates at the tape cap plus zlib's envelope, and distinct_lineages is the secondary reading of sweep 10, where an arms race shows as a late-run lineage count above the control's at the same cap. An arm reads on two measured runs, or on a blank block of ten; a steal arm whose steal_rate never left zero reads as theft that never evolved, not as theft that does not help, and one never sampled on that observable reads unmeasured
Arm Emerged Measured Pre-registered unmeasured Instructions Conserved core Compressed length Distinct lineages Rising Plateau Peak steal_rate Reading
0 128 11 / 270 11 10 21 → 21 0 → 0 139 → 139 94 → 2 1 / 11 3 / 11 0 neither
0 256 7 / 270 7 7 28 → 21 0 → 0 267 → 267 109 → 1 1 / 7 1 / 7 0 neither
0×8192 128 2 / 90 2 2 15 → 17 0 → 0 139 → 139 137 → 6 0 / 2 0 / 2 0 neither
0×8192 256 2 / 90 2 2 22 → 20 0 → 0 267 → 267 114 → 5 0 / 2 1 / 2 0 plateau
1024×8192 128 4 / 90 4 4 28 → 21 0 → 0 126 → 139 53 → 3 0 / 4 1 / 4 0.93 neither theft evolved
1024×8192 256 1 / 90 1 1 18 → 22 0 → 0 267 → 231 4,257 → 27 1 / 1 0 / 1 0.846 unread theft evolved
0×2048 128 2 / 90 2 2 23 → 21 0 → 0 139 → 139 47 → 2 0 / 2 1 / 2 0 plateau
0×2048 256 1 / 90 1 1 19 → 59 0 → 0 98 → 267 2,052 → 5 1 / 1 0 / 1 0 unread
1024×2048 128 8 / 270 8 8 30 → 24 0 → 0 139 → 139 140 → 3 1 / 8 3 / 8 0.353 neither theft evolved
1024×2048 256 3 / 90 3 2 22 → 32 0 → 0 267 → 191 1,664 → 131 0 / 3 0 / 3 0.937 neither theft evolved
0×512 128 0 / 90 0 0 — — — — 0 / 0 0 / 0 0 barren
0×512 256 0 / 90 0 0 — — — — 0 / 0 0 / 0 0 barren
1024×512 128 0 / 90 0 0 — — — — 0 / 0 0 / 0 0.324 barren theft evolved
1024×512 256 0 / 90 0 0 — — — — 0 / 0 0 / 0 0.324 barren theft evolved

Replicators by the orientation-aware detector

The detector reads a random sample of 256 cells of a stored world and runs each cell's tape down a chain of 5 runs against fresh noise, each copy carried into the next run. After the last run the first half holds the fourth copy, back in the tape's own orientation even for a tape that writes its reverse; the cell passes where 3/4 of its positions match the original, each position read by the majority of 5 trials. The locked census counts only same-orientation copies among the 16 commonest tapes, so it reads zero in worlds of reverse copiers. Only the worlds a run kept are read — the first and the last, one about every 1000 epochs and the one nearest the transition — so every run is read at the same cadence, and a first replicator epoch here is no finer than that. Live samples are not used. A run is measured once the corpus pass has read every world it kept; until then it counts in none of the census columns, and the pass is re-run as runs finish. A world holds replicators where at least 50% of its sampled cells pass. This is a companion reading: it relocks neither the census nor the emergence rule (#245).

Detector, emergence rule and orientation-aware census, per arm, over finished runs — the census columns count measured runs only
Arm Finished runs Measured Flagged Emerged Replicator worlds Held to the end Replicators, not emerged Emerged, no replicators Median first replicator epoch (coarse)
0 128 270 270 11 11 11 11 0 0 ~13,000
0 256 270 270 7 7 7 7 0 0 ~9,000
0×8192 128 90 90 2 2 2 2 0 0 ~14,000
0×8192 256 90 90 2 2 2 2 0 0 ~11,000
1024×8192 128 90 90 4 4 4 4 0 0 ~9,000
1024×8192 256 90 90 1 1 0 0 0 1 —
0×2048 128 90 90 2 2 2 2 0 0 ~4,000
0×2048 256 90 90 1 1 1 1 0 0 ~12,000
1024×2048 128 270 270 8 8 8 8 0 0 ~12,000
1024×2048 256 90 90 3 3 2 1 0 1 ~5,000
0×512 128 90 90 0 0 0 0 0 0 —
0×512 256 90 90 0 0 0 0 0 0 —
1024×512 128 90 90 0 0 0 0 0 0 —
1024×512 256 90 90 0 0 0 0 0 0 —

Download oriented census (CSV)

Runs

Download CSV Download transition report (CSV)

Seed Economy Max tape len Status Priority Epochs done Transition epoch Census
191 1024×2048 128 finished -191 20,000 — — Run
192 1024×2048 128 finished -192 20,000 — — Run
193 1024×2048 128 finished -193 20,000 — — Run
194 1024×2048 128 finished -194 20,000 — — Run
195 1024×2048 128 finished -195 20,000 — — Run
196 1024×2048 128 finished -196 20,000 — — Run
197 1024×2048 128 finished -197 20,000 — — Run
198 1024×2048 128 finished -198 20,000 — — Run
199 1024×2048 128 finished -199 20,000 — — Run
200 1024×2048 128 finished -200 20,000 — — Run
201 1024×2048 128 finished -201 20,000 — — Run
202 1024×2048 128 finished -202 20,000 — — Run
203 1024×2048 128 finished -203 20,000 — — Run
204 1024×2048 128 finished -204 20,000 — — Run
205 1024×2048 128 finished -205 20,000 — — Run
206 1024×2048 128 finished -206 20,000 — — Run
207 1024×2048 128 finished -207 20,000 — — Run
208 1024×2048 128 finished -208 20,000 — — Run
209 1024×2048 128 finished -209 20,000 19,620 confirmed 30 Run
210 1024×2048 128 finished -210 20,000 — — Run