/machines/1RB0RF_1RC1RF_1LD0RE_---0LE_1LA0LE_0RA0LC/notes.md · raw

1RB0RF_1RC1RF_1LD0RE_---0LE_1LA0LE_0RA0LC (pool #30)

Status: KILLED_NONHALT (2026-10-10; see ## Kill at the bottom). Not a cryptid candidate. Class guess (agent / Dennis): Bell eats counter, partial eat with residue (sibling of #10) / - Spreadsheet / Discord: results.csv row 1053, class "Bell eats counter", status/notes/sources/done-by blank; listed in classifications.csv only. Not in data/discord/*.txt. Byte-exact in data/holdouts/2026-10-07_778.txt (line 748). Forensics: eqv group size 1 (no known twin). Viewer: https://bbchallenge.org/1RB0RF_1RC1RF_1LD0RE_---0LE_1LA0LE_0RA0LC

Observation

Micro-automaton (derived by hand from the table, checked by the rules below)

Moving right (F split by predecessor): A: 0->1,B / 1->0,Fa. B: 0->1,C / 1->Fb (kept). Fa: 0->A / 1: (q-1,q):=(1,0), D at q-2. Fb: 0->A / 1->Fb (kept; this is where C1=0RE differs from #10, which goes to B). C: 0: write 1, turn, D at q-1. C: 1 then 0: (q,q+1):=(1,1), Fb at q+2. C: 1 then 1: (q-1,q,q+1):=(1,0,0), D at q-2. Moving left: D: 1->0,E / 0: halt. E: 1->0,E. E on 0 at p: p-1=1 -> (p-1,p):=(1,0), D at p-2; p-1=0 -> (p-1,p):=(1,1), Fb at p+1 (turn). So the only halts are D reading 0: (a) Fa turning when the cell two to the left is 0 (pattern F0,A1,F1 in a right pass), (b) E finding 010. The left sweep of a bounce turns at the marker and never enters (110)^a; that is why a is inert until b runs out.

Rules (all validated: scripts/val_rules.py, seeds 1 and 2, data_val_rules_{1,2}.json)

Clean counter words: tail_0..3 = '', 0001, 000010001, 000110001; D(k,s,v) = (v0 01 001000)(v1 01 001000)...(v_{k-1} 01) tail_s (LSB first) holds the value n = 2^(k+2)-4 + s*2^k + v; D(1..3) = 1, 010001, 110001; D(k,4,0) = D(k+1,0,0) as words. E(0,s,0) = tail_s, E(j,s,u) = 001000 D(j,s,u).

rule from -> to cases validated
R restart L(k, 000 Y) -> K(1, k+1, Y) in 3k+7 steps any Y not starting 011 (random words + orbit residues), k <= 3000 600/600
B bounce K(a,b+1,X) -> K(a+1, b+d, inc X) in 8b+c(X) steps b>=1, X any of 9,730 orbit hub words; inc X, d in {0,1}, c(X) independent of a,b 600/600 (x3 (a,b) each)
W clean count K(a,b+1,D(n)) -> K(a+1, b+[n=3], D(n+1)) n up to 1e5 600/600
E2 odd eat K(a,1, 101 E(j,s,u)) -> L(a, 000 11 E(j,s,u+1)) j<=9, all s,u (overflow u+1=2^j -> s+1) 600/600
E1 even eat K(a,1, (001)^i 000 Y) -> K(a+2, i, Y) i<=40, Y random/orbit/clean 600/600
E0 empty K(a,1, eps) -> L(a+1, 0001) a<=3000 200/200

Clean epoch (residue 0001, e.g. epochs N=16, 32): K(1,N,D(1)) counts D(1..N+1); at a=N+1 the clean counter is eaten: odd value -> E2 (only the LSB is eaten, the rest +1 becomes the next residue 11 E(...)); even value -> E1 drops the LSB digit (value halves), gives b=2, one bounce adds 1, repeat (cascade) until odd or empty. Template (FractalBEC tm10) by contrast eats the whole counter every epoch: in the same hub notation its left records are L(k,0001) with k = 1,5,13,29,61 (k -> 2k+3), and its counter digits are 2 cells, not 3 + a 4-stage tail.

Residue epochs (not yet exact)

Non-halting argument (sketch, not proved)

Every regime from the blank tape is R / B / W / E0 / E1 / E2 plus the digestion phase. Halting needs an eat at an unsafe counter state. Unsafe states occur only while the residue is digested, which takes O(len X0) bounces, and len X0 = O(log N) while the epoch has N bounces and N grows every epoch. Missing: (1) an exact rule set for the digestion and for non-clean counters (inc on words with extra 001 groups), (2) a proved bound "digestion time < N" on the reachable residues, i.e. an invariant like #10's Lemma N but with large slack (observed max unsafe j / N = 0.52 at N=48, otherwise < 0.3).

Cryptid check (ground rule 6)

Branching is on low bits of the counter (E2 vs E1 cascade c -> c/2+1), the epoch size grows additively, nothing is x3/2 or Collatz-like in the halting condition. The open condition is a size inequality with large slack, not a parity coincidence. Not a cryptid candidate.

Template check

verify/FractalBEC.v line 269, tm10 = 1LB0LF_1LC1LF_1RD1LB_---0RE_1RA0RE_0LA0RC; mirrored = 1RB0RF_1RC1RF_1LD1RB_---0LE_1LA0LE_0RA0LC, only C1 differs (1RB vs our 0RE). RInc (marker bounce) = our rule B on the block side: same. LInc (counter +1, 2-cell digits d1=[1;0]) and Ov/P0 (the whole counter is eaten and expanded fractally, f(i+1)=2f(i)+2): do not carry over (our counter has 3-cell digits + a 4-stage tail; our eat is partial, E1/E2). Verdict: partly. Closer in spirit: #10 (C1=1RA), which has the same hub, a different counter encoding (bit0 + 3-cell digits, inert/pending groups) and is STUCK on its Lemma X.

Checkpoint A (Dennis)

Questions in observe.json -> checkpoint_questions. decision.json: the call on proof work.

Files

scripts/common.py (builders, parsers, D/E words, orbit events), scripts/val_rules.py, scripts/scan_eats.py, scripts/plot_epoch.py; images in img/.

Decision (2026-10-10, auto-applied)

Question: Fund one deepen stage on #30 (exact digestion rules, abstract epoch map checked against the TM, and a proof idea for 'eat after digestion'), or park it as STUCK next to #10? Answer: deepen (One deepen stage (about 2 h)). auto-applied: Claude's recommendation, under Dennis's standing instruction 'do your recommendations and continuously orchestrate' (2026-10-10, while he was at lunch). Override any time.

Funded stage (2026-10-10, deepen)

Result: STUCK at the pre-agreed exit. The size invariant ("the eat comes after the digestion") is not proved, so the stage stops with the reduced lemma below. Not a cryptid candidate. #10's stop rule fired because its safety needs exact equations such as P = 2^B. Here the open condition is a size bound with slack that grows like sqrt(N). The worst case also has an exact closed form: it doubles every 2 digits.

Notation

New exact rules (scripts/fs_val_rules.py, seeds 1 and 2, data/fs_val_rules_{1,2}.json)

A bounce is one hub-to-hub run. Rule B (validated at observe) makes it independent of a and b.

rule statement validated
GI inc on G is a binary +1 with LSB first. A 0-digit becomes 1. A 1-digit becomes 0 and carries into the rest after z. The tails step '' -> 1 -> 010001 -> 110001 -> 001 and the last step absorbs. The top-level word's absorption goes into the hub (b stays the same); a carry's absorption appends one 001 to the block in front of it. G is closed under inc 1200/1200
D1 '11' a V -> '01' V, absorbed (b stays the same) 800/800
D2 '01' V -> '11' V 800/800
D3 '11' z V -> '00' V, absorbed (V nonempty) 792/792
D4 '00' V -> '10' V 770/770
D5 '10' c z R -> '01' c' z inc(R), for an a-block c. c' is c plus the 001 that inc(R) absorbs, if any 1200/1200
D6 (shape only) '10' (b-block) z R -> a^m z Y in one bounce. Y is a G word (105), an O2 word (1042) or a deeper nest (53) 1200/1200 shape; no closed rule
E2g K(a,1, 101 a^e [z R]) -> L(a, 000 11 a^(e+d') z R') with (R',d') = inc(R). This generalizes E2 to any first-block exponent and any G rest 1200/1200
E1g K(a,1, a^(e+1) z R) -> K(a+2, e+1, R) for any G word R 1200/1200
tail eat K(a,1,110001) -> K(a+1,1,001) orbit: 2/2

How digestion runs. - D1/D3 eat the residue one chunk every 2 bounces. Only 1 b is used per chunk, because the hub absorbs one 011. - At an a-block, D5 adds 1 to the rest and the eating goes on. - At the first b-block, D6 fires. - The right sweep turns 10 101 (001)^e 000 into 11 100 (011)^(e+1). This builds a sub-hub 1 (110) 0 (011)^(e+1) C> R. - The sub-hub runs a whole sub-epoch inside this one bounce. Its sub-eat then goes back through the main word and leaves a^m z Y. - After D6 the top block toggles, so Y is incremented once every 2 main bounces. Its absorptions go into a^m. These are the O2 rules again, one level down and at half speed. - The same thing repeats at every D6 below that. The counter is fractal. This nesting is why digestion takes about 2^(k/2) bounces.

Orbit to 1e11 steps

Exhaustive digestion (scripts/fs_digest.c, scripts/fs_analyze.py gen-clean; data/fs_digest_clean_k1-12.txt.gz)

Unsafe eats (observe scan, now identified)

Reduced lemma (open)

Lemma D. Take an E2 eat K(N-1, 1, b a^e0 z W) on the orbit. Then digestion from K(1, N, '11' a^(e0+d) z inc(W)) returns to G without halting after β ≤ N - 2 b-steps.

Together with GI, E1g, E2g, E0 and R (all exact and closed over G), Lemma D gives non-halting. It needs three pieces: - (D-a) A closed rule for D6, and for inc on nested words a^m z P V'. The sub-epoch inside one bounce and its eat through the outer word are the missing piece. The D6 outcome census does not close at depth 1 (53/1200 deeper nests). - (D-b) β ≤ 22.5·2^(k/2) + (e0 - 1) + (inner-exponent term), by induction on nesting depth. The exact doubling law above suggests that such an induction exists. - (D-c) A size bound: N ≳ 2^(k+3) at E2 eats, plus exponents of size o(sqrt N). On the orbit the exponents are at most 34 while N reaches 12,668.

Still open / next

Decision (2026-10-10, auto-applied, round 3)

Question: Fund one more stage on #30's D6 nesting step (exact recursive rule plus a proof of the doubling law for digestion), or park it as STUCK? Answer: nest (One stage on D6 / nested digestion (about 2 h)). auto-applied: Claude's recommendation, under Dennis's standing instruction 'do your recommendations and continuously orchestrate' (2026-10-10, while he was away). Override any time.

Funded stage (2026-10-10, nest)

Result: D6 closes into an exact recursive rule, and the rule set is now closed. A rules-only model reproduces every TM epoch to 1e11 steps. Lemma D (the eat comes after the digestion) now has a concrete proof plan, and every link in it is checked on 8,000-12,000 model epochs. Confidence is high for the mechanism and the non-halting argument. proof.md still has to write out lemmas V, K, X and fix the constants. Not a cryptid candidate.

D6 exactly (scripts/nest_model.py, scripts/nest_val.py)

Nested words and inc on them

check passed
D6 1,200/1,200
HT/HC (1-4 blocks in front of a random non-G inner word) 1,200/1,200
D1, D2, D3, D4 with V outside G 1,200/1,200 each
T 160/160
tail eats 80/80
whole epochs, model vs TM, from random residues 11 a^x z W with N in 30..400 387/387
hub words sampled from the model orbit 1,200/1,200

The model is the TM (scripts/nest_orbit.py, data/nest_orbit_517.json)

Cost recursion and the doubling law (scripts/nest_cost.py)

Long model run (scripts/nest_long.py, data/nest_long.txt, figure img/nest_beta_sqrtN.png)

Still open (for proof.md)

Files (nest stage)

scripts/nest_model.py (rules-only model, FAST counting), nest_val.py (TM validation), nest_orbit.py (model vs TM log), nest_ff_check.py, nest_cost.py (cost recursion), nest_mass.py, nest_excess.py, nest_bound.py (proof-plan checks), nest_ctx.py (left-context fact), nest_long.py + nest_plot.py (long model run, figure). Data in data/nest_*.

Informal proof stage (2026-10-10)

Checkpoint B, skeptic round 1 (2026-10-10)

Kill

Same table, other starts (added 2026-10-11)