BB(6) hunt
Machines / W6-8

1RB1RC_0LC1RE_1RA0LD_1LB0RD_0RF---_0RA0RF

W6-8ParkedUnknownbbchallenge ↗Explorer

Where it stands

Parked at the deeper analysis

Wave 6 stage 2: no invariant yet; the obstacle is now specific. Each block is a six-state transducer (A-F = (gap, parity)).

Read the full status

Halting in the body needs an R to reach a fresh gap-1 odd block F. In the real run every F has a gap-3 right neighbour and every E a gap-2 one, and a gap-3 block never sends R, so F is safe while this pairing holds. It breaks only if a later phase defect catches the F before F's first N: the small-refill halts of stage 1 are exactly that. Refill fuzz with refills >= 24+r never breaks it. Window languages (k = 7, 10) neither close nor fail; the invariant needs a non-local timing comparison between each F and the next defect.

Observe
Deepen
Informal proof
Rocq
space-time diagram, first 10,000 steps from blank
The first 10,000 steps from a blank tape. Time runs down; white is 1.
About this picture

The standard picture (bbchallenge.org's Default view): each row is the whole tape at one step, time runs downward, and the head's path draws the pattern.

bbchallenge-defaultStart blankRows steps 0 → 10,000, top to bottomWindow cells −200..199, left to rightColors 1 0 or unvisited

Overview

In one sentence

Binary counter in the gaps; the fuel block refills ~x1.5 per epoch (a -> ceil(3a/2)+1); halting seems independent of it

Status
Parkeddeepening the analysis · updated 2026-10-14Not blocking · Stuck at the deepening the analysis stage. Answer Q1–Q3 whenever; a “no” redirects the work.
idle since Oct 14 17:13 (44 h ago) · status.json 2026-10-14
Class
Unknownours: sheet Unknown ≠ ours Binary counter in 0^2/0^3 gaps between unary blocks, fuel block refilled x1.5 per epoch (Collatz-like refill a -> ceil(3a/2)+1) · med confidence
On the list
line 8 of BB6_holdouts_663.txt · historical 740 line 9 · observe.json rank #9
eqv ×3sim 1e15
Your calls on file 2
parked
Dennis 2026-10-14: park (needs a non-local timing invariant)
2026-10-14 · park
W6-8 needs a non-local timing invariant: park it, or fund a third 2 h stage to build that automaton?

Mechanism

How it works: 3 notes
  • Tape = unary blocks separated by 0^1/0^2/0^3 gaps. Each cycle a zigzag runs left from the edge writing 01 per pair of 1s; the run back right decodes it.
  • The zigzag passes odd blocks with 0^2 on their left and stops at an even block or a 0^3 gap: a binary counter in the gaps (0^2 = 1, 0^3 = 0). An odd block after 0^1 would halt.
  • The last block is fuel (-4 every two cycles). When it runs out, the counter is rebuilt and refilled: F = 8a+6 with a -> ceil(3a/2)+1. Ten block rules match all 75,581 cycles to 4e9; residue-mod-8 fuzz never halts.

Figures for Checkpoint A

Fig 1 · Right-edge records: the gapsQ1

Each black line is a gap between blocks of 1s. Compare the spacing between fans where new lines branch off.

Right-edge records: the gaps
bbchallenge-defaultStart blankRows right recordsWindow cells -27..1420, 1 px = 1 cellColors 1 0 head moving R/L
Rows: a row each time the head reaches a new rightmost cell (1,421 rows) · Colors: black: gaps, and the unvisited area right of the edge
Fig 2 · Gap types and the fuel blockQ1Q3

Blue and orange gaps are the counter digits. Follow one green wedge down to where it closes, then the next.

Gap types and the fuel block
customStart blankRows one row per right-edge arrival in state AWindow cells -30..1420, 1 px = 1 cellColors 1 gap 0^2 gap 0^3 gap 0^1 last block of 1s (fuel) unvisited head
Rows: 697 rows, to step 399,961
Fig 3 · One cycle: zigzag left, decode rightQ2

Top to bottom: the diagonal zigzag goes left leaving a striped band, then a straight run returns to the edge.

One cycle: zigzag left, decode right
bbchallenge-defaultStart mid-run: step 3,057Rows every step (130 steps = one cycle)Window cells -99..2, 1 px = 0.25 cellsColors 1 0 head moving R/L
Start: head just reached the right edge in state A: ... 128 03 125 02 114 A> 0∞ · Window: 4x zoom; cell 0 = the head at the start
More figures (1)Fig 4: bbchallenge default view
Fig 4 · bbchallenge default viewviewer ↗

The standard picture. The tape grows to the right only; the head sweeps back and forth near the growing edge.

bbchallenge default view
bbchallenge-defaultStart blankRows every step; 10,000 steps squeezed into 500 pxWindow cells -200..199, 1 px = 1 cellColors 1 0 head moving R/L
Rows: site canvas
Rules (13/13 validated)exact tape rewrites the proof will formalize, each re-checked by simulation
rulefrom ⟶ tocasesstepschecked
Z: zigzag eats a pair
1 1 <C
⟶ <C 0 1
iterated: 1^(2k) <C -> <C 01^k in 4k steps4✓300/300
O2: carry passes an odd block
0 0 1 <C
⟶ <C 0 1 0
the last 1 of an odd block with a 0^2 gap on its left3✓300/300
T: turn
0 <C
⟶ 1 A>
—1✓300/300
R1/R2: decode on the way right
A> 1 0 | A> 0 1 0 1m 0
⟶ 1 1 A> | 1 1 0m+2 A>
R2 checked for m = 0, 1, 32 | m+4✓900/900
R3/R5: bounce back left
1 A> 0 0 | A> 1 1
⟶ <C 0 1 0 | <C 0 1
—6 | 5✓600/600
halting patterns
1 0 1 <C | A> 0 1 1
⟶ halt
E1 is reached only by B reading 13 | 3✓600/600
Todd0 (cycle)
1x 03 1z A> 0∞
⟶ 1x+3 02 1z A> 0∞
z even >= 2—✓200/200
Todd (cycle)
1x 03 1y (02 1p_i)* 02 1z A> 0∞
⟶ 1x+3 02 1y+3 (03 1p_i-1)* 03 1z-4 A> 0∞
y, p_i odd; z even >= 4. z = 2: last gap stays 0^2 and the last block becomes empty (ToddZ2)—✓600/600
Teven (cycle)
1x 0s 1e (02 1p_i)* 02 1z A> 0∞
⟶ s=1: 1x+3 03 1e (03 1p_i-1)* 03 1z-4 A>; s=2,3: 1x 0s-1 13 03 1e (03 1p_i-1)* 03 1z-4 A>
e even; z even >= 4 (z = 2 variant also checked); a block 1^3 is born for s = 2, 3—✓1800/1800
Z0b, Z0a (empty last block)
1x 03 A> | 1y 0s 1w 02 A>
⟶ 1x+3 02 A> | 1y 0s-1 16 02 1w-2 A>
Z0a: w even, s in {2,3} (refill: new fuel w-2)—✓400/400
Z0c (refill, w odd)
X 1v 03 1w 02 A>
⟶ carry(X 1v+3) 03 1w-3 A>
carry = the pass/stop rules above without the fuel term; new fuel w-3—✓400/400
all cycle rules on the real run
each right-edge A arrival, step 11,118 to 4e9
⟶ the next arrival
75,581 cycles: Todd0 37,757, Todd 37,651, Teven 105, refill events 683*(cells from the stopping gap to the edge) + O(passes)✓75581/75581
refill map
fuel F = 8a+6 right after Z0c
⟶ F' = 8a'+6 with a' = ceil(3a/2)+1
F = 6 mod 16: F' = (3F+10)/2, one Z0a in the epoch; F = 14 mod 16: F' = (3F+18)/2, two Z0a—✓42/42
Compressed historythe tape as 0∞ L 1v 03 1F A> 0∞ (right after each fuel refill, rule Z0c) at 15 moments: where the rules are read off
0∞ L 1v 03 1F A> 0∞ (right after each fuel refill, rule Z0c)
stepFa=(F-6)/8F mod 16
17,10362714
63,004102126
130,3971581914
408,804246306
796,585374466
1,665,942566706
3,617,8558541066
8,003,3261,2861606
17,793,9871,93424114
56,650,0482,91036314
149,617,8134,3745466
272,052,2846,5668206
539,058,3919,8541,23114
1,580,171,98414,7901,8486
2,957,517,77122,1902,77314
Flast 22,190
22,1906217,1033e9log xstep 17103: F = 62step 63004: F = 102step 130397: F = 158step 408804: F = 246step 796585: F = 374step 1665942: F = 566step 3617855: F = 854step 8003326: F = 1286step 17793987: F = 1934step 56650048: F = 2910step 149617813: F = 4374step 272052284: F = 6566step 539058391: F = 9854step 1580171984: F = 14790step 2957517771: F = 22190
a=(F-6)/8last 2,773
2,773717,1033e9log xstep 17103: a=(F-6)/8 = 7step 63004: a=(F-6)/8 = 12step 130397: a=(F-6)/8 = 19step 408804: a=(F-6)/8 = 30step 796585: a=(F-6)/8 = 46step 1665942: a=(F-6)/8 = 70step 3617855: a=(F-6)/8 = 106step 8003326: a=(F-6)/8 = 160step 17793987: a=(F-6)/8 = 241step 56650048: a=(F-6)/8 = 363step 149617813: a=(F-6)/8 = 546step 272052284: a=(F-6)/8 = 820step 539058391: a=(F-6)/8 = 1231step 1580171984: a=(F-6)/8 = 1848step 2957517771: a=(F-6)/8 = 2773
F mod 16last 14
14617,1033e9log xstep 17103: F mod 16 = 14step 63004: F mod 16 = 6step 130397: F mod 16 = 14step 408804: F mod 16 = 6step 796585: F mod 16 = 6step 1665942: F mod 16 = 6step 3617855: F mod 16 = 6step 8003326: F mod 16 = 6step 17793987: F mod 16 = 14step 56650048: F mod 16 = 14step 149617813: F mod 16 = 6step 272052284: F mod 16 = 6step 539058391: F mod 16 = 14step 1580171984: F mod 16 = 6step 2957517771: F mod 16 = 14
Template comparison1RB0LF_0RC---_1RD0RA_1LE0RC_0LA0LE_1LE1LB.v our: partly applies · the nearest solved proof, what carries over, and the transitions that differ
01
A1RB1RC
B0LC1RE
C1RA0LD
D1LB0RD
E0RF---
F0RA0RF
file
machines/1RB0LF_0RC---_1RD0RA_1LE0RC_0LA0LE_1LE1LB/1RB0LF_0RC---_1RD0RA_1LE0RC_0LA0LE_1LE1LB.v ⚠ not at pin
module
our kill #8 (sync bouncer counter)
machine
1RB0LF_0RC---_1RD0RA_1LE0RC_0LA0LE_1LE1LB (11 transitions apart)
diff
different table (no holdout or kill within 5 transitions); #8's digits are fixed 7-cell marks, here digits are 0^2/0^3 gaps between unary blocks that keep changing length
note
Read #8's .v: its token words P=[0;1] and PZ=[0;1;0] are exactly what this machine's left sweep writes (Z gives 01, O2 gives 010), and its list-induction sweep (Csweep) and return transducer (retf) fit our encode/decode sweeps. Not reusable: #8's 15-bit tail and interval INV. Here safety needs a pattern invariant over gaps and block lengths mod 8.
Proof strategy & riskshow the formal proof will go · 3 risks to watch

Prove the 7 tape rules and the 10 block rules (induction on block lengths); replay the first 11,118 steps; then find a regular invariant over gaps x (block length mod 8) that the block rules preserve and that excludes the three halting cases. Learn it from the run, then check closure exhaustively before proof.md.

  • ▲The refill map a -> ceil(3a/2)+1 is Collatz-like. If safety needs more than residues mod 8 (only fuzz evidence so far), this becomes a cryptid.
  • ▲3-gap windows are not closed under the rules, so the invariant needs longer context or an automaton, and it must cover the frozen early prefix.
  • ▲Formal size: about 17 rule lemmas plus an invariant check in Rocq.
Stats & provenance4·109 steps simulated · 151,420 cells · the status in full · files
simulated
4·109 steps
tape
151,420 cells · 151,291 nonzeros
growth
sqrt(steps): 151,420 cells at 4e9; block map run 2e7 cycles = about 2.9e14 steps, 4e7 cells
status now
Wave 6 stage 2: no invariant yet; the obstacle is now specific. Each block is a six-state transducer (A-F = (gap, parity)). Halting in the body needs an R to reach a fresh gap-1 odd block F. In the real run every F has a gap-3 right neighbour and every E a gap-2 one, and a gap-3 block never sends R, so F is safe while this pairing holds. It breaks only if a later phase defect catches the F before F's first N: the small-refill halts of stage 1 are exactly that. Refill fuzz with refills >= 24+r never breaks it. Window languages (k = 7, 10) neither close nor fail; the invariant needs a non-local timing comparison between each F and the next defect. (status.json, 2026-10-14)
observer's note
Mechanism found and every cycle from step 11,118 to 4e9 is covered by 10 validated block rules; the non-halting argument (an invariant over gaps x lengths mod 8) is not found yet. The Collatz-like refill map looks halting-independent (fuzz).
files
observe.json · notes.md · status.json

Proof & checks

No proof work yet.

Files

machines/<tm>/: 6 entries · raw notes, status, scripts, images

namesizechanged
notes.md ↓17 KB2026-10-14 16:45
status.json ↓3.6 KB2026-10-14 17:13
observe.json ↓12 KB2026-10-14 15:35
decisions/1 item2026-10-14 17:13
img/5 items2026-10-14 15:31
work/50 items2026-10-14 16:44
status.json in full
{
 "tm": "1RB1RC_0LC1RE_1RA0LD_1LB0RD_0RF---_0RA0RF",
 "label": "W6-8",
 "status": "STUCK",
 "stage": "deepen",
 "updated": "2026-10-14",
 "holdout_line_740": 9,
 "confidence": "med",
 "reason": "Wave 6 stage 2: no invariant yet; the obstacle is now specific. Each block is a six-state transducer (A-F = (gap, parity)). Halting in the body needs an R to reach a fresh gap-1 odd block F. In the real run every F has a gap-3 right neighbour and every E a gap-2 one, and a gap-3 block never sends R, so F is safe while this pairing holds. It breaks only if a later phase defect catches the F before F's first N: the small-refill halts of stage 1 are exactly that. Refill fuzz with refills >= 24+r never breaks it. Window languages (k = 7, 10) neither close nor fail; the invariant needs a non-local timing comparison between each F and the next defect.",
 "siblings": [],
 "eqv_reductions": [
  "1LB0RA_0LC1RE_1RD0LA_1RB1RC_0RF---_0RD0RF (busycoq Eqv_v2.v TM238)",
  "1RB0LD_1RC1RA_0LA1RE_1LC0RD_0RF---_0RB0RF (busycoq Eqv_v2.v TM536)"
 ],
 "claim_note": "Sheet note by nerdyjoe (Results row 24: 'Code. Binary counting + bouncing') is an analysis note with no status; no Discord mention. Drop if Dennis says it is nerdyjoe's.",
 "next_goal": "If funded: a right-to-left automaton over the six-state chain that carries, for each pending F or live wave, the digits up to the next defect (cut off where the defect provably arrives late), with size classes only in the last 2-3 blocks; check closure with a winfix4-style product search.",
 "confidence_note": "Medium-high that it never halts (exact rules, no halt to 4e9 steps, robust to fuel and block fuzz, refills >= 24+r never break the F pairing). Low that one more 2 h stage closes a proof: the needed invariant is a timing property between travelling defects, not a local one, and a Coq proof would follow as a separate multi-stage effort.",
 "wave6_stage1": {
  "left_edge": "Lodd: y odd -> new block 3, 0^2, y+3; Leven: y even -> new block 3, 0^3, y (work/macro2.py, work/vleft.py)",
  "small_refill": "refill fuel 2/4/6 halts in 199/200 runs; >= 8+r: 0/200 (work/fuzz4.py)",
  "transducer": "block = (gap, parity); N = +3, R = carry; steady cycle (3,6)(3,1)(2,4)(2,7) mod 8; phase-consistent pairs 98% (work/cons.py)",
  "windows": "least k-window closed languages k=2..5, D=2..3, T=12/16 all contain halting words (work/winfix2.py, winfix4.py, winfix4o.py)",
  "race": "2-11 insertions per epoch; carry reach <= 24 blocks from the right end; 10 -> 97 blocks over 27 epochs (work/race.py)",
  "cryptid": "no: halting does not depend on the a -> ceil(3a/2)+1 orbit, only on refills >= 8 and the counter's local structure"
 },
 "wave6_stage2": {
  "transducer": "A=(3,e) B=(3,o) C=(2,e) D=(2,o) E=(1,e) F=(1,o); N: A<->B, C<->D, E<->F; R: A ins D, B->C sends N, C->A ins F, D->A sends R, E->A sends N, F halts",
  "pairing": "real run: gap-1 pairs only (F,A),(F,B),(E,C),(E,D) (work/s2_p12.py); refills 24-56+r: never broken, 0 halts; 16-48+r: (E,F) appears, 0 halts; 2/4/6: (F,C),(F,D) and halts (work/s2_p12b.py)",
  "waves": "lifetimes 1/24/192/>200 cycles, depths 2/5/8/11/13 (about 3 blocks and x8 time per level); <= 2 clusters right of the prefix; particles >= 9 blocks apart (work/s2_wave.py, s2_wave2.py, s2_particles.py)",
  "windows": "winfix4 k=7 (730k windows, 67 rounds) and k=10 (2.17M windows, 22 rounds), D=2 T=16: no bad word, no closure; stopped",
  "cryptid": "no: safety needs refills >= 24+r (real >= 62) and the defect-timing property, not the a -> ceil(3a/2)+1 orbit"
 },
 "parked": "Dennis 2026-10-14: park (needs a non-local timing invariant)"
}
observe.json contract (tools/README-card.md):
1 contract warning
  • template file not in the pinned tree: machines/1RB0LF_0RC---_1RD0RA_1LE0RC_0LA0LE_1LE1LB/1RB0LF_0RC---_1RD0RA_1LE0RC_0LA0LE_1LE1LB.v