{
 "tm": "1RB0LF_0RC---_1RD0RA_1LE0RC_0LA0LE_1LE1LB",
 "rank": 8,
 "class_sheet": "Sync bouncer counter",
 "class_guess": "Sync bouncer counter, spread-digit variant (binary counter whose digits sit inside the bouncer body)",
 "confidence": "med",
 "summary": "Bouncer carrying a binary counter whose digits sit in its body; each overflow inserts a new digit ~4x farther out",
 "mechanism": [
  "Bouncer: the head shuttles from the left edge into the tape; each trip adds one (010) block to the left lead a.",
  "The (100) body holds 7-cell digits 0b10001; each trip is a binary +1 (run to the first 0-digit, set it, clear the 1s).",
  "Right end frozen. At overflow (all 1s) a long pause cuts a new lowest digit from the lead, ~4x farther out."
 ],
 "diagrams": [
  {
   "mode": "custom rows: one per +1",
   "png": "img/counter_bits.png",
   "html": null,
   "steps": 17409,
   "caption": "One row per +1: bit columns blink every 1,2,4,8,16,32 rows",
   "title": "One row per +1: six bit columns",
   "why": "One row per +1. Count the rows between colour changes in each of the six bit columns, left to right.",
   "primary": true,
   "start": "constructed: 0^inf A> 0 (010)^6 0 0010001 (100)^5 0010001 (100)^4 0010001 (100)^3 0010001 (100)^3 0010001 (100)^3 0010001 0^inf (= K(a=6; bits 000000; gaps 5,4,3,3,3); bit cells at 21, 43, 62, 78, 94, 110)",
   "rows": "the start, then one per +1 (each time A reaches a new left edge): 64 rows, steps 0..17,409 (1 row = 6 px tall)",
   "window": "cells -189..115, 1 px = 1/3 cell (1 cell = 3 px)",
   "legend": "white = 1, black = 0 or never visited, green = head at the new left edge; the columns that blink are the 6 bit cells (21, 43, 62, 78, 94, 110)",
   "style": "bbchallenge-default"
  },
  {
   "mode": "default --fit",
   "png": "img/counter_ruler.png",
   "html": null,
   "steps": 882,
   "caption": "Each +1 sweeps to the lowest 0 bit: depths 1,2,1,3,1,2,1,4",
   "title": "Eight +1s up close, every step",
   "why": "Eight +1s, every step. Note where each right sweep turns back, against the bit cells (21, 43, 62, 78).",
   "primary": true,
   "start": "constructed: 0^inf A> 0 (010)^6 0 0010001 (100)^5 0010001 (100)^4 0010001 (100)^3 0010001 (100)^3 0010001 (100)^3 0010001 0^inf (= K(a=6; bits 000000; gaps 5,4,3,3,3); bit cells at 21, 43, 62, 78, 94, 110)",
   "rows": "every step, 0..882 = 8 increments (1 step = 2 px tall)",
   "window": "cells -24..115, 1 px = 0.5 cells (1 cell = 2 px)",
   "legend": "white = 1, black = 0 or never visited, red/green = head after a right/left move; each right-going sweep turns at a bit cell (21, 43, 62 or 78)",
   "style": "bbchallenge-default"
  },
  {
   "mode": "records:L --frame right",
   "png": "img/records_L_3e6.png",
   "html": "img/viewer.html",
   "steps": 3000000,
   "caption": "Real run, right edge fixed: new digit columns appear farther left",
   "title": "Real run from blank, right edge pinned",
   "why": "Real run from blank, right edge pinned. Watch for new thin vertical lines and where each one appears.",
   "primary": true,
   "start": "blank",
   "rows": "the start, then one per new leftmost cell (2,056 rows, steps 0..2,999,327); not evenly spaced in time, and overflow pauses add no rows",
   "window": "cells -2,055..11, 1 px = 1 cell (right edge pinned to the last column; it is cell 11 from row 66 = step 1,527 on)",
   "legend": "white = 1, black = 0, green = head at the new left edge. Grey texture = the period-3 tape (010.../100...) at 1 px per cell; each thin vertical line = one 7-cell digit block 0b10001; the dense strip at the right = packed high digits",
   "style": "bbchallenge-default"
  },
  {
   "mode": "blaze",
   "png": "img/blaze_1e7.png",
   "html": "img/viewer.html",
   "steps": 10000000,
   "caption": "Span ~ sqrt(t); the notch is the overflow pause 1.0e6-2.85e6",
   "title": "Blaze, 10 million steps",
   "why": "The span grows like sqrt(t); the notch at 1.0e6-2.85e6 steps is one overflow pause.",
   "start": "blank",
   "rows": "Blaze time blocks of 16,384 steps (611 rows, each averaged), stretched to 500 px (1 px ~ 20,000 steps)",
   "window": "cells -5,536..11, 1 px = 6.9 cells (each px shows one 4-cell block)",
   "legend": "white = 0, orange = 1; pale orange = a mix (each pixel averages 4 cells x 16,384 steps)",
   "style": "bbchallenge-blaze"
  },
  {
   "mode": "default",
   "png": "img/default_site.png",
   "html": "img/viewer.html",
   "steps": 10000,
   "caption": "bbchallenge view: lead grows left, right end frozen",
   "title": "bbchallenge default view, first 10,000 steps",
   "why": "The site's view: the lead grows to the left while the right end stays frozen.",
   "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"
  }
 ],
 "history": {
  "skeleton": "0^inf <A (010)^a 00 b0 10001 (100)^g1 0 b1 10001 ... (100)^gk 0 bk 10001 R 0^inf",
  "vars": [
   "a (lead)",
   "b0..bk (LSB first)",
   "g1..gk (gaps, LSB side first)",
   "R (packed high digits)"
  ],
  "rows": [
   {
    "step": 466,
    "values": [
     6,
     "1",
     "-",
     "1 digits/16 cells"
    ]
   },
   {
    "step": 3669,
    "values": [
     14,
     "1",
     "-",
     "9 digits/99 cells"
    ]
   },
   {
    "step": 8109,
    "values": [
     14,
     "1",
     "-",
     "12 digits/127 cells"
    ]
   },
   {
    "step": 17206,
    "values": [
     44,
     "1",
     "-",
     "12 digits/132 cells"
    ]
   },
   {
    "step": 36124,
    "values": [
     11,
     "01",
     "28",
     "13 digits/142 cells"
    ]
   },
   {
    "step": 36205,
    "values": [
     12,
     "11",
     "28",
     "13 digits/142 cells"
    ]
   },
   {
    "step": 60574,
    "values": [
     75,
     "01",
     "28",
     "13 digits/142 cells"
    ]
   },
   {
    "step": 92299,
    "values": [
     120,
     "11",
     "28",
     "13 digits/142 cells"
    ]
   },
   {
    "step": 236797,
    "values": [
     47,
     "010",
     "68,28",
     "14 digits/152 cells"
    ]
   },
   {
    "step": 237094,
    "values": [
     48,
     "110",
     "68,28",
     "14 digits/152 cells"
    ]
   },
   {
    "step": 500668,
    "values": [
     264,
     "110",
     "68,28",
     "14 digits/152 cells"
    ]
   },
   {
    "step": 1006516,
    "values": [
     468,
     "111",
     "68,28",
     "14 digits/152 cells"
    ]
   },
   {
    "step": 2847332,
    "values": [
     203,
     "0100",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 2848565,
    "values": [
     204,
     "1100",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 2861897,
    "values": [
     210,
     "1001",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 10002518,
    "values": [
     1429,
     "0011",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 30013827,
    "values": [
     2874,
     "1000",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 60004098,
    "values": [
     4223,
     "0110",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 114077490,
    "values": [
     5943,
     "0111",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 114113163,
    "values": [
     5944,
     "1111",
     "260,68,28",
     "15 digits/162 cells"
    ]
   },
   {
    "step": 555048797,
    "values": [
     799,
     "0111010",
     "7,4097,1028,260,68,28",
     "17 digits/182 cells"
    ]
   },
   {
    "step": 555053606,
    "values": [
     800,
     "1111010",
     "7,4097,1028,260,68,28",
     "17 digits/182 cells"
    ]
   },
   {
    "step": 700022195,
    "values": [
     6047,
     "0111010",
     "7,4097,1028,260,68,28",
     "17 digits/182 cells"
    ]
   },
   {
    "step": 850053545,
    "values": [
     8931,
     "0100111",
     "7,4097,1028,260,68,28",
     "17 digits/182 cells"
    ]
   },
   {
    "step": 999986591,
    "values": [
     11157,
     "0010010",
     "7,4097,1028,260,68,28",
     "17 digits/182 cells"
    ]
   }
  ]
 },
 "rules": [
  {
   "name": "Inc (one bounce = binary +1)",
   "from": "0^inf <A (010)^a 00 b0 10001 (100)^g1 0 b1 10001 ... (100)^gk 0 bk 10001 R 0^inf",
   "to": "same with a+1 and bits b0..bk + 1 (b0..b(j-1): 1->0, bj: 0->1)",
   "steps": "6a + 6(g1+...+gj) + 24j + 9",
   "cases": "j = lowest 0 bit; needs some bi = 0 (else Ovf). Holds for every a>=1, gi>=1, 1-6 digits",
   "validated": {
    "instances": 400,
    "passed": 400
   },
   "source": "manual"
  },
  {
   "name": "Ovf-insert (overflow pause, long lead)",
   "from": "0^inf <A (010)^a 00 1 10001 (100)^g1 0 1 10001 (100)^g2 0 1 10001 (100)^g3 R* 0^inf",
   "to": "0^inf <A (010)^(a-g'-5) 00 0 10001 (100)^g' [old digits, bits reloaded] (100)^g1 ... (100)^g3 R' 0^inf",
   "steps": null,
   "cases": "a >= g'+6, g' = 2044 - 2g1 - 4g2 - 8g3 (k=3; general 2^(2k+5)-4-sum 2^i g_i matches all 4 real inserts). R* = real R at step 114113163",
   "validated": {
    "instances": 30,
    "passed": 30
   },
   "source": "manual"
  },
  {
   "name": "Ovf-short (overflow pause, short lead)",
   "from": "same as Ovf-insert",
   "to": "0^inf <A (010)^(a-1) [same digits and gaps, counter reloaded] R' 0^inf",
   "steps": null,
   "cases": "a < g'+6: no insert, gaps unchanged; reloaded counter value rises by 2 per +1 in a (checked a = 100..115)",
   "validated": {
    "instances": 12,
    "passed": 12
   },
   "source": "manual"
  }
 ],
 "template": {
  "file": "vendor/busycoq/verify/SBCv2_6x2_solved.v (Section template SBCv2.v)",
  "module": "tm108 / nonhalt108 (line 1195)",
  "machine": "1LB0RE_0LC---_1LD0LA_1RA0LC_1RF1RB_0RA0RF",
  "diff": "mirror + relabel E<->F gives 1RB0LF_0RC---_1RD0RA_1LA0RC_0LA0LE_1LE1LB; only D0 differs: ours 1LE, template 1LA",
  "applies": "no",
  "note": "Template LInc/RInc0, mirrored: 10/10 on the template, 0/10 on ours. Same idea (binary counter + unary sync), but our digits are spread through the unary body, not packed in a 4-cell-digit counter."
 },
 "strategy": "Family proof in the SBCv2 spirit but with new shapes: (1) Inc as an ind-lemma over a 'spread counter' (digits 0b10001 between (100)^g gaps; shift rules over (100)^g via es/sideRLs); (2) map the overflow pause into exact sub-rules (insert / short-lead / R growth), not yet done; (3) multistep_nonhalt + progress_nonhalt_cond with an invariant on (a, k, gaps, counter value), like SBCv2's P(k,n).",
 "risks": [
  "Overflow pause internals are unmapped: R growth and multi-insert pauses (step 1.1e8 inserted 1028, 4097 and 7). They are most of the proof.",
  "Size: nested counters plus an arithmetic invariant; expect 30-80 KB, well over the 15 KB target.",
  "Only 4 real overflows exist in 1e10 steps (the next is far beyond reach), so the long-term rules rest on synthetic-config probes."
 ],
 "checkpoint_questions": [
  {
   "text": "Fig 1: do the six bit columns toggle every 1, 2, 4, 8, 16, 32 rows, i.e. a binary counter inside the bouncer body?",
   "figs": [
    0
   ]
  },
  {
   "text": "Fig 2: does each right sweep turn back at the lowest 0 bit (depths 1, 2, 1, 3, 1, 2, 1, 4)?",
   "figs": [
    1
   ]
  },
  {
   "text": "Fig 3: at each overflow, does a new digit line appear farther left than the last (a spread counter that inserts digits)?",
   "figs": [
    2
   ]
  }
 ],
 "discord_check": null,
 "stats": {
  "simulated_steps": 10000000000,
  "cells": 181589,
  "nonzeros": 60536,
  "growth": "span ~ t^0.5 (17.9k cells at 1e8, 50.2k at 1e9, 181.6k at 1e10); right edge fixed at 11 since step 1527"
 },
 "status": "CHECKPOINT_A",
 "status_reason": "Mechanism found and core rules validated (Inc 400/400, overflow branches 30/30 and 12/12); arithmetic is linear, not Collatz-like; sheet has no notes or claims; on mxdys's UBRRBA_TODO list (Dennis: fair game)."
}