{
 "tm": "1RB1LD_1LC1RA_0LD0LC_0RE1RB_1RD0RF_0RB---",
 "rank": null,
 "class_sheet": "Bell eats counter",
 "class_guess": "Bell eats counter: W4-2's counter (BECv5 family) in a mirror, started in W4-2's F; F1 = 1RC is a 3-step detour of W4-2's F1 = 1LF",
 "confidence": "high",
 "summary": "W4-2 in a mirror, started in F, with F1 stretched into a 3-step detour; W4-2's rules and invariant cover it.",
 "mechanism": [
  "349 = W4-2's table with F1 = 1RC (W4-2: 1LF), mirrored and renamed (F->A, A->B, ..., E->F); its blank run is W4-2's table started in F.",
  "Only A1 enters F, so F always has a 1 on its right: F1 C1 A1 (3 steps) does what W4-2's F1 does in 1 (in 349's letters: 1 A> 1 -> A1 D1 B1 -> 1 1 A>). Exact lockstep over 3e7 steps, 479 detours.",
  "So the run is W4-2's run from F: K'('',0,1) at step 14, (std,2,2) at step 73, inside W4-2's invariant I; every rule, Lemma S and Lemma C carry over (Eqv_v3 TM518 pairs them too, but imports BBinf)."
 ],
 "diagrams": [
  {
   "mode": "default",
   "png": "img/default_site.png",
   "html": "img/viewer.html",
   "steps": 10000,
   "caption": "bbchallenge default view, first 10,000 steps",
   "title": "bbchallenge default view, first 10,000 steps",
   "why": "The site's view. The left edge holds the (01) blocks; the right edge is the counter being eaten and rebuilt.",
   "primary": true,
   "start": "blank",
   "rows": "10,000 steps squeezed into 500 px rows (1 px row = 20 steps; the site blends steps 20y+9 and 20y+10)",
   "window": "cells -200..199, 1 px = 1 cell",
   "legend": "white = 1, black = 0 or never visited, red/green = head after a right/left move",
   "style": "bbchallenge-default"
  },
  {
   "mode": "explore, every step, two machines",
   "png": "img/detour_vs_518.png",
   "html": null,
   "steps": 142,
   "caption": "349 vs Eqv_v3 TM518 tm, steps 106-142 from blank",
   "title": "349 vs W4-2 (as TM518 tm), steps 106-142",
   "why": "Same blank start and step numbers per row. Compare the two head paths row by row from the yellow mark.",
   "primary": true,
   "start": "blank",
   "rows": "every step, steps 106..142 (37 rows, 8 px per row); left panel 349, right panel TM518 tm = 1RB1RA_1LC1RA_0LD0LC_0RE1RB_1RD0RF_0RB--- (W4-2 mirrored and renamed, started in W4-2's F)",
   "window": "cells -3..12, 1 px = 1/12 cell (each panel; grey gutters between and around the panels)",
   "legend": "slate = 0, white = 1; head colour = state: red A, orange B, blue C, green D, magenta E, cyan F; yellow = 349's detour rows (A1 D1 B1, steps 121-123)",
   "style": "bbchallenge-explore"
  },
  {
   "mode": "custom rows: one per overflow configuration",
   "png": "img/counter_rows.png",
   "html": null,
   "steps": 674711540,
   "caption": "The counter word at each of the first 400 overflows",
   "title": "Counter word at each overflow",
   "why": "One row per cycle, the counter's low end at the left. Read the colour strip, then compare rows.",
   "primary": true,
   "start": "blank",
   "rows": "one per overflow configuration K'(w,0,m) = 0^inf (01)^m 0 01 1 B> w 0^inf, the first 400 (steps 14..674,711,540, not evenly spaced), 2 px per row",
   "window": "cells 0..33, 1 px = 0.25 cells (counted from the head: offset 0 = the cell B reads, at the left; it moves right over time)",
   "legend": "white = 1, black = 0; light orange = a 1 in the top pair of a packed counter; pink = a 1 in a dirty word; right strip: blue = standard counter, orange = packed counter, red = dirty word, grey = empty word",
   "style": "custom"
  },
  {
   "mode": "records:R",
   "png": "img/recR_2e8.png",
   "html": null,
   "steps": 200000000,
   "caption": "Right records to 2e8 steps",
   "title": "Right records to 2e8 steps",
   "why": "One row per new rightmost cell. The red diagonal is the head eating into the counter; bands are (01) blocks.",
   "primary": false,
   "start": "blank",
   "rows": "the start, then one row per new rightmost cell (1,107 rows, steps 0..200,000,000; not evenly spaced in time)",
   "window": "cells -268..1106, 1 px = 1 cell",
   "legend": "white = 1, black = 0 or never visited, red/green = head after a right/left move",
   "style": "bbchallenge-default"
  },
  {
   "mode": "every:2000000",
   "png": "img/every2e6_2e9.png",
   "html": null,
   "steps": 2000000000,
   "caption": "Snapshot every 2e6 steps to 2e9",
   "title": "Every 2,000,000 steps to 2e9",
   "why": "Overall growth: both edges grow like the cube root of time, as W4-2's do (mirrored).",
   "primary": false,
   "start": "blank",
   "rows": "every 2,000,000 steps (1,001 rows, steps 0..2,000,000,000)",
   "window": "cells -573..2366, 1 px = 1 cell",
   "legend": "white = 1, black = 0 or never visited (alternating 0101 cells look grey), red/green = head after a right/left move",
   "style": "bbchallenge-default"
  }
 ],
 "history": {
  "skeleton": "0^inf (01)^m 0 01 1 B> w 0^inf, w = std(N) | pk(N) (clean overflow states; the first row is the empty word)",
  "vars": [
   "type",
   "N",
   "m"
  ],
  "rows": [
   {
    "step": 14,
    "values": [
     "std",
     0,
     1
    ]
   },
   {
    "step": 73,
    "values": [
     "std",
     2,
     2
    ]
   },
   {
    "step": 174,
    "values": [
     "pk",
     5,
     3
    ]
   },
   {
    "step": 395,
    "values": [
     "std",
     6,
     5
    ]
   },
   {
    "step": 686,
    "values": [
     "pk",
     12,
     6
    ]
   },
   {
    "step": 1055,
    "values": [
     "std",
     11,
     7
    ]
   },
   {
    "step": 1742,
    "values": [
     "pk",
     12,
     10
    ]
   },
   {
    "step": 2535,
    "values": [
     "std",
     15,
     11
    ]
   },
   {
    "step": 4116,
    "values": [
     "std",
     16,
     16
    ]
   },
   {
    "step": 5855,
    "values": [
     "pk",
     33,
     17
    ]
   },
   {
    "step": 7986,
    "values": [
     "std",
     27,
     19
    ]
   },
   {
    "step": 10797,
    "values": [
     "pk",
     28,
     22
    ]
   },
   {
    "step": 13842,
    "values": [
     "std",
     35,
     23
    ]
   },
   {
    "step": 17681,
    "values": [
     "pk",
     34,
     26
    ]
   },
   {
    "step": 26495,
    "values": [
     "pk",
     43,
     29
    ]
   },
   {
    "step": 32180,
    "values": [
     "std",
     34,
     32
    ]
   },
   {
    "step": 38191,
    "values": [
     "pk",
     67,
     33
    ]
   },
   {
    "step": 45296,
    "values": [
     "std",
     44,
     36
    ]
   },
   {
    "step": 52779,
    "values": [
     "pk",
     81,
     37
    ]
   },
   {
    "step": 61050,
    "values": [
     "std",
     47,
     39
    ]
   },
   {
    "step": 71499,
    "values": [
     "pk",
     46,
     44
    ]
   },
   {
    "step": 82394,
    "values": [
     "std",
     59,
     45
    ]
   },
   {
    "step": 94743,
    "values": [
     "pk",
     62,
     48
    ]
   },
   {
    "step": 107590,
    "values": [
     "std",
     79,
     49
    ]
   },
   {
    "step": 123109,
    "values": [
     "pk",
     58,
     54
    ]
   },
   {
    "step": 139182,
    "values": [
     "std",
     81,
     55
    ]
   },
   {
    "step": 156407,
    "values": [
     "pk",
     97,
     57
    ]
   },
   {
    "step": 174822,
    "values": [
     "std",
     75,
     59
    ]
   },
   {
    "step": 195117,
    "values": [
     "pk",
     80,
     62
    ]
   },
   {
    "step": 216030,
    "values": [
     "std",
     79,
     63
    ]
   },
   {
    "step": 240335,
    "values": [
     "pk",
     72,
     68
    ]
   },
   {
    "step": 265314,
    "values": [
     "std",
     77,
     69
    ]
   },
   {
    "step": 291733,
    "values": [
     "pk",
     109,
     71
    ]
   },
   {
    "step": 319626,
    "values": [
     "std",
     95,
     73
    ]
   },
   {
    "step": 352205,
    "values": [
     "pk",
     81,
     79
    ]
   },
   {
    "step": 386394,
    "values": [
     "std",
     89,
     81
    ]
   },
   {
    "step": 422249,
    "values": [
     "pk",
     127,
     83
    ]
   },
   {
    "step": 466182,
    "values": [
     "std",
     92,
     92
    ]
   },
   {
    "step": 511013,
    "values": [
     "pk",
     185,
     93
    ]
   },
   {
    "step": 557760,
    "values": [
     "std",
     123,
     95
    ]
   }
  ]
 },
 "rules": [
  {
   "name": "init",
   "from": "0^inf A> 0^inf",
   "to": "0^inf 01 0 01 1 B> 0^inf",
   "steps": "14",
   "cases": "= K'('',0,1) = (std,0,1), the mirror of W4-2's K('',0,1) reached from F; then S0 gives K'(001,0,2) = (std,2,2) at step 73, inside I",
   "validated": {
    "instances": 2,
    "passed": 2
   },
   "source": "manual"
  },
  {
   "name": "detour (Lemma E)",
   "from": "1 A> 1 x",
   "to": "1 1 A> x",
   "steps": "3 (A1 D1 B1)",
   "cases": "349's A1 = W4-2's F1 seen in the mirror; TM518 tm (= W4-2) does it in 1 step (A1 = 1RA). Only B1 enters A from the left side, so the cell left of A is always 1",
   "validated": {
    "instances": 958,
    "passed": 958
   },
   "source": "manual"
  },
  {
   "name": "R1 bounce",
   "from": "0^inf 01^m 0 01^(1+n) 1 B> w 0^inf",
   "to": "0^inf 01^(m+1) 0 01^n 1 B> phi(w) 0^inf",
   "steps": "L'(w)+10n+7",
   "cases": "n >= 1; phi = W4-2's phi with w read from the head rightwards; L'(w) = 1 if w starts with 0, else 2e+3+2*p11 ((e,e+1) = first 00 pair, p11 = 11 pairs before it = detours)",
   "validated": {
    "instances": 1200,
    "passed": 1200
   },
   "source": "manual"
  },
  {
   "name": "R2 overflow, q even",
   "from": "0^inf 01^m 0 01 1 B> w 0^inf",
   "to": "0^inf 01^0 0 01^(2+m+q/2) 1 B> x 0^inf",
   "steps": "L'(w)+q+8",
   "cases": "phi(w) = 0^q 1 x, q even: K'(x, m+1+q/2, 0) (W4-2's R2 / BECv5's ROv)",
   "validated": {
    "instances": 1200,
    "passed": 1200
   },
   "source": "manual"
  },
  {
   "name": "R3 reset, q odd",
   "from": "0^inf 01^m 0 01 1 B> w 0^inf",
   "to": "0^inf 01^(m+(q+3)/2) 0 01 1 B> x' 0^inf",
   "steps": "L'(w)+q+14",
   "cases": "phi(w) = 0^q 1 00 x' (or 0^q 1 then 0^inf), q odd",
   "validated": {
    "instances": 1200,
    "passed": 1200
   },
   "source": "manual"
  },
  {
   "name": "R4 overflow halt",
   "from": "0^inf 01^m 0 01 1 B> w 0^inf",
   "to": "halt",
   "steps": "L'(w)+q+8 then F1",
   "cases": "phi(w) = 0^q 1 1 x, q odd; never met inside a macro rule (W4-2 Lemma S); R5 (0^q 1 01 x) nests, also never met",
   "validated": {
    "instances": 1200,
    "passed": 1200
   },
   "source": "manual"
  },
  {
   "name": "macro S0",
   "from": "S(std,N,m) = K'(std(N),0,m)",
   "to": "S(std, b, b)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); k = 0 (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 86,
    "passed": 86
   },
   "source": "manual"
  },
  {
   "name": "macro S1",
   "from": "S(std,N,m) = K'(std(N),0,m)",
   "to": "S(pk, 2k+b, b)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); k >= 1, k = 2^(L-1) or 2k+b >= 2^(L+1) (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 177,
    "passed": 177
   },
   "source": "manual"
  },
  {
   "name": "macro S2",
   "from": "S(std,N,m) = K'(std(N),0,m)",
   "to": "S(std, b+L+3, b+L+3)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); k not a power of 2, 2k+b+1 = 2^(L+1) (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 81,
    "passed": 81
   },
   "source": "manual"
  },
  {
   "name": "macro S3a",
   "from": "S(std,N,m) = K'(std(N),0,m)",
   "to": "S(std, 3*2^h+n, n)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); final gap, g = 0 (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 81,
    "passed": 81
   },
   "source": "manual"
  },
  {
   "name": "macro S3b",
   "from": "S(std,N,m) = K'(std(N),0,m)",
   "to": "S(std, 2^(h+1)+2g+n, n)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); final gap, g >= 1, n >= 2^(h+1)-2g (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 86,
    "passed": 86
   },
   "source": "manual"
  },
  {
   "name": "macro P0",
   "from": "S(pk,N,m) = K'(pk(N),0,m)",
   "to": "S(std, b+1, b+1)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); k = 0 (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 83,
    "passed": 83
   },
   "source": "manual"
  },
  {
   "name": "macro P1",
   "from": "S(pk,N,m) = K'(pk(N),0,m)",
   "to": "S(std, k+b, b)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); k = 2^(L-1) (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 108,
    "passed": 108
   },
   "source": "manual"
  },
  {
   "name": "macro P2",
   "from": "S(pk,N,m) = K'(pk(N),0,m)",
   "to": "S(std, 2r+b, b)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); r >= 1, 2r+b >= 2^L (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 157,
    "passed": 157
   },
   "source": "manual"
  },
  {
   "name": "macro P3",
   "from": "S(pk,N,m) = K'(pk(N),0,m)",
   "to": "S(std, b+L+1, b+L+1)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); r >= 1, 2r+b+1 = 2^L (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 81,
    "passed": 81
   },
   "source": "manual"
  },
  {
   "name": "macro P4a",
   "from": "S(pk,N,m) = K'(pk(N),0,m)",
   "to": "S(pk, 3*2^h+n, n)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); final gap, g = 0 (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 81,
    "passed": 81
   },
   "source": "manual"
  },
  {
   "name": "macro P4b",
   "from": "S(pk,N,m) = K'(pk(N),0,m)",
   "to": "S(pk, 2^(h+1)+2g+n, n)",
   "steps": null,
   "cases": "N+1 = (2k+1)2^i, b = m+1+i, L = bitlen(k), r = k-2^(L-1); final gap, g >= 1, n >= 2^(h+1)-2g (W4-2 proof.md 3.4, unchanged); runs to the first clean overflow with N' >= 1",
   "validated": {
    "instances": 85,
    "passed": 85
   },
   "source": "manual"
  },
  {
   "name": "invariant I",
   "from": "(std,2,2) at step 73",
   "to": "I holds after every macro rule",
   "steps": null,
   "cases": "W4-2's I (linear bounds on N vs m by class); Lemma S/C are pure arithmetic, so they carry over. Checked along 1,000,000 macro steps (m = 2.57e6) and as direct overflow states for 140 macro steps (to step 3.0e7)",
   "validated": {
    "instances": 4,
    "passed": 4
   },
   "source": "manual"
  }
 ],
 "template": {
  "file": "machines/1RB1LF_0RC0RB_0LD1LA_1LC0LE_0LA---_1LA1LF/1RB1LF_0RC0RB_0LD1LA_1LC0LE_0LA---_1LA1LF.v",
  "module": null,
  "machine": "1RB1RA_1LC1RA_0LD0LC_0RE1RB_1RD0RF_0RB---",
  "diff": "A1: 1LD here vs 1RA in TM518 tm (= W4-2 mirrored, renamed F->A, A->B, ..., E->F); i.e. W4-2's F1 = 1LF becomes 1RC",
  "applies": "yes",
  "note": "Our kill W4-2 (check_kill PASS). On the unmirrored table TP = 1RB1LF_0RC0RB_0LD1LA_1LC0LE_0LA---_1LA1RC only TF2 and TF3 read F1 with an unknown right side: restate them and phi_spec's PF clause with [1] *> r on the right (every PF entry already has [1;1]). TA2, RS, OVe, OVo, all arithmetic, BS_*, I, Lemma S/C and step_I are unchanged. New: init from F;; tape0 to St (false,2,2) (73 steps), then Perm (flip tm) TP f + flip_halts + perm_halts as in #24."
 },
 "strategy": "Delta proof from W4-2: proof.md adds Lemma E (the detour), the 73-step start from F and the mirror/renaming. The .v is W4-2's with tm := TP, TF2/TF3/phi_spec restated with [1] on the right, init from F, then #24's flip/perm reduction to 349.",
 "risks": [
  "phi_spec's PF clause needs list re-association ([1;1] *> [1] *> r = [1] *> [1;1] *> r) in four branches: small but fiddly.",
  "The file carries two TM_from_str strings (TP and 349); check_kill.sh accepted that shape for #24.",
  "init over 73 steps from F;; tape0 by esx (W4-2's init0 is 32); fallback: 14 steps to K('',0,1), then W4-2's BS_S0 with i = 0, m = 1."
 ],
 "checkpoint_questions": [
  {
   "text": "One detour: the two panels agree through step 121. There 349 reads A1 and steps back (green D, then orange B) where TM518 goes straight on, and afterwards 349 runs exactly 2 rows behind on the same tape. Is that the only difference you see?",
   "figs": [
    1
   ],
   "kind": "check"
  },
  {
   "text": "Counter word at each overflow: do the rows read as W4-2's binary counter (mirrored, low end on the left), flipping between standard and packed (blue/orange strip), with rare pink dirty rows?",
   "figs": [
    2
   ],
   "kind": "check"
  },
  {
   "text": "Proof route: copy W4-2's .v, restate TF2/TF3 and phi_spec's F-clause for the detour, add the 73-step start from F, and close with flip_halts + perm_halts as in #24. Should we go straight on to proof.md and the .v (work continues meanwhile)?",
   "kind": "decision"
  }
 ],
 "discord_check": null,
 "stats": {
  "simulated_steps": 1000000000,
  "cells": 2324,
  "nonzeros": 1157,
  "growth": "span ~ steps^(1/3) like W4-2 (2,324 cells at 1e9: -457..1866); abstract rules: 1,000,000 macro steps from (std,2,2), m = 2.57e6"
 },
 "status": "CHECKPOINT_A",
 "status_reason": "Observe done, confidence high: 349 is W4-2 from F with a 3-step detour; rules, macro rules and I validated on 349 directly; next: proof.md + .v"
}