A Tanner code on the squared coset graph — the empirical code ceiling of the intermediate-growth host, now that N-034 rules out an expander code on the graph itself
RESOLVED 2026-09-28, before the build, by the owner's decision (option (a) of the last section): the intermediate-growth cell hosts no code with an expander guarantee. On the coset graph (N-034), on its powers (the squared and cubed graphs, zero unique-neighbour expansion from s = 8 with or without their double edges), and on every Cayley graph of its finite quotients on non-involution generators (absorbing Klein-four subgroups from s = 4; ⟨g²⟩ inside the Frattini subgroup of index ≥ 8 on every 2-group quotient, so no generating set escapes). Three routes, one mechanism — the short relations of a 2-group — stated as the general criterion in N-036's addendum. The decoder was built (R23_ising_barrier/tanner/, the lab chat) and never run on the host; its provisional prediction was never sealed and is not scored. What was to be measured had no theory to stand beside: Zémor's spectral condition fails on host and control alike. The question the probe asked is answered at the level of the guarantee, and the arc that began at the empty cell ends here as a theorem-shaped closure rather than a number. Details in "Obstruction found before the build" below.
no run lists this probe in builds_on:
The question. N-034 shows no Tanner code on the ⟨b,c,d⟩-coset graph Q_n can have an expander-code guarantee: its edges are disjoint (ad)⁴ squares, and squares make unique-neighbour expansion identically zero. Squaring the graph removes that obstruction — a square becomes two distance-2 relations, and a local code of length 12 with distance 3 exists — while the host's expansion profile is inherited. So: on the squared graph, does a Tanner code on the host decode as well as the same construction on a random graph, a constant factor worse, or not at all? No theorem covers either side; this is a measurement.
Construction (both graphs identically). G = the level-4 coset graph Q₄ (N = 1024, bipartite) or the random (4,4)-biregular bipartite graph R23_ising_barrier/rb4_1024.edges. G² = the multigraph of length-2 walks with the return walk removed: 12-regular, and it splits into two components (one per colour class), each on 512 vertices; take the left component. Bits = its edges (3072; a double edge is two bits). On Q₄ each vertex has two double edges (the opposite corners of its two squares) — keep them, they are part of the host. Local code C₀ = the [12, 8, 3] shortened Hamming code, one copy per vertex on its 12 incident bits in a fixed edge order (state the order; it changes nothing for a random graph and might for the host — record both orders as an unsealed observation). Parity-check matrix H: 512 × 4 = 2048 rows, 3072 columns. Rate ≥ 1/3; report the actual dimension by rank.
Statistics, to be sealed as run 042 before the host is decoded. 1. Decoding radius t₉₉: the largest t at which min-sum belief propagation on H (50 iterations, ties broken by index) corrects ≥ 99% of 1,000 uniformly random error patterns of weight t, on a sweep t = 10, 20, …, 400. Ratio t₉₉(host)/t₉₉(random). 2. Minimum-distance estimate d̂: the smallest codeword weight found by 10⁴ rounds of the information-set heuristic (random column permutation, Gaussian elimination, take the minimum weight among the resulting generator rows and their pairwise sums). An upper bound on d, same budget both graphs. Ratio d̂(host)/d̂(random). 3. Control: the random graph's t₉₉ and d̂ must agree between two independent random graphs (seeds 1 and 2) to within 15%, or the instrument is too noisy to score a ratio.
Provisional — not sealed, not scored
Provisional prediction, NOT sealed. t₉₉ ratio ∈ [0.5, 0.9] and d̂ ratio ∈ [0.5, 0.9] — the host is a constant factor worse, tracking its edge-expansion ratio of 0.78, not collapsing. The falsifier will be a ratio ≤ 0.25 on either statistic (the square structure survives squaring in some form the decoder feels) — or a ratio ≥ 1.1 on both (the host's structure helps, which would be the more interesting outcome and the one the relators' regularity makes possible: a code with symmetries has structured low-weight words, and a decoder can be worse or better on them).
Where it runs. This is decoder compute, not eigenvectors: thousands of BP decodings of a 3072-bit code and 10⁴ Gaussian eliminations, embarrassingly parallel, small memory. BernoullisBook (the 2017 MacBook Pro compute node, reached from the M5 by SSH) is the right machine; the M5 stays on runs 039 and 040. Level 5 (2¹⁹-vertex component, 3·2²⁰ bits) only if level 4 gives a ratio worth extending.
---
Obstruction found before the build (2026-09-28, this thread; R23_ising_barrier/p036_g2check.py, results in p036_g2check.json, graphs in p036/). N-036 ends by saying the squared graph should be checked against the ⟨g²⟩ route before its code is built. It was, with the builder that now exists, and the premise of this probe — squaring removes the obstruction — is false. The unique-neighbour minimum u(s), by uniq.c at run 041's schedule (best of 20 seeds), on the host and on its random control:
| graph | N | degree | parallel pairs | λ₂/d | u(4) | u(8) | u(16) | u(32) | u(64) | u(128) |
|---|---|---|---|---|---|---|---|---|---|---|
| G² of Q₄, double edges kept (this probe's host) | 512 | 12 | 512 | 0.805 | 8 | 0 | 0 | 0 | 0 | 0 |
| G² of Q₄, parallel edges collapsed | 512 | 10 | — | 0.824 | 10 | 0 | 0 | 0 | 0 | 0 |
G² of rb4_1024 (the control) | 512 | 12 | 27 | 0.660 | 16 | 21 | 27 | 31 | 16 | 0 |
| G³ of Q₄ (length-3 walks, bipartite, side 0) | 1024 | 36 | 4096 | 0.683 | — | 0 | 0 | 0 | 0 | 0 (and u(256) = 0) |
The zero is not the double edges: collapsing them leaves it. It is inherited by every power of Q₄, because a power of a Schreier graph is the Schreier graph of the same group on longer words, and the subgroup structure that N-036 names comes along. On the control the profile is the ordinary one, positive until s = N/4 where no 12-regular graph can have unique neighbours.
The same check on Grigorchuk's own Cayley graphs, non-involution generators (the candidate hosts N-036 pointed at — a generating set whose squares generate the whole group):
| generating set of G/St(4) | Γ | degree | orders | ⟨g²⟩ | (index) | u(N/256), u(N/64), u(N/16), u(N/8) | random control, same N and degree | |||
|---|---|---|---|---|---|---|---|---|---|---|
| {ab, ac, ad} | 4096 | 6 | 8, 8, 4 | 512 (8) | 0, 0, 0, 0 | 44, 119, 218, 173 | ||||
| {ab, ac} | 2048 | 4 | 8, 8 | 64 (32) | 0, 0, 0, 0 | 24, 61, 110, 93 (at N = 4096) | ||||
| {ab, abc} | 2048 | 4 | 8, 4 | 64 (32) | 0, 0, 2, 2 (anneal; exact 0 on cosets) |
No generating set tried escapes, and the reason is sharper than N-036's. The general criterion. Let Γ be a finite group with symmetric generating set S⁺ = S ∪ S⁻¹ and let H ≤ Γ. Call H absorbing if every g ∈ S⁺ \ H has a partner h ∈ S⁺, h ≠ g⁻¹, with gh ∈ H. Then every union of left cosets of H has zero unique neighbours: a vertex sg outside xH (s ∈ xH) has the second neighbour sgh ∈ xH. N-036's route is the case h = g (H = ⟨g²⟩); N-034's squares are the case (ad)² for the coset graph. The smallest absorbing subgroups found by search over subgroups generated by at most two products gh: {ab, ac, ad} — H = ⟨ab(ac)⁻¹, (ad)²⟩, order 4, a Klein four-group; {ab, ac} — ⟨ab(ac)⁻¹, (ab)⁻¹ac⟩, order 4; {ab, abc} — order 8. Exact counts on these H: 0, 0, 0. So on the 6-regular Cayley graph every set size that is a multiple of 4 has zero unique neighbours, from s = 4 up, while a random 6-regular graph has 44 at s = 16. And the ⟨g²⟩ route cannot be escaped on this host by any choice of generators: G/St(n) is a finite 2-group, ⟨g² : g ∈ S⟩ ≤ Γ² = Φ(Γ) (the Frattini subgroup — Burnside basis theorem), of index 2^{d(Γ)} ≥ 8 since a, b, c are needed; the computed index for {ab, ac, ad} is exactly 8.
What this does and does not say about the code. Unique-neighbour expansion is the hypothesis of the Sipser–Spielman decoding guarantee for bit–check graphs; for the Tanner code on the edges of G² the guarantee is Zémor's spectral one, λ₂/d < δ₀ = 3/12, and that fails on the host and on the control (0.805 and 0.660 against 0.25). So this probe was never a guarantee-against-guarantee comparison; it was a measurement, as it said. What the check removes is its provisional prediction's basis: "a constant factor worse, tracking the edge-expansion ratio 0.78" assumed the host and the control differ on the relevant quantity by a factor, and on the one quantity the arc has been tracking they differ by zero against positive at every size below N/4. The decoder would measure the decoder.
Decision for the owner (not taken here). (a) Resolve the probe with this section as its answer: the intermediate-growth cell hosts no code with an expander guarantee — on the coset graph (N-034), on its powers (this section), and on every Cayley graph of its quotients on non-involution generators (Frattini bound plus absorbing Klein-four subgroups) — three routes, one mechanism, the short relations of a 2-group. (b) Run the decoder anyway as a pure measurement with a seal re-derived from the spectral gaps, (1 − 0.805)/(1 − 0.660) = 0.57, or from the explicit codeword structures the absorbing subgroups give. (c) Change the host to a group whose Cayley graphs have no small absorbing subgroup, which is no longer a question about the intermediate-growth host. The lab chat's tanner/p036.py gate reads lab/runs/042-*.md and that file is run 042 (valley–wall), sealed and scored — the gate is misdirected and the host must not be decoded through it; the control (two random graphs, 15 % agreement) may run, it is instrument calibration either way.
Back-links (2026-09-29)
Dated pointers added by the codifier from lab/backlinks.py; nothing above this heading was changed.
- Run 036 — confirmed (2026-09-27, measured).
lab/runs/036-expansion-profile-coset-graph.md: CONFIRMED — ρ_Φ = 104/134 = 0.776. - Run 041 — unanticipated (2026-09-28, measured).
lab/runs/041-unique-neighbour-expansion.md: Clause 1 withdrawn (control band miscalibrated; - Run 043 — falsified (2026-09-28, measured).
lab/runs/043-growth-axis-on-one-tree.md: FALSIFIED — the relator clause's falsifier fires: Basilica's unique-neighbour minimum at N/8 is 1 of its control's 101 at best-of-20 and 0 of 94 at best-of-40, u/u_random ≤ 0.10, so the square obstruction of N-034 is not specific to the Klein-four contraction;
141 source lines, no addenda.