Our agent harnesses are built out of pattern cascades: small authored panels of guarded rules. Joe's June ruling says the machine's expected-free-energy score, G, must be computed over cascades as policies — not as one number per pattern, summed. A September ruling (the "Alexander" ruling) says a long cascade of good patterns must not lose merely for being long. Those rulings can be reconciled two ways. This post computes one cascade both ways, side by side, so the choice is visible instead of ruled.
The idiom comes from a 1984 game, ChipWits: you cannot drive the robot; you wire a panel of chips and watch it meet the room. Each chip is a pattern — a guarded rule with a THEN; each arrow is authored wiring; every observation chip carries two wires (true/false). The panel below is the inbox-zero board that runs on this machine, in its deployed ask-first wiring and an act-first variant — same chips, same target, different composition:
The deployed panel introduces the shape; the numbers below are computed
on a deliberately smaller cascade whose every transition and
observation is fully specified — no invented distributions — by
codex-26 (futon2 holes/labs/wm-contract/runs/cascade-worked-example-2026-09-15/,
executable compute.py alongside; these are floating-point
computations, not a Lean proof and not measured War Machine outcomes).
Four to six patterns over one shared bit x (initially 0): SET writes x=1; FLIP writes x=1−x; SEAL requires both SET and FLIP done; PUBLISH requires SEAL; ARCHIVE, VERIFY extend the good run to six. Crucially, SET and FLIP are both enabled at the start and write the same x — overlapping scope, not independent patterns — so precedence decides everything:
| policy | precedence | observed x, first four |
|---|---|---|
| bad4 | SET, FLIP, SEAL, PUBLISH | 1, 0, 0, 0 |
| good4 | FLIP, SET, SEAL, PUBLISH | 1, 1, 1, 1 |
| good6 | FLIP, SET, SEAL, PUBLISH, ARCHIVE, VERIFY | 1, 1, 1, 1 |
Same nodes, same descent edges, different legal order — and the outcomes diverge. FLIP is beneficial first and harmful after SET: its quality cannot be read from any independent per-pattern scalar. That is the whole case for cascade-grain G, in one bit.
Each step observes (x, an independent fair coin). Preference: P(x=1)=0.99, coin fair. The coin is known-irrelevant noise, and it is the crux:
Horn B — the book G, exactly. Ambiguity includes the coin: ln 2 per step, forever, no matter how good the patterns. Risk is alignment: −ln 0.99 per good step, −ln 0.01 per bad step. Length touches G through ambiguity even at zero risk.
Horn A — Alexander all the way (illustrative, not a ruled formula). Both likelihood and preference are pushed onto the task outcome x alone — a well-specified pattern's observations are sharp under the model it attests, so a good cascade accumulates no ambiguity. Here this equals GB minus T ln 2 — an outcome projection, not the book G on the full alphabet, and not an adopted implementation. It illustrates the horn; it does not define it.
| policy | steps fired | G — Horn A (illustrative) | G — Horn B (book) |
|---|---|---|---|
| bad4 | 4 | 23.036 | 27.195 |
| good4 | 4 | 0.060 | 4.219 |
| good6 | 6 | 0.060 | 4.219 |
Read the table carefully. good6 ties good4 under both horns — because every policy is scored at the same T=6 and this model gives them identical per-step scored task outcomes. That tie is a property of this example, not a general "length is free when patterns are good" result: Horn A's per-step contribution at 0.99 alignment is a small positive term that accumulates with horizon, and exact zero requires the separate exact-alignment control (in the computation notes, not this table). What the horns genuinely differ on here: B includes an additional ln 2 per observation from the independent coin. The A illustration excludes that coin contribution; its alignment cost still accumulates with horizon at C(x=1)=0.99. Only the separate exact-alignment control has zero A at every horizon. Both horns agree on the composition gap bad4−good4 = 5 ln 99 ≈ 22.98 — the interaction term no per-pattern sum can produce.
Selection. With E=1, γ=1, F=0 (a policy prior, not an inferred posterior): P(bad4) ≈ 5.3×10⁻¹¹ under either horn — the softmax is blind to the common coin, exactly as the common-T discipline intends. The pending, unadopted fuel proposal (λ=0.25 per fired application, an arbitrary displayed exchange rate, not a ruling) then shifts good4 (0.622) over good6 (0.378). Note what is and is not established here: the harness charges fired chips today, but that does not establish that the selector includes fuel — "G is length-neutral, fuel prices length" is a proposed division displayed by this computation, not an adopted design.
What the old proxy would have said. A synthetic evaluation of the retained old-regime helpers (Gaussian entropy + one-step declared input — the current code, pinned, not a fabricated historical tick) gives −0.7497 for the same first-step projection: it cannot distinguish the orders at all. That is the failure Joe's June ruling named, measured.