Skip to content

Conditional κ = 7.24098741932703e-4: 880-gate concave-descent retiming and 220 target-prefix squares on #276's gen4 five-stage banks - #279

Closed
rohanarun wants to merge 5 commits into
CrocSwap:mainfrom
rohanarun:gen4-descent-retiming
Closed

rohanarun wants to merge 5 commits into
CrocSwap:mainfrom
rohanarun:gen4-descent-retiming

Conversation

@rohanarun

@rohanarun rohanarun commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Conditional κ = 724098741932703/10^18 = 7.24098741932703e-4, +1.23 × 10⁻⁶ (+0.170 %) over #276 (7.22869827347495e-4). Stacked on #276's branch at its head; two added stages (880-gate concave-descent retiming, then eumemic's exact F₂ target-prefix compression with 220 square groups found on this word), no change to the gen4 word's banks, entrances or charts. #280 (utcorvusvolat), published while this was being verified, composes the same 880 retimings with 440 early restorations, 60 dirty entrances and the fixed prime at 7.241891e-4; it does not include the target-prefix squares, so the two are complementary.

Full replay: PASS on the committed package (all nine stages: virtual, raw, bit, scalar, primes, banks, complex, math, finite; package integrity unchanged; κ = 724098741932703/10^18). The first commit's CI failure was gen4's pre-PR244 prime_check rule; PR244's rule (retain determinant obligations for producer frames a retiming removes) is applied.

Change

Stage 2 — target-prefix compression (220 squares). After the retiming, every target reads rank-20 entrance helpers at a 20-dimensional frame; in each of 220 squares of four targets each helper is read by exactly two of the four, so the dependent target's prefix response is the F₂ sum of its three square-mates'. Its 1,100 frame-20 reads are omitted; it receives t −= p_j at the zero frame at the cut and t += p_j at the square's common 21-dimensional frame at the close (1,320 setup/restore additions): ZERO →(20)→(1)→ 21 becomes ZERO →(21)→ 21, delta {1: −220, 20: −220, 21: +220}. The transform is eumemic's target_transform.py from #268 unchanged apart from the stream count; it recomputes every literal dependency from the actual word, rebuilds every MOVE, checks nesting, endpoints, COPY lifetimes, nondegenerate bases and both all-column replays with an omitted-setup control, and rebinds the raw ledger. Downstream scalar/finite constants (626,580 weighted ADDs, coefficient counts, event hash) are updated accordingly.

Stage 1 — retiming.
#276's gen4 pipeline is prepare → physical → parity fusion → lowering: it carries no frame retiming. Applying local descent on the concave paid-rank objective Σ r·ln(120/r) (the search behind #263/#273's 25-gate step) to gen4's parity-fused word finds 880 single-gate frame reassignments — exactly PR244's common-delivery-frame retiming, which source527 has had since #244 but gen4 never received: each of gen4's 880 unborrowed source-pair mixes runs at its existing rank-22 common delivery frame, so per pair the paid children of ranks 1, 1, 20, 22 become 21, 21, 2. Local paid histogram delta {1: −1760, 2: +880, 20: −880, 21: +1760, 22: −880}; 880 local recursive calls per invocation disappear at unchanged rank mass 425,742. Five-stage profile: 483,146 calls (was 487,546), rank mass 2,809,600, deficit 4,400 per replica unchanged; per-replica bank call count 480,680 (was 485,080).

descent_transform.py consumes the frozen descent-selection.json (record bindings, old-basis hashes, explicit rational new bases) and, like PR244's retiming_transform.py, rebuilds every MOVE from the selected gate needs and independently checks: the byte-identical scalar/COPY projection, nested chains, fixed source/dirty/target endpoints, unchanged COPY lifetimes, nondegenerate endpoint bases, both reflected annihilator ledgers, the expected histogram delta and rank mass, and the exact integer source span of every non-target operand inside its new frame, recomputed from the actual word. raw_ledger.rebind_descent recounts the five-stage profile; bank_check and verify.py require the new counts and κ.

python3 -m pip install -r research/five-stage-gen4-banks/requirements.txt
python3 -B research/five-stage-gen4-banks/verify.py --output /tmp/gen4-descent-verification

Python 3.11+, SymPy 1.14.0, a new output directory outside the package; no network. About 6 minutes.

Scope and credits

Exactly #276's hypotheses and conditional interfaces (all-size compiler, weighted chart, restored rows, selectors, routing, prime supply, precision/recovery, complex symbolic correctness, analytic reduction). No new Lean build or practical benchmark is claimed. The other levers the source527 lineage accumulated (entrance regauge, kernel families, target-prefix compression, cleanup sandwiches, fixed prime) are not yet applied to gen4 and compose on top of this.

