/machines/1RB---_1LC1RE_1LD0LC_1LE1LC_1RF0RE_1RA0RB/submission/proof.md · raw

1RB---_1LC1RE_1LD0LC_1LE1LC_1RF0RE_1RA0RB never halts

The tape of this machine is a binary counter that is fed at its left end. Every time the head reaches the left edge in state C, it walks right as B, and that walk is one carry. The carry runs through a word of short blocks called units until a unit absorbs it. Then C walks back to the left edge.

Most units are passive, but one kind, the wall, is a rotor. A wall absorbs every second carry it receives. On the other carries it sends three carries further right and then moves one unit to the right. So each wall forwards 3/2 as many carries as it receives.

The left end (the nursery, a short gadget word) is exactly periodic. Once per period it puts 8 new walls into the unit word, and it touches the unit word only by acting as a wall itself. The walls ride a conveyor of P blocks, in order. At the right end they are absorbed one by one into a zone, a binary counter with a few marker units.

When a wall fires, it leaves one extra 0 cell above it, its shift. The machine can halt only if a shift lands directly on another wall-like unit. The proof shows that this never happens:

Machine and status

The transition table, with the start 0^inf A> 0^inf:

     0    1
A   1RB  ---        the only undefined transition: A reads 1
B   1LC  1RE
C   1LD  0LC
D   1LE  1LC
E   1RF  0RE
F   1RA  0RB

Where each part lives in the .v

The .v is split into 32 numbered sections, each opened by a comment banner. §9 explains where the .v takes a different route from the text.

part of this write-up .v section names in the .v
§2.2 unit lemmas (the sweeps of §2.1 run inside them) 1 arr_Z, arr_D1, arr_P, arr_W
§1 units and the shift; §2.3 Inc and Theorem U 2 unt, enc, shift, shift_spec, Inc, inc_arr, Inc_det
§4 window runs, Lemma N 3, 4 lstep, wrun, wrun_spec, rg, rk, rF, rcfg, window
§8 initial segment 5 U0, init
§7 progress, the reduction to unit words 6 Reach, AbsDefined, nonhalt_of_abs
§3 Lemma C1; the wall as a rotor; digit counters 7 IncN, wall_feed, C1, IncN_digits
§5 the closed system 8 pj, cs_step, CSreach, csf_sound, C0_reach
§4 pops 9 Inc3Pop, Pops, Inc3Pop_wall
§6.4 Lemma L, items 1–4 10, 12, 13, 14 IncX_flow, XN, xfeed_sound, XN_clean, cutstep
§6.4–§6.6 representative runs 15 fam, fz, fstep_sound, frun_sound, Cst
§6.6 small classes 16 sc_all, small_classes
§6.2 value forms; §6.4 endgame; §6.5 nested range 17 vfz, VFe, eg_all, endgame, ns_all, nested, E_low
§6.3 Lemma L′ and Lemma VS 18, 19, 20 astep, vs_gen
§6.2 tables; §6.3 Lemma VF 21, 22 en_all, ph_all, descent, VF1, VF2
§6.1 Lemma E 23 E1, E2, E3, E_id, LemmaE
§6.5 Lemma P and the identification 24 P12 … P16, LemmaP, P_id
§6.5 class recursion; §6.7 Theorem B 25 EK, thmB
§6 no hit (Lemmas Z0, Z1; see §9) 26, 27 zone_forever, cs_step_det, CSreach_det, CS_next
§4 placement; §5 Lemma T 28, 29 Pops_wall, bracket_small, bracket
§7 invariant and closure 30, 31, 32 WdR, cascade, RInv, RInv_step, RInv_U0, Reach_RInv, AbsDefined_proof, nonhalt

A comment at the end of the .v restates the rules in busycoq's closing-comment style. §11 below has the same kind of table.

Summary

The proof has seven steps.

  1. Units and carries (§1, §2). The tape right of the left gadget is read as a word of units. One walk of B to the right and C back is one carry. Theorem U says that it acts on the unit word as a recursive increment, inc.

  2. Conveyor (§3). Three carries always turn the unit above a firing wall into a P. So the walls on the conveyor move up in order and never hit each other (Lemmas C1, C2).

  3. Nursery (§4). The left end runs an exact cycle of 8 left records (Lemma N). Its window runs touch the unit word only through the wall rule, and they add 8 walls per cycle, below all older walls.

  4. Top relation (§5). A flux identity (Lemma T) gives the carries that enter the zone between two absorptions. They depend only on the absorption number mod 8 and on the drops so far, so the zone follows a fixed closed system.

  5. Zone (§6). From every canonical state C(b) the closed system reaches a later canonical state, with every step defined (Theorem B). With Lemmas Z0 and Z1, no shift in the zone is a hit.

  6. Invariant (§7). At every left record the configuration is fixed by the record number n and the number J of absorptions so far. This invariant is closed under one record step, and each record step terminates.

  7. Start (§8). The machine reaches the first record of the cycle after 203,465 steps.

§9 maps the argument to the .v, §10 lists the numerical checks, and §11 gives the rules at a glance.

1. Notation

Tape notation follows busycoq: 0^inf, B> (head in state B reading the cell to its right), <C (head in state C reading the cell to its left). Words are written left to right.

Units. A unit is a cell word h 1000, where the head h is a 0/1 word with no 000 inside it, or the 0 digit 0000.

name cells head h role
D0 0000 (0 digit) counter digit 0
D1 1000 ε counter digit 1
P 11000 1 pass block (wire)
S1 01000 0 shifted digit
SP 011000 01 wall, state W0 (absorbs the next carry)
W 111000 11 wall, state W1 (forwards 3 carries)

Unit words. A unit word is a finite concatenation of units followed by 0^inf. Since D0 0^inf = 0^inf, trailing D0 units are part of the blank. So we always take a unit word in normal form: its last unit is not D0 (the empty word is the blank).

L_gap is the set of unit words whose heads are all in {ε, 0, 1, 01, 11}, that is, only the six units above. Deeper heads, such as 001, 011, 111, 101, 0111, 1111, 0101 and 1101, are called stacked.

Shift. When a W fires it leaves one extra 0 cell above it. Re-tokenised, that 0 passes over any D0 units and prepends a 0 to the head of the first other unit above it. We say the shift lands on that unit:

inc. inc(w) is the unit word after one carry enters w at its left end (§2.3).

Indices. inc keeps the normal form. A carry turns a unit into D0 only when it passes the carry on upward, so the last unit is never left as D0. A carry that passes the last unit appends a D1. A shift only prepends a 0 to a head, or merges into the blank.

2. Rules

2.1 Base macros

