Independent check of package D (agent twochain): Theorem P, identity (★), Theorem V, the symmetry reduction, and Theorems U and H on the family (2a′, 2b′, 2c′)
2026-09-28
Verdicts
| # | claim | verdict | one sentence |
|---|---|---|---|
| 1 | Theorem P, Corollaries P1–P3, the coupling, freedom (gauge) | CONFIRMED | Every chain sign, the A and B formulas, the profiles, the chain inequality, the slack sum, the parity rule and its converse, the coupling and the four-constant gauge were re-derived by hand. All of them hold exactly on 173 sampled solutions of three cells, and the tests fail under three deliberately wrong sign conventions. |
| 2 | Identity (★) | CONFIRMED | I re-derived it by hand. It holds as an exact identity of linear forms in the weights of (C) for every odd \(z'\) and every \(z_0 \equiv 2\) on five members (552 of 552), and both controls fail. It uses only the four bridgeheads and does not use the rods. |
| 3 | Theorem V, Steps 1–5 | CONFIRMED | Every line of Steps 1–5 was redone by hand with no gap, including the pinning for all four classes on the same plane \(n\) and the parity count. A finite enumeration (h475) verifies the pinning and parity paragraphs for both signs of \(E_x(0,-)-E_x(4,-)\). |
| 4 | Reduction of the other positions and axes | CONFIRMED WITH CORRECTION | The ‘reflection \(x \mapsto 4-x\)’ is not a symmetry of the lattice, but a half-turn does the same job, and in any case \(y\leftrightarrow z\) alone gives the other order. All 8 positions × 3 axes were tested by solver on (2,2,2), (2,2,6), (2,4,6) and (4,6,10): 96 of 96 UNSAT as predicted, with 96 SAT controls. |
| 5 | Theorem U on the family; Theorem H on the members with every extent ≥ 4 | CONFIRMED (as conditional on the record) | U follows from V, (C), (S1), Lemmas 2 and 3 and \(M'\). H on (4,6,10), (4,6,14), (6,8,10), (6,10,14) follows from U, Theorem 1′ and \(K_u\) within its recorded scope (extent ≥ 3 along the chain, ≥ 4 transversely, and P1 needs gcd ≤ 2), all of which these cells meet. The thin members are rightly left open for H. |
1. Reading, step by step (T1)
Everything below was recomputed by hand from the definitions. I did not rely on the report’s algebra.
§0 and Theorem P
- Chains as residue classes. A-plane \(n\) has \(2bc\) A-vertices, and on it \(y-z\equiv y+z\equiv -n \pmod 4\). So \(y-z \bmod 8\) takes two values, each with \(bc\) vertices. This is well defined because \(4b\) and \(4c\) are multiples of 8. A chain of \(\{0,1\}\) has step \((0,2,2)\) and \(\mathrm{lcm}(2b,2c)=bc\) A-vertices (gcd 2). The two chains are therefore exactly the two classes. CONFIRMED.
- (a) Chain signs. For each family I checked two things:
- the exponent is an integer on A;
- it is invariant under the chain’s step, and flips under the translation that exchanges the two classes.
The signs are well defined on the torus because \(a\), \(b\) and \(c\) are even (translation by \(4a\), \(4b\) or \(4c\) moves the exponent by an even integer). CONFIRMED.family exponent invariant under evaluates to {0,1} \((x+y-z)/4\) \((0,2,2)\) \(\pi\zeta\) {2,3} \((x+y+z)/4\) \((0,2,-2)\) \(\pi\) {0,2} \((y+z-x)/4\) — \(\pi\xi\) {1,3} — — \(\pi\) {0,3} \((z+x-y)/4\) — \(\pi\eta\) {1,2} — — \(\pi\) - Signs at B vertices. For \(\{0,1\}\) through \(w-d_0\) the exponent differs from that of \(\pi_B\zeta_B\) by \(z-1\), which is even. For \(\{2,3\}\) through \(w-d_2\) it differs from that of \(\pi_B\) by 1. The same pattern holds for \(\{0,2\}/\{1,3\}\) via \(w-d_0\), \(w-d_1\), and for \(\{0,3\}/\{1,2\}\). The A-planes are \(n'\mp1\) as stated, so \(E^B_k(n',\sigma)=\sigma e(n'-1)-e'(n'+1)\). CONFIRMED.
- Separability, P1, P2 and P3.
- P1: \(\pi\) alternates along a \(k\)-line.
- P2: every pair of values of two coordinates occurs at a vertex of \(S\). The profile algebra is correct, and the slacks sum to 2 identically.
- P3: the parity rule, and its converse (\(a\)’s sum to 1 and \(b\)’s to 0).
- Coupling. \(D^B(n')=2e_{01}(n'-1)=D^A(n'-1)\) and \(S^B(n')=-2e_{23}(n'+1)=-S^A(n'+1)\). CONFIRMED.
- Freedom (i). \(m_{23}(n+2)-m_{23}(n)=\Phi^B(n+1)-\Phi^A(n)\) is solvable round the circle if and only if the sums agree. The constants \(c^{A,B}_{p,q,r}\), \(\alpha\) and \(\beta\) then satisfy three sum conditions and four difference conditions, and these are consistent (one free constant remains). CONFIRMED.
- Freedom (ii). Each variable \(E_k(n,\sigma)\) lies in exactly one class. Within a class every pair of planes occurs, which makes a complete tripartite graph, so there are four constants.
- I checked the shift of A class \((+++)\) by \(c\) for the \(x\) and \(y\) components: B class \((+++)\) shifts by \(+c/2\) and the other three B classes by \(-c/2\), uniformly.
- Computed, not just argued: the kernel of weights → \((Y,Z)\) has dimension 8 on five members. Its image on the E-data of A has rank exactly 4, and every kernel vector shifts every class of A and of B uniformly.
Step 1
\(X(v)=X(v')=1\) with opposite \(\pi\) gives \(a^A_x(0,0)=1\), so \(q_A(0)=r_A(0)\). The chain \(r(0)\le\max r\le\min p\le\max p\le\min q\le q(0)\) collapses. CONFIRMED.
Step 2
- At \((x,y,0)\): \(\zeta=+\) and \(\eta=\xi\), so \(E_x(x,+)=E_z(0,\xi(x))\). This gives \(\kappa\) on planes \(x\equiv0\) and \(\lambda\) on \(x\equiv2\).
- At \((x,0,z)\): \(\eta=+\), so \(\zeta=\xi\) and \(E_y(0,\xi)=E_x(x,\xi)\). This gives \(\mu\) on \(x\equiv2\), and also \(E_y(0,+)=\kappa\), which (A7) uses.
- Class bookkeeping: \(\kappa\) is in \((+++)\), \(\lambda\) in \((-,-,+)\) and \(\mu\) in \((-,+,-)\). Every equation stays within one class.
CONFIRMED.
Step 3 (★)
- Bridgehead classes. Recomputed: \(\beta\) is \((+++)\) with \(\pi=+\); \(\beta'\) is \((+,-,-)\) with \(\pi=-\); \(\gamma\) is \((-,+,-)\) with \(\pi=+\); \(\gamma'\) is \((-,-,+)\) with \(\pi=+\).
- Collecting terms. The \(a\)-parts give \(p_B(1)-p_B(3)\). The E-parts give \(D^B_x(1)-S^B_x(3)+S^B_z(-1)-D^B_z(1)\), which by the coupling is \(D^A_x(0)+S^A_x(4)-2E^A_z(0,+)\). Substituting Step 2 gives (★).
- Gauge. \(E_x(0,-)\) and \(E_x(4,-)\) are both in class \((+,-,-)\), so their difference is gauge invariant.
- Consequence. The deduction of (V) from \(E_x(0,-)=E_x(4,-)\) (all other slacks 0) is correct.
CONFIRMED.
Step 4
- At \((n,y,z_0)\), class \((+,-,-)\): \(b_y=E_x(n,-)-E_z(z_0,-)=0\).
- At \((n,y_0,z)\): \(b_z=E_y(y_0,+)-E_x(n,-)=0\).
CONFIRMED.
Step 5
- (d) Exhaustive dichotomy. The fractions lie in \(\{0,\tfrac12,1\}\), and after Step 1 \(a_y\) depends on \(z\) only and \(a_z\) on \(y\) only, so Steps 4 and 5 between them cover every case.
- Facts (A3)–(A6). Each is correct in the class named, and each class meets every pair of planes it needs, including when an extent is 2.
- Fact (A7). Correct: both terms have size \(\tfrac12[a_y(n)=\tfrac12]\) (respectively \([a_z(n)=\tfrac12]\)), with independent signs. It is used correctly: \(u-u'\) and \(u+u'\) each lie in \(\{0,\pm1\}\) when the size is ½.
- (F1). Recomputed from the coupling, Step 2, (A4) and the hypothesis. Both lines are right: \(+\sigma/2\) and \(-1/2\).
- Pinning.
- The vertices \((1,y,z')\) and \((5,y',z')\) lie in one class \((+,\zeta,\zeta)\), and \((3,\cdot,z')\) and \((-1,\cdot,z')\) in \((-,-\zeta,\zeta)\).
- The four inclusions for \(z'\equiv1\) and \(z''\equiv3\) are right, as are the sums \(E^B_x(1,+)-E^B_x(-1,+)=\kappa-\lambda\) and \(E^B_x(1,-)+E^B_x(-1,-)=-\kappa-\lambda\).
- The \(y\)-version is right: \(\kappa-\mu\) and \(-\kappa-\mu\).
- Same plane \(n\): for each \(n\equiv0\), \(z'=n+1\equiv1\) and \(z''=n-1\equiv3\) are both B-planes, so \(u-u'=0\) and \(u+u'=0\) hold for the same \(n\). The same holds for \(y\).
- (e) Parity count.
- Recomputed: \(E^B_x(1,+)-E^B_z(z',+)=\tfrac14(1+\psi)\) and \(E^B_x(1,-)-E^B_z(z'+2,-)=\tfrac14(\psi-1)\). Both use \(\psi\) of the same plane \(n=z'+1\). Exactly one is \(\pm\tfrac12\), so \(r_B(z')\not\equiv r_B(z'+2)\).
- For \(q_B\): \(-\tfrac14(1+\varphi)\) and \(\tfrac14(1-\varphi)\).
- \(p_B(1)-p_B(3)=1\).
- The three spreads are three of the six non-negative slacks that sum to 2, so they cannot all be ≥ 1.
- (c) Gauge. No step fixes a gauge. Every relation is an equation in one fixed representation, and the final statements compare quantities in one class.
- (b) Thin members. With \(4a=8\) the B-planes 1, 3, 5 and 7 (= −1) are distinct, and A-planes 0 ≠ 4 and 2 ≠ 6 (= −2). Planes \(\equiv 2 \pmod 4\) exist along every axis. The report’s ‘\(4a\ge8\)’ should read ‘\(4a,4b,4c\ge8\)’, which holds on every member anyway.
CONFIRMED.
(f) What V uses and what U needs
V uses of the bridgeheads only \(Y(\beta)=Y(\beta')=1\) and \(Y(\gamma)=Y(\gamma')=0\) (solver, query W below). Theorem U needs nothing more: the unoriented cage gives these literals, V gives ‘B has no type \(x\)’, A has type \(x\) (the rods), and \(M'\) finishes.
§2, other positions (claim 4)
The reflection \(x\mapsto4-x\) is not a lattice symmetry: \((1,1,1)\mapsto(3,1,1)\), whose coordinate sum is 5, is not a B vertex, and the bond vectors are sent to \(-d_i\). See correction C1. The half-turn \((x,y,z)\mapsto(4-x,-y,z)\) works in its place:
- it fixes \(O\);
- it preserves A, B, the bond set and every type;
- it sends \(\beta\mapsto\gamma'\) and \(\beta'\mapsto\gamma\).
The other pieces are also right:
- \(y\leftrightarrow z\) preserves A, B and the bonds, and maps the cell to \((a,c,b)\), which is again a member.
- The inversion maps A-holes to B-holes.
- Coordinate permutations move the rod axis, and the permuted cell is a member.
- A-translations make all A-holes equivalent.
§3, Theorem U and H (claim 5)
- Theorem U. The note’s first section records \(K_u\)’s window certificates for extents at least 3, 4, 4. ‘Cells that are not cubic’ adds that the 3 is the extent along the chain, and that P1 reaches the whole slab only when the gcd of the two transverse extents is ≤ 2. check6 §3.2–3.3 says the same: the single cell-dependent point is P1 coverage, and every other step holds for any \(a\), \(b\), \(c\). Theorem 1′ (check6 §2) is the conditional ‘K_u for all three axes ⇒ (U ⇒ H)’.
- Theorem H on the thick members. On (4,6,10), (4,6,14), (6,8,10) and (6,10,14) every extent is ≥ 4 and every pair has gcd 2, so K_u holds as recorded for all three axes. U on these cells is claim 5, so H follows from the record as stated, with the dependencies the report names.
- Thin members. An extent of 2 is outside the recorded scope, and the report correctly leaves H open there.
- Caveat (not a gap in the report). On thin members Theorem U uses \(M'\) at extent 2. check6 confirmed \(M'\) ‘on every cell’ by the pull-back argument (its C2), but its computations were on cells with extents ≥ 4. I did not re-check \(M'\) at extent 2.
2. Computations (T2, T3)
My own code:
h470_lib.py: geometry, my own chain walk and hexagon enumeration, the (C) map, and an exact Fraction fit with verification.h471_sample.py: sampling throughh32_cap.run_batch.h472_checkP.py: the tests of Theorem P and Steps 1–5 on solutions.h473_linear.py: exact weight-space identities.h474_neg.py: negative controls.h475_step5enum.py: finite enumeration of Step 5.h476_positions.py: all positions by solver.
Imports are only icemix.lattice, a4_typemodel.TypeModel and h32_cap. My (T2) check agreed with TypeModel on every model. All scripts were run from scratch_h with the stated PYTHONPATH and TMPDIR, one process at a time.
| command | what it tested | verdict | wall |
|---|---|---|---|
h471 2,2,2 pat/odd/plain, 2,4,6 pat/odd/plain, 4,6,10 pat/odd/plain |
samples (odd = type model + some hexagon odd) | 11/26/16, 16/29/19, 11/20/16 distinct states | ≤ 1 s, except (4,6,10) odd 17 s, plain 31 s |
h472 on all nine files |
exact fit of (C); F a function of (plane, class sign, π); coupling; reconstruction of Y, Z; period 8; (a,b) values; integer profiles; chain inequality; slack sum 2; parity rule at every vertex; for pattern states also Step 1, Step 2, (★) in E-form and the conclusions of V | 164/164 pass (pattern: 38, all generic, \(E_x(0,-)=E_x(4,-)\), \(p_B(1)-p_B(3)=2\)) | 0.3–11 s |
h474 2,4,6 odd |
negative controls: wrong selector sign, wrong \(\pi_B\) | correct 0/5 fail; wrong conventions 5/5, 4/5, 5/5 fail | 1 s |
h473 2,2,2 2,2,6 2,4,6 2,6,10 4,6,10 |
converse of (C) ((C) forms solve one-hot + (T2)), exactly on a basis; (★) as an identity of linear forms, with two controls; gauge rank | converse HOLDS on all five; (★) 8/8, 72/72, 72/72, 200/200, 200/200 hold, controls fail on all; kernel dimension 8, rank on \(E^A\) = 4, shifts uniform on classes | 14 s |
h471 C spec, C = 2,2,2 / 2,2,6 / 2,4,6 / 4,6,10 |
special case without bridgeheads (rods, alternating A \(y\)-lines on \(z\equiv2\) planes and \(z\)-lines on \(y\equiv2\) planes) | SAT: 11, 14, 15, 4 distinct states | < 1 s each |
h472 … spec |
(A3)–(A7), Step 1, Step 2 on the special-case states | 44/44 pass; every state has \(E_x(0,-)=E_x(4,-)\) | < 3 s |
h471 C specH (same four cells) |
special case + \(E_x(0,-)\ne E_x(4,-)\), encoded as \(Y(0,2,2)=Y(4,2,2)\) | UNSAT on all four (query with no random assumptions) | < 1 s |
h475 2,2,2 4,2,2 2,2,4 |
Step 5’s pinning and parity paragraphs as a finite statement (gauge κ=λ=μ=τ=0; all E-data allowed by Step 2 and (A3)–(A7) with \(d=\mp1\); B E-data by coupling; keep those with every B b-value in {0,±½}) | survivors 16, 64, 64 for each sign of \(d\) (non-vacuous); pinning fails 0; parity conclusion fails 0 | 7 s |
h476 C, C = 2,2,2 / 2,2,6 / 2,4,6 / 4,6,10 |
3 axes × {A, B hole} × 2 orders × 2 holes: pattern (ctrl) and pattern + bridgeheads’ sublattice has the rod type; W = \(\gamma,\gamma'\) only ‘not \(y\)’ + B has \(x\); plane 1 not all \(y\); plane 3 not all \(z\) | all 24 ctrl SAT (witnesses re-checked) and all 24 Q UNSAT on each cell; W ctrl SAT, W UNSAT; P1y and P3z UNSAT; 0 deviations | 0.3, 0.7, 2.7, 205 s |
No query hit its cap, and no verdict is ‘no verdict’. Two aborted runs of h475 (no solver involved) were stopped by me, because I had under-counted the enumeration size on (2,2,6); see §5.
3. Corrections and gaps
- C1 (correction, claim 4). ‘\(x\mapsto 4-x\)’ is not a symmetry of the diamond lattice: it sends B to a set that is not a sublattice, and the bond vectors to their negatives. Replace it by the half-turn \((x,y,z)\mapsto(4-x,-y,z)\), which fixes \(O\), preserves A, B, the bonds and the types, and exchanges the two sides of the cage. The step can also be dropped: \(y\leftrightarrow z\) already produces the other order of types, and translations and the inversion give every hole of either sublattice. The conclusion is unaffected, and the solver confirms all 24 positions per cell.
- C2 (wording). ‘The torus only through the existence of the vertex classes on planes 1, 5, 3, −1 (so \(4a\ge8\))’ should also name the planes \(\equiv 2 \pmod 4\) along \(y\) and \(z\), and the distinctness of A-planes 0, 4 and 2, 6. All of these hold on every member.
- C3 (observation, Step 5). The sub-case \(E_x(0,-)\neq E_x(4,-)\) of the special case is UNSAT even without the bridgeheads on (2,2,2), (2,2,6), (2,4,6) and (4,6,10). The proof reaches its contradiction through (★), which needs the bridgeheads, so the hand argument is valid but not the shortest.
- The pinning and parity facts cannot be tested on solutions under this hypothesis. I checked them instead by the finite enumeration h475, which is non-vacuous and has 0 failures for both signs.
- The special case itself is realisable (44 states), and (A3)–(A7) hold on all of them.
- No gap was found in Theorem P, (★), Steps 1–5, or the derivations of Theorem U and of Theorem H on the thick members.
4. What I could not check
- \(K_u\)’s certificates, Theorem 1′’s steps and Theorem \(M'\): taken from the record (check6), not re-run.
- \(M'\) specifically at an extent of 2, which Theorem U on the thin members uses.
- (C) itself, which was taken as given. It was fitted exactly on all 208 sampled states, and its converse was verified exactly on five cells.
- The E-data reading of Step 5’s pinning on genuine solutions, because they do not exist (C3).
- h475 on members with an extent ≥ 6 along \(y\) or \(z\) (the enumeration is too large as written). Its algebra does not depend on the extent, and the hand reading covers it.
5. Rules
- One solver process at a time, every solve through
h32_cap, caps ≤ 290 s; no query was capped. - Pre-flight partly broken. The (4,6,10) position batch (205 s) was preceded by the smaller cells only, not by a timed (4,6,10) query. It stayed under its cap and under ten minutes.
h475was launched on (2,2,6) with the enumeration size misestimated (4 million, not 4,000). It was stopped by me after about 3 minutes and re-run on smaller cells. It involved no solver.- I used
sed -ito edit my own new scriptsh473andh474(a wrong expectation in the converse test, fixed and re-run). No existing file was modified. Nothing was committed and git was not touched. - No heredocs and no
python -. No writes to /tmp: outputs are in<repo>/.tmp, and the harness’s background-task logs went to its own directory. - H, ‘odd + all six directions’ or anything equivalent was not run. The odd samples ask only for ‘some hexagon odd’ in the type model.