DreamingOfClouds (#276): the gen4 bit word and its five-stage completed-bank package; eumemic (#244, #210, #234 lineage): the common-frame retiming this reproduces and the package machinery; hcg890 and Jacob Sussman (#234); Evan McKinney (#197); and the retained lineage. The descent search, the transform stage and this package's rebinding were prepared by Rohan Arun with Anthropic Claude assistance.

🤖 Generated with Claude Code

DreamingOfClouds and others added 4 commits October 9, 2026 23:16
…ord in the five-stage completed banks

New package research/five-stage-gen4-banks: eumemic's source527 five-stage
completed-bank package with the bit helper replaced by a new paired-cube bit
word (arc-aware local design, centre-sharing pair module, re-annealed
all-but-one module) and its own PR200-rule physical layer. Virtual roles
17,904 (PR200: 18,908); physical dirty registers 16,410. Full immutable
verify.py: kappa = 7.22869827347495e-4, bit binds.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Runs verify.py (all nine mandatory stages) on Python 3.11 and 3.13 and the
byte-exact regeneration of the pinned bit word.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e banks: kappa = 7.23571590007464e-4

The gen4 word had no frame retiming. Local descent on the concave paid-rank objective runs each unborrowed source-pair mix at its rank-22 common delivery frame (PR244's pattern): per pair the paid children of ranks 1,1,20,22 become 21,21,2; 880 local recursive calls disappear at unchanged rank mass 425742. descent_transform.py rebuilds every MOVE and checks the scalar/COPY projection, nested chains, endpoints, COPY lifetimes, nondegenerate bases, both reflected ledgers and exact integer operand source spans; raw_ledger.rebind_descent recounts the five-stage profile.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…etiming removes (PR244's rule)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@rohanarun

Copy link
Copy Markdown
Contributor Author

CI failure on the first commit was gen4's pre-PR244 prime_check, which required every producer frame to still appear in the executed word; a retiming removes the pairs' old frames. Pushed PR244's own rule (retain the determinant obligation for removed frames, plus every fresh basis). Local full eight-stage replay with this commit: virtual, raw, bit, scalar, primes, banks, complex, math, finite all PASS at κ = 90446448750933/125000000000000000.

…d: kappa = 7.24098741932703e-4

eumemic's PR268 exact F2 target-prefix transform applied after the descent retiming: 220 four-target squares whose dependent's frame-20 prefix response is the F2 sum of three retained square-mates; 1100 frame-20 reads omitted, 1320 setup/restore additions, delta {1:-220,20:-220,21:+220}. Scalar/finite/bank counts and kappa updated; full eight-stage replay passes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@rohanarun rohanarun changed the title Draft: Conditional κ = 7.23571590007464e-4: concave-descent frame retiming of 880 gates on #276's gen4 five-stage banks Conditional κ = 7.24098741932703e-4: 880-gate concave-descent retiming and 220 target-prefix squares on #276's gen4 five-stage banks Oct 10, 2026
@rohanarun
rohanarun marked this pull request as ready for review October 10, 2026 04:58
@chafreaky

Copy link
Copy Markdown
Contributor

Composed with this in #282 (your descent_transform.py + descent-selection.json vendored unchanged, then 424 kernel twin pairs on the retimed word): 7.23944·10⁻⁴, the two levers acting on disjoint registers. One thing we hit while composing that may concern your own full replay: after the retiming, the used-frame inventory handed to prime_check has to keep the inherited producer_physical inventory (a retimed gate's former frame is still a required base of the virtual word); building it from actual uses only trips the 'base and added transform coverage' assertion. In #282 the inherited inventory is kept as a superset.

v3ai pushed a commit to v3ai/integer-mult-bounds that referenced this pull request Oct 11, 2026
… from PR CrocSwap#279’s 7.235715900074640×10⁻⁴. That is +0.0089%, about a tenth of what CrocSwap#279 itself gained
@v3ai v3ai mentioned this pull request Oct 11, 2026
@Mister-Meeseeks

Copy link
Copy Markdown
Contributor

Thank you @rohanarun. This contribution is now retained on main in the scoped 100-PR review and contributor credits.

Contribution: Gen4 retiming and later target-prefix revision.

Review and limits: Current head matches the later companion reconciliation, including 12 added target-prefix files and all nine stages. Original and later scopes are both retained.

The complete original source, notices and relevant execution evidence are retained through the pinned source archive. The review distinguishes fresh local runs, source-bound historical Linux CI and prior exact-head review; it does not claim 100 fresh full mathematical audits. Closing this historical PR as reconciled. This preserves parallel and cumulative credit without replacing the selected frontier or promoting priced research targets to completed constructions.

Reviewed head: 913ccc48a0bc1173709ea92280b96252256b7754. Publication: 50d768818f579d4e165b4c257c6ee25bca300802.

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.

4 participants