Each sweep is proved by induction on n, with one use of the induction hypothesis (S1).

  SR    B> (11000)^n        -->  (10111)^n B>        5n     B1 E1 E0 F0 A0 per block
  SR6   B> (111000)^n       -->  (100111)^n B>       6n
  KB    B> (1000)^n         -->  (1111)^n B>         4n     B1 E0 F0 A0 per block
  SL'   (10111)^n <C        -->  <C (11000)^n        5n     C1 C1 C1 C0 D1 per block
  SL    (11110)^n <C        -->  <C (00011)^n        5n
  KC    1^n <C              -->  <C 0^n              n      C1
  EdgeL 0^inf <C            -->  0^inf 1 0 B> 1      4      C0 D0 E0 F1

2.2 Unit lemmas

Arrival. Write Arr(w) = w' (in s steps) for

l B> w 0^inf   -->(s)   l <C w' 0^inf

for every left context l. The head never moves left of w's first cell until the last step, and the last step moves it off w to the left in state C.

Oracle proof. Each unit lemma below is proved by running the machine on the unit's own cells alone, with the rest r of the word replaced by an oracle:

These are finite computations (S2). Here are the chains:

unit lemmas: unit . r  -->  unit' . r'     (r' = result of the nested arrivals Arr(r), Arr(Arr(r)), ...)

  Z   first cell 0 (D0, S1, SP, and every 0-led head; also the blank top):
        B> 0 x      -->  <C 1 x                                   1          B0
  D1    B> 1000 r   -->  1111 B> r  ~Arr~>  1111 <C r'  -->  <C 0000 r'                         4 + 4
  P     B> 11000 r  -->  10111 B> r ~Arr~>  10111 <C r' -->  <C 11000 r'                        5 + 5      (SR, SL')
  W     B> 111000 r -->  100111 B> r  ~Arr~>  100111 <C r'  -->  000111 B> r'                   6, 11
                    ~Arr~> 000111 <C r''  -->  101111 B> r''  ~Arr~>  101111 <C r'''  -->  <C 110000 r'''     11, 6
        i.e. W r --> P . shift(inc^3 r)                                                          kappa = 34

  stacked heads (needed only to show what a hit does; never reached, section 6):
  111   B> 1111000 r  --> 1000111 B> r ~> 1000111 <C r' --> 1101111 B> r' ~> 1101111 <C r'' --> <C 0110000 r''
        i.e. 111 . r --> SP . shift(inc^2 r)                                                     kappa = 25
  101   101 . r   --> SP . shift(inc r)                                                          kappa = 14
  1111  1111 . r  --> 111 . shift(inc^2 r)                                                       kappa = 27
  1101  1101 . r  --> 111 . shift(inc r)                                                         kappa = 16
  depth 4: 11111 and 11101 have no oracle proof (state E walks onto r); 01111 -> 11111, 01101 -> 11101 by Z.

Here shift(x) means the extra 0 cell 0 x, re-tokenised as in §1. The cell identity h 1000 0 x = h 1000 . shift(x) is pure re-reading, so no machine step is involved.

The W lemma holds for every left context l, and §4 uses this.

What a hit does (aside, not used). The main argument excludes every hit. A hit on SP or W gives the stacked heads 001 or 011, which have rows above. A hit on S1 gives head 00.

The next carry on 00 meets head 10, which has no unit rule. Its oracle run gives 101000 -> 011100 in 7 steps, which takes a cell from the unit above. A shift that lands on 001 gives 0001, which is not a valid head. So a stacked unit can leave the unit calculus in more than one way, and the proof never lets one arise.

2.3 Theorem U (arrival = inc)

Define the relation Inc(w, w', s) ("one carry turns w into w' in s machine steps") inductively by the table in §2.2:

inc(w) is defined when some (then unique) w', s with Inc(w, w', s) exist. That is, the recursion is finite and never meets a head outside the table.

Theorem U. If Inc(w, w', s), then Arr(w) = w' in exactly s machine steps.

Proof. Induction on the derivation of Inc(w, w', s). The last rule used is the unit lemma of w's first unit (§2.2). Its oracle calls are exactly the premises of that rule, which are smaller derivations.

So the induction hypothesis turns each oracle call into a real machine run, ending on the unit's last cell in state C as the oracle requires. Re-tokenising after a shift is a cell identity. ∎

The induction is on the derivation, not on the cell length of w. W's second and third oracle calls are on inc(r) and inc²(r), which need not be shorter than w.

Lemma U-term (termination). Let w ∈ L_gap have n units, and suppose no W firing inside the recursion for inc(w) is a hit. Then inc(w) is defined.

Proof. We prove a stronger statement by induction on the number of walls (SP and W units) of w:

If w ∈ L_gap and no W firing inside the recursion for inc(w) is a hit, then inc(w) is defined, inc(w) ∈ L_gap, and inc(w) has at most as many walls as w.

  1. No wall creation. The rows never raise the wall count. SP becomes W on a carry. W becomes P when it fires, and its shift turns at most one unit above into a wall (P into SP); on D1 or the blank it makes none. D1, D0, P and S1 never become walls by a carry.

  2. Base: w has no wall. Its units are D0, D1, P and S1. Each forwards at most one carry (D1, P) or stops it (D0, S1). So an arrival is one upward path of at most n + 1 unit steps, and the top step appends a D1. inc(w) is in L_gap and has no wall.

  3. Step: w has walls. Write w = x · V · y, where V is the lowest wall and x is wall-free.

A carry can leave a wall above the old top of the word. For example, one arrival on W W SP gives P SP P SP D0 D0 D1 (237 machine steps). The induction on walls needs no claim about that region. S3 checks the wall-count bound on every L_gap word it runs.

S3 also compares the machine and inc, cells and exact step counts, on every unit word of up to 4 units over 14 unit kinds, and on 20,000 random words with long P runs: 0 mismatches.

Corollary U′. Let w ∈ L_gap, and suppose no W firing inside the recursion for inc(w) is a hit. Then inc(w) is defined and inc(w) ∈ L_gap.

Proof. The L_gap rows produce only L_gap heads, except for the shift. A shift lands on D1 (giving S1), on P (giving SP), on the blank, or is a hit. Termination is Lemma U-term. ∎

So the machine halts only after a hit. The halting transition A1 is never used by any unit lemma: in every oracle proof, state A reads 0.

3. The conveyor cannot be hit (Lemmas C1 and C2)

Lemma C1. If the first unit of x is P, S1, SP or W, then inc³(x) starts with P.

Proof. What happens to the first unit depends only on that unit, because its carries and its shift go to the units above.

A P then stays P. ∎ (S5 also runs the four cases.)

Lemma C2 (no hit below the zone). A W firing whose unit directly above is P, S1, SP or W is not a hit. Its shift lands on that unit, which is P after the 3 carries (C1), so it becomes SP: the wall has moved up one unit.

Moreover, a prefix of a unit word made of P, SP and W units stays so under inc, and can only grow. These units only turn into P, SP or W, and a zone unit above can only join by becoming P. ∎

So a hit needs a firing W whose unit directly above is a digit. The conveyor (§4) has no digits. In particular, a W directly followed by S1, SP or W is harmless.

4. The nursery (Lemma N)

Left records and gadgets. A left record is a time at which the head stands on a cell never visited before, at the left end. From step 203,465 on, the records come in a fixed cycle of 8, XC XD XE YC YD YE ZD ZE (record group, then state). At a record the tape is

0^inf <q G U 0^inf

Here the gadget G is the first three 1-runs after the head cell together with the 3 cells after them. U is the rest, read as a unit word.

The window computation. Run the machine on the head cell and G only. The rest R (initially U) is opaque. The run may touch it only through two proved rules:

Any other contact with R, or a halt, would fail the computation. The run ends when the head steps onto a new cell left of the window, which is the next left record.

The window's cells after the new gadget must then read as units in {P, SP, W}. Call them F; they are put in front of R.

Lemma N. For each of the 8 record types the window computation succeeds as tabulated, and the 8 computations form a closed cycle (from XC back to XC with the same gadget). Only rule (W) is ever used.

record  gadget G                       next   W-rule uses   F (put in front of R)            window steps
XC      111111 0000 11 0000 11 000     XD     0             -                                1
XD      1111111 0000 11 0000 11 000    XE     0             -                                1
XE      11111111 0000 11 0000 11 000   YC     3             W W P SP                         334
YC      1101111 0000 11 000            YD     0             -                                1
YD      11101111 0000 11 000           YE     0             -                                1
YE      111101111 0000 11 000          ZD     12            W P W P P SP P P P P SP          1,785
ZD      11111 0000 11 000 111 000      ZE     0             -                                1
ZE      111111 0000 11 000 111 000     XC     2             P SP                             155

So, with Φ_k := (pop ∘ inc³)^k, one cycle maps the right part as

U  -->  F_XE . Phi_3(U)  -->  F_YE . Phi_12( . )  -->  F_ZE . Phi_2( . )

and the gadgets repeat exactly. The machine steps of an excursion are the window steps plus the steps of all arrivals (Theorem U).

Side condition. Each pop needs R's first unit to be P, S1, SP or W just before the three carries (Lemma C1). Let c(U) be the number of leading units of U in {P, SP, W}.

inc never decreases c (Lemma C2), a pop decreases it by 1, and F adds |F|. Per excursion, (pops, |F|) = (3, 4), (12, 11) and (2, 2). U_0 has c = 43 (§8), so c ≥ 42 at every record and c ≥ 30 inside every excursion. The side condition always holds.

Proof of Lemma N. The 8 window runs are finite computations (S5 prints them). By induction over records, the tape at the n-th record is 0^inf <q_n G_n U_n 0^inf, with (q_n, G_n) the (n mod 8)-th row and c(U_n) ≥ 42.

Each step is the window run, whose contacts with R are justified by Theorem U, the W lemma and Lemma C1. ∎

Cross-check (S5). At every left record to 2e9 (1,021 transitions), the machine's next record equals G' F Φ_k(U) in cells and state. The step difference equals the window steps plus the inc step counts exactly. Every record is in L_gap and has c ≥ 42.

Why the boundary moves. No static cell boundary separates the nursery from the conveyor. Walls cross every cell near the left edge, and a W that straddles a static boundary touches R in state E.

Rule (W) is the moving boundary: a firing wall at the top of the window pulls the next P into the window.

Births. The walls of F are the new conveyor walls, 8 per cycle. Use the index frame of U_0 (its first unit has index 0). Then F always lands at the same indices:

In absorption order (highest first), the births of one cycle are:

birth phase   from   index b   born as   s
0             XE      2        SP        0
1             XE      0        W         1
2             XE     -1        W         1
3             YE     10        SP        0
4             YE      5        SP        0
5             YE      2        W         1
6             YE      0        W         1
7             ZE      1        SP        0

A wall, once in U, moves only by inc. It is never popped, because a pop removes a P (Lemma C1). By Lemma C2, walls never overtake or hit each other.

FIFO also needs placement. Every newborn wall must sit below all existing walls. At a birth record the previous lowest wall is the youngest wall of the previous group. It has received exactly H carries since its birth (H as in §5: 36, 6 or 9), so it sits at b + ⌊(H + s)/2⌋:

birth record previous lowest wall (b, s, H) its index newborn indices
after YE last XE wall (−1, W, 36) −1 + ⌊37/2⌋ = 17 ≤ 10
after ZE last YE wall (0, W, 6) 0 + ⌊7/2⌋ = 3 1
after XE the ZE wall (1, SP, 9) 1 + ⌊9/2⌋ = 5 ≤ 2
first XE after step 203,465 U_0's SP (1, SP, 9) 1 + 4 = 5 ≤ 2

So the walls stay in birth order along the word and are absorbed in birth order (FIFO). S6 checks the placement at every birth of its run.

5. The top relation (Lemma T) and the closed zone system

Zone and absorptions. The top wall is the highest conveyor wall. The zone bottom z is the index of the first unit above it that is not P. The units from z up form the zone Z, and the P units between the top wall and z form its wire.

Absorption j (j = 0, 1, 2, …) is a firing of the top wall after which the wall does not move up. That is, after the three carries the unit directly above the wall is not P. Then the wall was at z − 1, and its shift lands in the zone:

If instead the three carries turn the unit above into P (a drop, z += 1), the shift lands on that P and the wall moves up one unit.

Counts. Let N_j be the number of carries that enter the zone between absorptions j−1 and j. Let A_j be the number of P units that leave the zone bottom in that interval (the drops; each one is z += 1). Let D_j = A_1 + … + A_(j−1). Nothing else moves z, so z = z_0 + (drops so far).

Lemma T. For every j ≥ 1:

N_j = 3*A_j + D_j + p(j mod 8),      p = (47, 48, 48, 47, 48, 47, 48, 47)   for j mod 8 = 0..7

Proof. Number the walls in birth order. The 6 walls of U_0 come first; they count as born at the step-203,465 record, with b their index there and s = 1 for W. The births of §4 follow. By FIFO, absorption j removes wall number j.

For a wall w let b_w be its birth index, s_w ∈ {0, 1} its birth state (SP or W), and R_w(t) the carries it has received since birth. A wall fires on every second carry, so it has fired ⌊(R_w + s_w)/2⌋ times and sits at index b_w + ⌊(R_w + s_w)/2⌋.

  1. Wall j exists before absorption j−1. Wall j is born at the same record as wall j−1, or at the end of the next excursion. Before then, wall j−1 receives only that excursion's carries (at most 36). Its absorption needs 2(z − b_(j−1)) − s ≥ 2·33 − 1 carries, since z ≥ 43 and b ≤ 10.

  2. Wall j−1's carries. Let H_(j−1) be the carries wall j−1 received before wall j's birth. After that, every carry it receives comes from wall j, because carries only move up and wall j is the next wall below it. With E_j(t) the carries wall j has emitted since its birth, R_(j−1) = H_(j−1) + E_j.

  3. At absorption j−1. Wall j−1 fires from index z(t_(j−1)) − 1. That is its (z(t_(j−1)) − b_(j−1))-th firing, so R_(j−1) = 2(z(t_(j−1)) − b_(j−1)) − s_(j−1).

  1. Interval j. Wall j is now the top wall, so every carry that enters the zone comes from it: the r leftover carries, then 3 per further firing.
  1. Substitute 3f − r from items 2 and 3, and use z(t_j) − z(t_(j−1)) = A_j and z(t_(j−1)) = z(t_0) + D_j:
N_j = 3*A_j + D_j + [ z(t_0) - 3*b_j + 2*b_(j-1) + s_(j-1) + H_(j-1) ]

The bracket depends only on the birth data of walls j and j−1. By §4 these repeat with the birth phase, and FIFO fixes the birth phase as j mod 8 plus a constant. The values are:

With the table of §4 the bracket is 47 or 48, exactly as p says.

For j = 1..6 the walls of U_0 enter, with indices 32, 20, 12, 7, 3, 1, H = 0 between them, and H = 9 for the pair (U_0's SP at 1, XE's SP at 2). The formula gives 48, 48, 47, 48, 47, 48 = p(1..6). ∎

Level-ups play no role. A level-up adds one wall to the conveyor. That lengthens the time from a wall's birth to its absorption. It does not change which wall absorption j removes (FIFO), so p stays indexed by j mod 8.

With FIFO the pairing of absorption j with wall j is fixed. What a level-up shifts is only the time slot inside a cycle at which absorption j happens.

Checks (S6). A unit-level run of the right part, driven by the cycle of §4 from U_0 (150 cycles, 1,192 absorptions, conveyor wall count 6 → 14, so 8 level-ups):

The closed system (definition). The state is (Z, D, j): Z is a zone word, and D, j are integers. One step is:

  1. Feed c = D + p(j mod 8) carries at the bottom of Z, each by Theorem U.

  2. Whenever the bottom unit of Z is P, remove it (a drop). Each drop adds 3 to the carries still to be fed.

  3. Apply the absorption shift at the bottom of Z: the first non-D0 unit gets a 0 prepended to its head. D1 becomes S1, and P becomes SP (a zone wall is born). Landing on anything else is a hit.

  4. D += (drops in this step), j += 1.

This is exactly the real interval. A P passes carries unchanged, so the zone after interval j is inc^(N_j) of the zone, with leading P units moved to the wire, whatever the order.

Write A(m) for the number of drops after m carries of the interval. Steps 1-2 stop at the least m ≥ c with m = c + 3A(m) (a fixed point).

No fixed point lies between triple boundaries. Let r ∈ {0, 1, 2} be the number of carries of the top wall's triple still to come at absorption j − 1 (r and f as in item 3 of the proof of Lemma T). The triple boundaries of interval j are exactly the m ≥ r with m ≡ r (mod 3): first the r leftover carries, then 3 per firing.

Items 2, 3 and 5 of that proof give

c = D_j + p(j mod 8) = 3*(z(t_0) + D_j - b_j - f) + r,     so  c ≡ r (mod 3).

A fixed point has m ≡ c ≡ r (mod 3) and m ≥ c ≥ 47 > r, so it is a triple boundary.

So the least fixed point is the first triple boundary that is a fixed point, which is the real absorption. S6 reads r off the unit-level run at every absorption and checks r ∈ {0, 1, 2} and c ≡ r (mod 3); all three values of r occur.

So, by Lemma T, the zone read at its absorptions is this system, started from

Z_1 = S1 D0 D1 D1 D1 D0 D1,   D = 0,   j = 1

which is the zone D0 D0 D1 D1 D1 D1 of the step-203,465 record after the partial interval j = 0 (33 carries, then the absorption shift).

Where the 3/2 arithmetic goes. Lemma T is where the 3/2 conveyor enters, and it enters only through the constant vector p. That is why the zone stays a 2-adic counter problem rather than Mahler-type 3/2 arithmetic.

6. The zone never gets a hit (Theorem B)

Alive walls. A zone wall is alive at an absorption if, just before an absorption shift, Z contains a unit whose head is not ε, 0 or 1. That is a unit other than D0, D1, S1 and P. This includes SP, W, the head 00 and every stacked head.

A step is defined if every carry of its carry phase meets a head that has a row (§2.3). A run that reaches a canonical state (below) is defined at every step.

Two facts about single carries are used below.

Lemma Z1 (the absorption shift never lands on S1). Take a defined step of the closed system with feed c ≥ 1. At the end of its carry phase, the first non-D0 unit of Z is not an S1.

Proof. Suppose the first non-D0 unit u is an S1 at the end. By (F2), u has received no carry since it became an S1. Let E be the last of these events in the step: its start, the creation of u (if u is created during the step), or a drop.

Each choice of E contradicts this:

The feed is c = D + p ≥ 47, so the lemma applies to every step. ∎

Lemma Z0 (no alive wall, no hit). Take a run of the closed system in which every step is defined and no zone wall is alive at any absorption. Then no shift of the run is a hit, and every head stays in L_gap.

Proof.

In the runs of Lemmas L and L′ (§6.3, §6.4), a wall shift landing on an S1 would also violate (H2): the zone would not be clean after the first T0 carries.

S12 classifies every shift of the closed-system orbit from Z_1 to j = 32·131,250. Every one lands on a D1 or a P. S12 also tests Lemma Z1 directly, on every zone of at most 6 units over D0, D1, S1, P, SP and W with every feed c = 1..40, and on 200,000 random zones with any number of walls. None ends its carry phase with an S1 as the first non-D0 unit. With c = 0, the negative control does find S1 there.

Canonical states. For b ≥ 0, let C(b) be the state at j = 32b + 17 with

Z = S1 D0 D1 D1 D1 D1 bin(b+1),   D = j − 1

where bin(x) lists the binary digits of x, least significant first, as D0/D1 (bin(0) is the empty word). Write b + 2 = o·2^k with o odd, k = ν2(b+2) the class, and q = (o−1)/2. Then

Z(C(b)) = S1 D0 D1^(k+4) D0 bin(q)

When q = 0 this ends in D0 and stands for its normal form S1 D0 D1^(k+4) (§1).

Base (S7). From Z_1, the closed system passes through C(b) for every b = 0..131,249. On the way it creates 690,078 zone walls, with 0 alive at an absorption and 0 hits. In particular, C(0) is reached at j = 17.

Theorem B (block map). For every b ≥ 0, the closed system goes from C(b) to C(b′) for some b′ > b, with every step defined and no zone wall alive at any absorption in between.

Here b′ > b holds because every piece below ends in a canonical state reached after at least one step: C(b′) sits at j′ = 32b′ + 17 > j = 32b + 17. The value of b′ is not used.

Observation (not used, not proved). The random runs of S8 (every class k ≤ 130, so ν2(k+9) ≤ 7, with random b) all give b′ = b + 1 + ⌊(k+9)/32⌋. We make no claim about b′ in general.

The proof splits by the phase offset off = j − 32b (the block starts at off = 17). Every piece is a run of the closed system:

6.1 Entry: off 17 → 20 (Lemma E)

Let b + 2 = o·2^k with o = 2q + 1 odd and k ≥ 3. At offset off the step number is

j = 32b + off = o*2^(k+5) - 64 + off

and the feed is c = D + p(off mod 8). Write bin(x) for the digits of x, least significant first; bin(0) is the empty word.

For q = 0 the forms at off 17 and 20 end in D0 units and stand for their normal forms (§1): S1 D0 D1^(k+4) and D0 S1 D0^(k+2) D1 P.

Lemma E. The run from C(b) passes through these states, with no zone wall alive at an absorption and no hit:

off   zone                                         D - j
17    S1 D0 D1^(k+4) D0 bin(q)                     -1        (this is C(b))
18    D0^(k+6) S1 bin(q)                           -1
19    S1 D0^(k+4) D1 P D1 bin(q-1)     (q >= 1)    -2
      S1 D0^(k+4) D1 S1                (q = 0)     -2
20    D0 S1 D0^(k+2) D1 P D0 D0 bin(q)             -2

Proof. In each step the bottom S1 (if there is one) absorbs one carry and becomes P. A P at the bottom drops and adds 3 carries. Everything else is binary addition, and the absorption shift lands on the lowest D1.

No SP or W unit occurs, so no wall is alive and nothing is hit. ∎

S11 checks the four forms against the closed system on 2,000 random (k, o): k up to 1,500, o up to 400 bits, 405 of them with o = 1. All 2,000 match.

6.2 The value form (definition)

The marker is transparent to the digit arithmetic: a P passes carries and has no weight. So the zone during the descent is described by one number, the value of all its digits.

For a class k, an offset off and an integer Ω (the upper part: Ω = o·2^(k+5) at level 1), the value-form state VF(k, Ω, off) is:

zone:  the binary word of   Vtot = mu*Omega + w(off) - 3*2^(L-1),      L = k + lam - off
       with the heads at fixed digit positions and the marker P at digit position L
j = Omega - 64 + off,     D = j + d

Here (heads, λ, w, d) come from two tables below, and μ = 2 when λ = 25, else μ = 1. The legend for the heads:

Entry table (used at level 1 for 20 ≤ off ≤ 31):

off  heads            lam  w    d        off  heads            lam  w    d
20   S1@1             24   0   -2        26   S1@0 PPP@1       24  -4   -5
21   SP@1             25   0   -3        27   S1@0 PPP@0       24   1   -5
22   S1@0 PP@0        24  -2   -4        28   S1@0             24   8   -2
23   S1@3             24   0   -2        29   S1@2             24   8   -2
24   S1@2 P@2         24  -4   -3        30   S1@1 P@1         24   6   -3
25   SP@2 P@2         25  -4   -4        31   S1@0 PP@0        24   7   -4

Phase table (used for every other offset, by φ = off mod 8):

phi  heads        lam  w          d        phi  heads        lam  w          d
0    S1@0         24   off-20    -2        4    S1@0 PP@0    24   off-24    -4
1    S1@0         24   off-20    -2        5    S1@2         24   off-21    -2
2    S1@1         24   off-20    -2        6    S1@1 P@1     24   off-24    -3
3    SP@1         25   2off-42   -3        7    S1@0 PP@0    24   off-24    -4

Two facts used below:

End offset. off_end(k) is k + 20, or k + 21 when k + 20 ≡ 3 (mod 8). There the marker height is 4, or 3 in phase 4. This is the start state of the endgame (§6.4) and of the nested range and the plant (§6.5). Every offset before it has L ≥ 5.

We write VF_L(k, U) for VF(k, U·2^(k+5), off) at the offset where the marker height is L.

6.3 Lemma VF

Lemma VF.

There is no zone wall alive at an absorption and no hit anywhere on the way.

The class recursion uses level 2 only for large v (v > 600 in §6.5, or v > 50 in its smaller split). For v ≤ 10 and small S the feed can be below T0 = 2^12, so Lemma VS does not apply there; v ≥ 12 is a round margin.

The proof is an induction on the offset. One step is Lemma VS below, which follows from a one-step locality lemma.

Lemma L′ (one-step locality, marker above the cut). Let s = (Z, D, j) be a representative and s′ = (Z′, D′, j′) a member, with cut R ≥ 3. Suppose:

Suppose also that the representative's step satisfies:

Let a and b count the landings on a D1 among the first T0 carries and at the absorption shift. Then the member's step has the same wall firings, landings, drops, alive walls and hits as the representative's. It ends with Z′_next = X_next · Y′_next, where:

Proof. This is items 1-5 of the proof of Lemma L, for one step. The only new point is the P in Y and Y′:

Lemma VS (one descent step). Take R = 8 and T0 = 2^12. Let (k, Ω, off) satisfy Ω ≡ 0 (mod 2^8) and c ≥ 2^12, and one of:

Then one closed-system step takes VF(k, Ω, off) to VF(k, Ω, off + 1), with no zone wall alive at the absorption and no hit.

Proof. Pick the representative of the case:

In each case Ω0 = 3·2^(k0+5).

  1. Member conditions. Write δΩ = Ω − Ω0, δo = off − off0 and δM = 2^(L−1) − 2^(L0−1). Then

H = mu*dOmega + wa*do - 3*dM, Delta = dOmega + do,

where wa is the slope of w (0 for the entry table, whose members have δo = 0).

  1. The representative. S11 runs each representative's step under the checks of Lemma L′. All 24 + 256 + 1,024 steps satisfy (H0′)-(H2) and end exactly in VF(k0, Ω0, off0 + 1), with no alive wall and no hit.
  1. Algebra. By Lemma L′ the member's next value differs from the representative's by

(H/2^a + Delta)/2^b = [(mu/2^a + 1)/2^b]*dOmega + [(wa/2^a + 1)/2^b]*do - 3*dM/2^(a+b).

S11 checks that (μ/2^a + 1)/2^b = μ′ and (wa/2^a + 1)/2^b = wa′ at every representative, where μ′ and wa′ belong to the next form, and that L(off + 1) − L(off) = −(a + b). So the difference is exactly Vtot(k, Ω, off + 1) − Vtot(k0, Ω0, off0 + 1).

  1. The next state. The member's next zone has:

After the step, X_next covers the digit positions below 8 − a − b, since the landings removed a + b digit units from X.

So the member's next zone is VF(k, Ω, off + 1). The value D − j moves by A − 1, as in the representative. ∎

Proof of Lemma VF. Level 1 starts from VF at off 20 (Lemma E). Level 2 starts from VF at off′ = 17 (the plant lemma, §6.5). Every step from there to off_end has L ≥ 5, so it is case (E), (A) or (B) of Lemma VS. The conditions hold:

Checks beyond the proof (S11):

6.4 Endgame by locality (Lemma L)

Digit positions and value. In a zone, D0 and D1 are the digit units. The digit position of a unit is the number of digit units below it. V(Z) is the sum of 2^(position) over the D1 units; P, S1, SP and W carry no weight. Above the top of a zone the blank reads as D0 digits.

Members. Let s = (Z, D, j) be a closed-system state, the representative, and let R ≥ 5 and Δ ≡ 0 (mod 2^R). A state s′ = (Z′, D′, j′) is an (R, Δ)-member of s if:

Lemma L (locality). Run the representative with κ_0 = 1. At the start of step t, set the cut r_t = R + min(0, ν2(κ_t)) digit units. Suppose that at every step:

(H0) and (H1) are meant in this strict sense: "at most r − 1 digit units below", not "at most r". The checks S10 and S11 test exactly this, for digit and non-digit targets alike.

Update κ_(t+1) = (κ_t / 2^a + 1) / 2^b, where a counts the landings on a D1 among the first T0 carries and b counts the landings on a D1 at the absorption shift. Suppose also that the representative reaches a canonical state C(β) with κ = 1.

Then every (R, Δ)-member reaches C(β + Δ/32) at the same step. Its run has the same units below the cut at every step, the same zone walls and the same landings. In particular, it has no zone wall alive at an absorption and no hit if the representative has none.

Proof.

  1. Upward flow. In the Inc recursion each unit's row depends only on its own head, and the nested arrivals act on the units above it. A shift lands on the first non-D0 unit above its emitter.
  1. The first T0 carries. Both runs get at least T0 carries (H2, M4). By item 1 and (H1), X evolves identically in both runs, and Y and Y′ get the same carries.
  1. The rest of the carry phase. A P passes carries, so dropping leading P units commutes with feeding. The carry phase is therefore inc^m, where m is the least m ≥ c with m = c + 3A(m), and A(m) is the number of P units dropped after m carries.
  1. Absorption. The shift lands in X (H1), on the same unit in both runs.

  2. Values. The difference H = V(Z′) − V(Z) has all its weight above the cut.

  1. The next step. X agrees in both runs. Y′ − Y, as numbers, is H_(t+1) / 2^(cut), which is divisible by 2^(ν2(H_(t+1)) − cut).
  1. The end. With κ = 1, V(Z′) = V(Z) + Δ. Z = C(β) has V = 30 + 32(β+1), and the two zones agree below digit position R ≥ 5.

The locality check (S10) runs a representative and checks (H0)-(H2), κ and the canonical end at every step. A failed hypothesis fails the run.

The endgame instance. Take a class k ≥ 41 and an upper part U ≥ 1, and start from VF_4(k, U) (or VF at the next offset if that one is phase 3).

S10 runs all 65,536 residues. The 65,534 with ν2(k0+9) ≤ 14 satisfy Lemma L and reach the canonical state, with landings at digit ≤ 15. The 2 residues with ν2(k+9) ≥ 15 go to §6.5.

So for ν2(k+9) ≤ 14, VF_4(k, U) reaches a canonical state with no wall alive and no hit, for every U: the compressed and the real upper part alike.

6.5 Nested marker, plant, and the class recursion

Write k + 9 = s·2^v with s odd and v ≥ 9. Let off′ = off − (k+9), S = s + U·2^(k+5−v) and Q = (S−1)/2.

Nested range v ≤ 600 (Lemma L). Start from VF at off′ = 12 (marker height 3, phase 4). Note S ≡ s (mod 4).

S10: 1,182/1,182 representatives (every v in 10..600, both s0) satisfy Lemma L. The highest landing is digit v+1, below the cut v+2. So in this range the outcome depends only on S mod 4.

Plant lemma (Lemma P). Let v ≥ 9 and n = v − 3, and let S = 2Q + 1 ≥ 3 be odd. At off′ the step number is j = S·2^v − 64 + off′. Write [x]_n for the n-digit word of x, where 0 ≤ x < 2^n.

The start is the value form at off_end(k) = k + 21, in phase 4 with marker height 3, where k + 9 = s·2^v. There Vtot = Ω + s·2^v − 24 = S·2^v − 24. The run from it passes through:

off'  zone                                              D - j
12    S1 P P D0 D0 D0 P [2^n - 3]_n bin(2Q)               -4
13    D0 D0 D0 SP [2^n - 3]_n bin(4Q + 1)                 -2
14    D0 S1 D0 P [2^n - 3]_n D0 P bin(2Q - 1)             -3
15    S1 P D0 P [2^n - 5]_n D0 P bin(4Q)                  -4
16    S1 P [2^n - 6]_n D0 P bin(8Q + 2)                   -3
17    S1 [2^(n-1) - 3]_(n-1) D0 P bin(16Q + 6)            -2

There is no zone wall alive at an absorption and no hit. The feed is c = S·2^v + (off′ − 64 + d + p), where d is the D − j of the row.

Proof.

The only zone wall is the SP born at 12 → 13. It fires inside step 13 → 14, before that step's absorption, and its shift lands on a D1. So no wall is alive at an absorption and nothing is hit. The steps need n ≥ 6 (so the words stay in range) and Q ≥ 1. ∎

S11 checks the six forms against the closed system on 3,000 random (v, S), with v up to 2,998 and S up to 600 bits. All 3,000 match.

Identification. The off′ = 17 state is VF(v − 10, S·2^v, 17) at level 2:

So K′ = v − 10 and U′ = 32S, since S·2^v = 32S·2^(K′+5). This is algebra on the two closed forms, and S11 also checks it on every plant instance.

Class recursion (well-founded induction on K). Let E(K) say:

for every upper part U ≥ 1, the run from the value form at off_end(K) (that is VF_4(K, U), or VF_3(K, U) in phase 4) reaches a later canonical state, with no zone wall alive at an absorption and no hit.

We prove E(K) for every K ≥ 41 by strong induction on K. Let v = ν2(K+9).

Base. Every K with ν2(K+9) ≤ 600 is settled without the hypothesis. The first K that uses it is K = 2^601 − 9.

A smaller split (the one the .v uses). Lemmas P and VF (level 2) hold for every v ≥ 12. So the recursion can hand over to the induction hypothesis from v > 50 instead of v > 600, since then K′ = v − 10 ≥ 41 and E(K′) is in range.

6.6 Small classes (Lemma L)

Take k = ν2(b+2) ≤ 40, so b + 2 = o·2^k with o odd, and fix o mod 16 = o0.

S10: 327/327 direct runs and 328/328 representatives satisfy Lemma L and reach the next canonical state, with no alive wall and no hit.

6.7 Assembly (Theorem B)

Fix b, and let k = ν2(b+2).

So Theorem B holds. Each piece is defined at every step and has no zone wall alive at its absorptions. So by Lemma Z0 (with Lemma Z1 for the absorption shifts) the zone never has a hit.

Random huge b give an independent check (S8). For every k ≤ 130, with b < 2^400, the run from C(b) reaches C(b + 1 + ⌊(k+9)/32⌋) (the observation after Theorem B), with 0 alive walls and 0 hits.

7. Invariant, coverage, progress, halting unreachable

Invariant. The induction runs over the left records n ≥ 0, counted from the step-203,465 record. It carries one ghost number J, the number of absorptions so far. Indices are in the U_0 frame. Inv(n, J) says:

  1. Gadget. The tape is 0^inf <q_n G_n U_n 0^inf, where (q_n, G_n) is row n mod 8 of the table in §4. U_n starts at index base(n mod 8): that is 0 at XC, XD, XE, ZD, ZE and −1 at YC, YD, YE.

  2. Live walls. They are walls J, J+1, …, born(n) − 1, where born(n) = 6 + 8⌊n/8⌋ + 3·[n mod 8 ≥ 3] + 4·[n mod 8 ≥ 6] counts the births so far.

  3. (b) Birth data. Wall w has the fixed birth data (b_w, s_w): from U_0's table (indices 32, 20, 12, 7, 3, 1 and states W W W SP W SP) for w < 6, and otherwise the phase table of §4 at phase (w − 6) mod 8.

  1. (c) Carries. No triple is in progress at a record, and the youngest wall has R = 0. Walls born earlier satisfy

R_(w−1) = H_(w−1) + 3*floor((R_w + s_w)/2).

Wall w sits at b_w + ⌊(R_w + s_w)/2⌋, and it is W if R_w + s_w is odd, SP if even.

  1. (d) Zone feed. The zone has received m carries since absorption J − 1, where

m = 3*floor((R_J + s_J)/2) − [2(43 + D_J − b_(J−1)) − s_(J−1) − H_(J−1)] (J ≥ 1) m = 3*floor((R_0 + s_0)/2) (J = 0)

and 0 ≤ m < N_J. Here D_J and N_J are the closed system's D and carry count at its step J (N_0 = 33).

  1. (a) Zone. Let CS_J be the closed-system zone at the start of its step J, started from Z_1 (CS_0 = D0 D0 D1⁴, D_0 = 0).
  1. Conveyor. Every index from base to z − 1 is P, except the live walls at the positions in item 4.

  2. No hit in the orbit. The closed-system orbit up to step J + 1 has no zone wall alive at an absorption and no hit (Theorem B, Lemmas Z0 and Z1; the S7 base run for steps 1..17).

Inv(n, J) fixes the configuration. Items 2-7 determine U_n from (n, J) alone. For instance, a top wire with one P too few violates item 6 or 7.

S6 builds U_n from (n, J) and compares it with the unit-level run, which equals the machine at every S5 record. All 1,201 records match, over 150 cycles and 8 level-ups. All 1,203 perturbed words (one P less in the top wire, one P more, or the top wall moved up one unit) match no reconstruction for any J′ in J−4..J+4.

Closure: Inv(n, J) ⇒ Inv(n+1, J′), with J′ = J plus the number of absorptions in the step.

Absorption. By item 4 the top wall fires from z − 1 exactly when 3⌊(R_J + s_J)/2⌋ − E_then = 3(z − b_J) − E_then. Here E_then is the bracket in item 5, the carries wall J had emitted at absorption J − 1. Substituting z = 43 + D_J + A, this is m = 3A + D_J + p(J mod 8) = c + 3A, which is the closed system's stopping value.

This is the Lemma T algebra of §5, run from the invariant clauses instead of from the history of the run.

Coverage. Inv(0, 0) holds by §8. Inv(n, J) ⇒ Inv(n+1, J′) as above.

Progress. Each record step is a finite window run plus finitely many arrivals, and each arrival terminates (Lemma U-term). The step ends on a new left cell. So there are infinitely many records, strictly increasing in time.

Halting unreachable. The only undefined transition is A1.

Conclusion. The machine never halts. Every lemma in the chain is proved: the machine layer, the conveyor and the invariant (§2-§5, §7), and Theorem B for the zone (§6.7).

8. Initial segment

0^inf A> 0^inf   -->(203,465)   0^inf <C G_X U_0 0^inf      (<C reads the last 0 of 0^inf, just left of G_X)
G_X = 111111 0000 11 0000 11 000
U_0 = P SP P W P^3 SP P^4 W P^7 W P^11 W P^10 D0 D0 D1 D1 D1 D1

This is a finite run (S4 compares the gadget cells as well as the unit word). The state at the record is C. The conveyor of U_0 has 43 units, and its zone D0 D0 D1 D1 D1 D1 starts the closed system (§5).

Before step 203,465 there is nothing to prove: it is a finite run that does not halt.

9. The proof in Coq

The .v follows the argument above, with a few changes of route. Each one makes a statement easier to formalize; none changes the mathematics.

Hits are not unit words. The .v's unit type has only the six L_gap units. Its shift returns no word when it would land on S1, SP or W, and Inc has rows only for the six units.

Reduction. nonhalt_of_abs combines init with busycoq's progress_nonhalt_cond. Here init is the 203,465-step run, checked by busycoq's cconfig_evstep_dec_spec and vm_compute.

The progress relation is Reach on pairs (record type t, unit word U). Its step is the lemma window:

Pops (rk t) U U'   ->   rcfg t U  -->+  rcfg (rnext t) (rF t ++ U')

Window runs. wrun is an executable runner on a finite window, with the rest of the tape an opaque unit word touched only by the W rule (Inc3Pop). wrun_spec proves it sound, and the 8 runs of Lemma N are checked by computation inside window.

Closed system. cs_step states one step of §5 as a relation, with the least fixed point written out: m = D + p(j) + 3A, and no smaller m′ is a fixed point. csf is an executable step with csf_sound, and C0_reach runs it from Z_1 to C(0) at j = 17.

Lemma L as cut steps and families. The .v does not state Lemma L as a lemma about two runs. It proves its items for one step (cutstep):

An affine family (X, y, ay, D, j, aD) stands for the states with zone X ++ bin(y + ay·u), D + aD·u and j + aD·u, for every u ≥ 0. The runner frun steps a family as a whole, and frun_sound proves that one successful run covers every member. The representative runs of §6.4–§6.6 are family runs checked by vm_compute:

This is the smaller split of §6.5, so E_low covers ν2(K+9) ≤ 50, and EK uses the plant, VF2 and the induction hypothesis above that.

Lemma VS. astep is one closed-system step with a concrete low part and an arbitrary counter word above the cut (Lemma L′). vs_gen is the descent step symbolic in Ω, off and the marker height. It is checked by computation on the 12 entry rows (en_all) and on 256 × 5 phase classes, off mod 256 times L ∈ {5, 6, 7, 8, ≥ 9} (ph_all). VF1 and VF2 are the descents at the two levels.

Lemmas E and P. The steps of §6.1 and §6.5 are E1 to E3 and P12 to P16, proved on closed forms with lia and nia. LemmaE and LemmaP chain them.

E_id and P_id are the identifications with the value forms. The .v states Lemma P for n ≥ 7, which is all the recursion needs.

Conveyor and invariant. The .v does not write Inv(n, J) with the explicit formula for m. It describes the word above a position p as a relation WdR w p R u, by recursion on the wall number w, oldest wall first:

The one-carry lemma cascade is proved by induction on w. Its cases are an SP turning into W, a W firing and moving up, and the top wall being absorbed exactly at the least fixed point. The last case uses the bracket of Lemma T (bracket, bracket_small, wdata_period), here in a frame shifted by one: positions are U_0 indices plus 1.

The record invariant RInv t U says that U is WdR of its youngest wall, at the record's base position, with the birth phase matching the record type. RInv_step proves closure for all 8 record types, RInv_U0 gives the start, and AbsDefined_proof then gives nonhalt.

10. Numerical checks

These are evidence only; the result rests on the .v. Every claim of §1–§8 was also tested numerically, with simulators that are independent of the .v.

check what is checked size
S1 the sweeps of §2.1, random context every n ≤ 40, random n up to 5,000
S2 every unit lemma of §2.2 as an oracle run all rows
S3 Theorem U: machine against inc, cells and exact steps; walls(inc w) ≤ walls(w) every word of ≤ 4 units over 14 kinds (38,415), 20,000 random words
S4 the transition table equals the string, A1 the only undefined entry; the initial segment, gadget cells and unit word 203,465 steps
S5 the 8 window runs and Lemma C1; next record equals G′ F Φ_k(U) in cells, state and exact steps; every record in L_gap with c ≥ 42 every record to 2e9 (1,021 transitions)
S6 unit-level run equals the machine; FIFO; placement at every birth; Lemma T and its bracket; r ∈ {0, 1, 2} and c ≡ r (mod 3); Z_1 and N_0 = 33; invariant reconstruction and perturbations 150 cycles, 1,192 absorptions, 450 births, 1,201 records, 1,203 perturbed words
S7 closed system from Z_1 through C(b); every absorption shift on D1 or P b ≤ 131,249; 690,078 zone walls, 0 alive, 0 hits
S8 random huge b: C(b) reaches C(b + 1 + ⌊(k+9)/32⌋) every k ≤ 130, b < 2^400
S9 independent symbolic engines for the entry, descent and plant, against the closed system not used by the proof
S10 Lemma L runs, hypotheses in the strict reading endgame R = 16: 65,534/65,534; R = 12: 4,094/4,094; nested v ≤ 600: 1,182/1,182; small classes: 327 + 328
S11 Lemmas E, P, VS and VF: all 1,304 representatives and per-form identities; random instances; real chains; negative controls 2,000 entry and 3,000 plant instances; 68,308 + 62,723 chain states; 2,969 random members
S12 every shift of the orbit classified; Lemma Z1 exhaustive and random; normal form orbit to j = 32·131,250; 1,866,200 carry phases; 200,000 random zones

In S12 the orbit has 3,509,921 absorption shifts on a D1 and 690,078 on a P, and 690,078 wall shifts on a D1 and 480,973 on a P. Nothing else occurs.

Beyond these, third-level runs go to v = 16,385, and real uncompressed runs at k = 32,759 agree with the forms of §6.

11. Rule table (summary)

The block lists every rule the proof uses, with its parameters, its domain and how it is proved. Sections 2–6 give the exact statements and the proofs.

(*  machine layer (section 2): exact tape rewrites, proved by induction or by oracle simulation
  SR    B> (11000)^n        --> (10111)^n B>         5n        n >= 0, ind n
  SR6   B> (111000)^n       --> (100111)^n B>        6n        n >= 0, ind n
  KB    B> (1000)^n         --> (1111)^n B>          4n        n >= 0, ind n
  SL'   (10111)^n <C        --> <C (11000)^n         5n        n >= 0, ind n
  SL    (11110)^n <C        --> <C (00011)^n         5n        n >= 0, ind n
  KC    1^n <C              --> <C 0^n               n         n >= 0, ind n
  EdgeL 0^inf <C            --> 0^inf 1 0 B> 1       4
  Z     B> 0 x              --> <C 1 x               1         every x (first cell 0: D0, S1, SP, the blank)
  D1    B> 1000 r           --> <C 0000 inc(r)       8 + s     oracle, one arrival on r
  P     B> 11000 r          --> <C 11000 inc(r)      10 + s    oracle, one arrival on r
  W     B> 111000 r         --> <C 11000 . shift(inc^3 r)   34 + s1 + s2 + s3   oracle, three arrivals on r
  Thm U l B> w 0^inf        --> l <C inc(w) 0^inf    exact     every l, every w with inc(w) defined; ind on Inc
  carry model (section 2.3): inc on unit words, one carry; a W fires on every second carry it receives
  nursery (section 4): 8 window runs  0^inf <q G R  -->  0^inf <q' G' F (pop o inc^3)^k R,  k = 0, 0, 3, 0, 0, 12, 0, 2
  conveyor (section 3): C1  inc^3 x starts with P if x starts with P, S1, SP or W;  C2  no hit below the zone
  top (section 5): Lemma T  N_j = 3A_j + D_j + p(j mod 8), p = (47,48,48,47,48,47,48,47);  closed system (Z, D, j)
  zone (section 6): Z1 the absorption shift never lands on S1;  Z0 no alive wall => no hit;
                    C(b) --> C(b') with b' > b, no alive wall (Theorem B: Lemmas E, VF, L, L', P, class recursion)
*)

AI assistance: this proof sketch, the scripts and the checks were produced with the help of Claude (Anthropic).