Skip to content

[Lean] Hyperplane-ended helpers: Lemma A with an arbitrary terminal frame (no κ claim) - #593

Merged
Mister-Meeseeks merged 2 commits into
CrocSwap:mainfrom
jeremykothe2:lean-hyperplane-end
Oct 12, 2026
Merged

Mister-Meeseeks merged 2 commits into
CrocSwap:mainfrom
jeremykothe2:lean-hyperplane-end

Conversation

@jeremykothe2

@jeremykothe2 jeremykothe2 commented Oct 12, 2026 •

Copy link
Copy Markdown

Summary

No κ claim. This is a Lean 4 proof package for the hyperplane-end step used by PR591, PR592 and PR596.

research/hyperplane-end-lean/ proves that Lemma A's realization still holds when a dirty entering helper ends at an arbitrary terminal frame U, not only FULL. With the extended labels T_(prew,j) = R_{E,U} T_E and T_(done,j) = L_{E,U}⁻¹ T_U, and wrappers keyed by the pair (E, U), the exact factorization (N) T_U T_E⁻¹ = L(C⊗id)R implies Lemma A's hypothesis (F). Lemma A then gives the helper's stream χ⁻¹(C⊗id)χ of itself for any U (hpe_streams, hpe_word). The FULL-ended helpers of #484 are the instance U = ⊤.

factor_iff_pre formalizes a review finding: (F) holds iff the pre wrapper is R_{E,U}. So a wrapper chosen by entrance alone, as in the original code, is wrong for U-ended helpers.

Update (commit fdb6dcc): (N) is now proved in Lean

HyperplaneEnd/Clifford.lean and HyperplaneEnd/Exact.lean prove the factorization (N) T_U T_E⁻¹ = L(C⊗id)R exactly for every (E, U) pair the hyperplane-ended words use. The 9 word/pair instances (ck, atm3, jp8 × 3) come down to 3 distinct identities. They are checked by decide +kernel on a packed ℤ[i] circuit evaluation (check1–check3, axioms [propext]); a soundness lemma (cL_eq_of_check) lifts each check to an equality of complex operators. hpe_word_exact is hpe_word with no (N) hypothesis: it requires only (ent h, term h) ∈ pairs.

Checks (fresh clone of fdb6dcc, Windows, Lean v4.21.0)

  • Source scan: no sorry, admit, axiom, native_decide, unsafe, opaque or extern in 17 files.
  • lake exe cache get + lake build: Build completed successfully.
  • #print axioms: all 28 results are within propext, Classical.choice and Quot.sound (check1–check3: [propext] only).
  • code/check_hpe_pairs.py --mutants on the ck, atm3 and jp8 hyperplane-ended local runs: PASS, every mutant rejected.
  • Note for reviewers on Windows: with CI=true in the environment, building Mathlib from source (--no-cache) fails in Mathlib's own CauSeq/Basic.lean:440 says check at this pin. Use the Mathlib cache (the default), or unset CI.

Scope

The climb recipes, the unit row and (O′)/(W) remain hypotheses here, checked exactly by the PR591/PR592/PR596 verifiers. This package doesn't prove a multiplier or κ theorem. PR #599 (DreamingOfClouds) extends it to multi-gate tails and cold helpers.

AI disclosure and authorship: Claude Opus 5.5 (Anthropic), running in the omp coding harness, wrote this package. Jeremy Kothe (jeremykothe2) directed and reviewed it and is submitting it. It builds on the Lemma A and Lemma G Lean packages and their authors, credited in NOTICE.md.

…ved in Lean 4

Generalizes Lemma G's extended labels so an entering helper may end at any frame U (wrappers keyed by (E, U)), derives Lemma A's (F) from the exact factorization T_U T_E^-1 = L (C (x) id) R, and applies Lemma A unchanged (hpe_block/family/streams/word). factor_iff_pre formalizes review finding F1. code/check_hpe_pairs.py checks the instance hypotheses on the ck/atm3/jp8 HPE words (38 helpers, 3 (E,U) pairs each). No sorry, no new axioms.

Prepared with Claude Opus 5.5 (Anthropic) in omp; submitted by jeremykothe2.
Proves T_U T_E^-1 = L (C_7 (x) id) R exactly over C, global phase included, for the three (E, U) pairs used by the ck/atm3/jp8 HPE words (the nine word/pair instances), and states hpe_word_exact: hpe_word for the tools' operators (canonical_frame, the "E:U" recipe monomials, fourier(7)) with no (N) hypothesis.

Clifford.lean gives clifford_exact.py's five gates exact C-linear semantics with inverses, and proves cL_eq_of_check: a packed Z[i] evaluation of both circuits on u(x) = B^x (all columns at once, base-B digits made unique by an entry bound) implies equality of the operators. Exact.lean ports canonical_frame and monomial_op, transports to C^128 (x) C^4, and discharges the instances with decide +kernel (no native_decide; check1-3 depend only on propext). check_hpe_pairs.py now also requires each word's pair to be one of the Lean-proved pairs.

Prepared with Claude Opus 5.5 (Anthropic) in omp; submitted by jeremykothe2.
@Mister-Meeseeks
Mister-Meeseeks merged commit b3eb785 into CrocSwap:main Oct 12, 2026
60 checks passed
Mister-Meeseeks pushed a commit that referenced this pull request Oct 14, 2026
The twelve frame and wrapper literals in HyperplaneEnd/Exact.lean, and their
inverses, match the retained Python constructors and independently derived
exact Gaussian-dyadic kernels on all 512 basis inputs (12,288 columns), and
the three rank-seven residual factorizations hold exactly, including global
phase and spectator coordinates. 27 semantic controls reject. Independent
finite corroboration of PR #593's identities; no new Lean theorem or kappa.

Adds research/hpe-lean-semantic-binding/ only.

Submitted by @commdata2338 with substantial AI assistance (OpenAI Codex
research and implementation; packaged with Claude Code).
thakrarsagar added a commit to thakrarsagar/integer-mult-bounds that referenced this pull request Oct 14, 2026
- The producer's lower_child check (signed Z4 tableau plus column 0) is
  complete but not independent; K2 is a control on this package's own
  comparator, not a gap in the producer's check. Lemma G's I-tr and
  check_adapters.py ran on four other words.
- Scope is record level for CLIFFORD-RECIPES.json; identity adapters are
  866 per orientation (352 entry + 514 exit).
- Gate-order equivalence holds on all 224 adapters (counted in RESULT).
- B3 accepts only the selected record or checkpoints/frontier1094.json;
  B8 uses a path pin in the source manifest.
- Tests (26): mutated child/adapter records rejected by evaluate(),
  receipts cover each pair once, measured digit bound on the 16-gate
  identities and a beta = 2K collision, I5/I6/I7 and fixture-pin
  negatives, calibration reproduced.
- Credits: HyperplaneEnd Lean (jeremykothe2, CrocSwap#593), Lemma G (DreamingOfClouds),
  CrocSwap#433 H6 identities, PR425 (jacklightChen), CrocSwap#1029/CrocSwap#662 engines.
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.

3 participants