Skip to content

Research: exact four-bit reduction and faster P104 lifting reference - #3033

Merged
Mister-Meeseeks merged 1 commit into
CrocSwap:mainfrom
tekuuu:research/p104-fast-recursive-round59
Oct 16, 2026
Merged

Mister-Meeseeks merged 1 commit into
CrocSwap:mainfrom
tekuuu:research/p104-fast-recursive-round59

Conversation

@tekuuu

@tekuuu tekuuu commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

PR3025 restores the P104 collector exactly, but evaluates every nonlinear lifting butterfly at full precision. This package reduces the identical map to one wide exact linear evaluation plus bounded-width residue work. At rank seven only four input bits per real component are needed for the nonlinear part. The paired inverse, query values and private-zero cleanup are unchanged.

The written proof establishes L_r(x+2^g z)=L_r(x)+2^g U_r(z) for g=floor(r/2)+1, including the literal inverse and Gaussian monomial wrappers. Explicit witnesses show the forward uniform threshold is sharp. An exact integer Walsh backend makes the reduction executable. Same-input, alternating-order Python 3.12 measurements on the actual outbound recipe give 2.08× at 4,096 bits and 3.75× at 65,536 bits; 64-bit inputs are slower (0.76×). All seven timing pairs at each of five widths are retained.

This is a research reduction and reference implementation improvement, not a completed fast recursive supplier or a new κ. The full ledger pays both wrapper sets, extraction/recombination, narrow arithmetic, owned buffers and reset. It identifies the exact/certified-integer backend contract and its W-dependent precision requirement. If an admitted exact backend costs O(NW r^(1−a)), the reduction preserves that rate for W=Omega(r^(1+a)), with n=Theta(r); its current narrow algorithm does not establish the saving at W=Theta(r). Mutable buffer reset is not a physical dirty-workspace or reversible-uncomputation proof.

Validation:

  • Ranks 1–10 in both directions; 2,592 exhaustive signed pair cases; one-bit-short counterexamples.
  • All 512 ideal native columns in each direction, five wide paired fixtures, and four full dirty collector comparisons against byte-identical PR3025 code.
  • Eight control groups cover signed residues, missing correction, faulty backend, native occurrence/phase, wrong inverse order, scratch, source pins, typed receipts and an optimized read-only Git-free export.
  • Registered CPython 3.12.14 replay and optimized CPython 3.14.7 controls pass. All 15 committed package/input byte checks pass. Hosted CI and independent mathematical review are separate.
python3.12 scripts/research_package.py --package research/p104-lifting-residue-reduction

Base: d8e0f83f00191df62174b641e9fff055c357f641, priority revision 6. PR3025 source: a544ef068a46f4de3bc47d1d02149cbdc3ba547f. Actual collector/native recipes: ywz65/PR2586 7953c9a8f788a8de5cf2ced63d9a61b67c22c6f1. Source hashes, proof, recurrence, benchmark and unresolved obligations are in research/p104-lifting-residue-reduction/.

Canonical claim. Canonical main and dependency head were refreshed before publication. Recent PRs through PR3030 were checked: the T148/T740 packing releases address a distinct obligation. The overlap check uses retained historical metadata and fresh deltas, not a claim to have reviewed every diff or unpublished result.

Credit Tekalign/PR3025 for the unchanged lifting map and collector; Arham Tahir/PR2999 for the collision predecessor and occurrence-binding lineage; ywz65/PR2586/2555 for the physical recipes and rounded-shear precedent; and the retained native/geometry lineage. Standard lifting and Walsh factorization are not claimed as new. Prepared by Tekalign with substantial OpenAI Codex assistance. Apache-2.0.

The diff adds 12 scoped package files, about 1,570 lines including the 233-line unchanged predecessor reference. No shared checker, frozen source, upstream file or selected frontier is modified.

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.

2 participants