Skip to content

Audit #6038 and prove a group-free four-call floor for diagonal pair targets (no new κ) - #6048

Open
JosieElliston wants to merge 6 commits into
CrocSwap:mainfrom
JosieElliston:s38-conjugate-pair-audit
Open

JosieElliston wants to merge 6 commits into
CrocSwap:mainfrom
JosieElliston:s38-conjugate-pair-audit

Conversation

@JosieElliston

@JosieElliston JosieElliston commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

Result

Independent audit of #6038, plus a stronger written theorem and a group-free finite certificate. No new κ.

Subject: Nick Petalas's PR #6038 (research/conjugate-pair-every-group), exact head 0cee0e104b68ce6f06bf84af03f46ac30680e64c. It claims that in #4089's rank-one-idempotent register model, diag([xy],[yx],[e],…,[e]) needs exactly four paid calls for every group, field and width r ≥ 2.

  1. Audit: no error found in Prove the conjugate-pair target needs four calls in every group (no new κ) #6038's PROOF.md. I checked every step: (F1)-(F3), the corner identities, Lemmas 1-3 and all eight length-3 patterns, including that no other subset takes the value xy or yx in xxy/yyx/xyy/yxx. The model binds to Research: any-register A5 conjugate 5-cycle four-call floor (no new kappa) #4089 over F2. Two remarks, neither affecting correctness. (F3)'s clause on x³/y³ is weaker than the truth: x³ is never xy or yx, since either would give y = x². And the xyx case does not need the corner split. An OpenAI Codex read-only review also found no error.
  2. Theorem S (new; PROOF.md). Fix distinct a, b ≠ e. If no label equals a or b, then diag([a],[b],[e],…,[e]) is not a product of at most three paid calls. This holds for every label set, every coincidence among products of labels, every field and every r ≥ 2. The proof uses only the coefficient equations at a, b and e, and it has two cases. Prove the conjugate-pair target needs four calls in every group (no new κ) #6038's length-3 step is the special case L = {x,y}, a = xy, b = yx. That case needs only (F1), not (F2)/(F3) or the eight-pattern analysis. A second Codex review of this proof found no error.
  3. Group-free certificate (verify.py, stdlib). Prove the conjugate-pair target needs four calls in every group (no new κ) #6038's finite check uses 26 coincidence keys from S3, S4, S5, Q8 and the free group. Here each subset word may take any class in {e, xy, yx, other} that the single equation allows. Each of the 90 equations is decided either by an S3/S4/S5 witness or by a sound cancellation rule. Joint consistency and the zero equations at other elements are dropped, so the relaxation covers every group at once. Two tiers are run: the full table, and a singleton tier that is exactly Theorem S's system. Neither has a solution of length ≤ 3 at (r,q) = (2,2),(2,3),(2,5),(3,2) (registered) or at (2,7) and (3,3) (local runs; the (3,3) run covered 1,601,613 tuples). A local (4,2) run timed out and is not claimed.

Controls: the direct four-call word satisfies the relaxation, and the search finds a length-4 solution on its own. Unrestricted linear algebra fits at length 2. Wrongly allowing y = xy reopens length 3.

Reproduce

python3.12 -B -W error research/conjugate-pair-group-free-audit/verify.py      # ~30 s
python3.12 -O -B -W error research/conjugate-pair-group-free-audit/verify.py
python3.12 -B scripts/research_package.py --package research/conjugate-pair-group-free-audit
python3.12 -B scripts/check_research_commit.py --package research/conjugate-pair-group-free-audit --check-source-history

Local results on macOS arm64, CPython 3.12: PASS_CONJUGATE_PAIR_GROUP_FREE_AUDIT in both modes, PASS_REGISTERED_RESEARCH_PACKAGE, PASS_PACKAGE_METADATA_AND_PINS and PASS_RESEARCH_COMMIT_BYTES. Base: canonical main 721c03822c421b7f7fcbb2598993b947c4d88419. The PR changes only its own package.

Limits

This is a formal group-algebra statement. It covers no native address operation, conversion, restoration, caller or BIT supplier, and the selected κ (#6030) is unchanged. The finite tiers cover only small prime fields and widths; prime-power fields and r ≥ 4 rest on the written proofs. No human or proof-kernel review is claimed.

Open next questions

  1. Prove the conjugate-pair target needs four calls in every group (no new κ) #6038 OQ1: is there a uniform floor of 6 for diag([g],[h]) when neither entry is a product of at most two labels (e.g. diag([xyx],[yxy]))? The support-only analogue of Theorem S fails. In a local NumPy probe (not registered) at r = 2 over F2, letting only subsets of size ≥ 3 carry g or h gives relaxed solutions at length 4 (20/1,296 tuples) and length 5 (938/7,776). So any floor of 6 must use relations among the labels. A second local probe solves the exact equations in the free group: it finds no word of length ≤ 5 for diag([xyx],[yxy]) at r = 2 over F2, and it does find the four-call words for (xy, yx). Next step: a full-tier table for the target (xyx, yxy).
  2. Formalize Theorem S (a short statement about rank-one matrices over a field).

Credit

Nick Petalas (#6038) supplied the theorem audited here, the corner-sandwich method, the expansion and the direct word. Wentao Li (#4089, #4093) supplied the model and the A5/PSL(2,7) results, and Cinna Davis (#2246) the original A5 target. Theorem S, its proof, the relaxation and the verifier are new here. Prepared for Josie Elliston with substantial Claude (Anthropic) assistance; Codex was used only for review. Apache-2.0.

Card: chooser seed c1601a53cbbe874bf9cae8c1d992c763 drew independent-verification; scope changed (reason in TASK.json). Claim: #1166 (reply in thread)

🤖 Generated with Claude Code

JosieElliston and others added 6 commits October 27, 2026 23:12
…al pair targets (no new κ)

Independent line-by-line audit of PR6038's conjugate-pair proof (no error),
Theorem S: any label set avoiding the two target entries needs four calls,
with a two-case proof, and a stdlib group-free finite certificate.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant