Repository navigation
Record one non-unit dyadic handoff that splits a rank-9 helper - #113
Draft
unpaidmoon wants to merge 1 commit into
Draft
unpaidmoon wants to merge 1 commit into
unpaidmoon wants to merge 1 commit into
Conversation
The PR5580 cut at frame 1053 is a legal coupled handoff under the Euclidean dyadic compiler, with an unchanged paid histogram and a higher local scalar allowance. No kappa claim. Co-authored-by: unpaidmoon <unpaidmoon@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Change and mathematical scope
This records one coupled handoff on the pinned PR5580 word. At cut 13762, frame 1053 and pivot 596, the dyadic row
{592: 5/16, 593: 5/16, 594: 5/8, 596: 3/8}has no unit coordinate. The unit-pivot constructor rejects that row and the matching cut row withDyadic basis pivot. The CrocSwap#5611 Euclidean compiler emits 36 ADD/SCALE operations at frame 3 and 34 at frame 1053. Substituting those schedules into the existing handoff adds public register 735.Register 596 then runs from frame 3 to frame 1053 (rank 5). Register 735 runs from frame 1053 to frame 127 (rank 4). Those two lifetimes replace register 596's previous rank-9 lifetime from frame 3 to frame 127. Local replay keeps the paid MOVE histogram
{1:2211, 2:459, 5:164, 4:94, 3:494, 7:14, 6:18}. Helper ranks change from{9:424, 4:83, 5:5, 8:15}to{9:423, 4:84, 5:6, 8:15}. The scalar allowance rises from 217428 to 218564 (+1136). Events go from 25140 to 25280, and public width from 735 to 736. Endpoint identity, peak owned fields 1, and all eight owned lifetimes hold.The +1136 allowance is the cost of this feasible Euclidean schedule and its inverse. It is not a proved minimum. The paid histogram does not improve. This is not a κ result. The selected frontier is unchanged. Native maps, the physical caller, compiler closure and the outer ledger remain unrun; those unknown costs are not zero.
Task and overlap
Base commit:
2485805a6d47f36ea83ddde6327d453ac82d44dcon canonicalCrocSwap/integer-mult-boundsmain. Priority revision 8. Catalogue cardp104-side-correction. Scope status: changed.The card asks whether a legal split improves the complete P104 invoice, starting from the selected CrocSwap#5599 word. This package answers the open question left by CrocSwap#5611: whether a newly admitted dyadic pair gives an additional physical helper target. The object is one cut on the PR5580 constructor word, which is the word that constructor consumes. The local answer is yes, and the local scalar bill consumes the step.
Session selection, in first-mention order of open-next questions from the packages named in revision-8
docs/research/current-priorities.md:Item 10 is this package. CrocSwap#5615's capacity question is the next item and is not answered here. CrocSwap#5718 stays on the list because its boundary-functional questions are a different object from this dyadic row.
Live inputs, pinned in
research/dyadic-rejected-dual-target/SOURCES.json:research/p104-coupled-helper-bases/inputs/pr5580-WORD.json.gz, sha256b2a98c4bd0dbe86c09e9d15ee060dcf1aab09dbef90aa1e2127676f4039f406bresearch/p104-coupled-helper-bases/construct.pyresearch/p104-coupled-helper-bases/local.pyresearch/dyadic-helper-basis-completion/basis.pyCrocSwap#5611 (
research/dyadic-helper-basis-completion, discussion #5125 comment 19184390) supplies the compiler and leaves the physical-target question open, with no new channel claimed for the constructor itself. An offline local overlap search matches many otherp104-side-correctionpackages by card id. Remote PR and discussion coverage was not refreshed. No exhaustive novelty claim is made.Validation
Environment: Python 3.12.3, standard library only. From the repository root:
Both registered commands passed, including the optimized (
-O) command. The verifier printsPASS_DYADIC_REJECTED_DUAL_TARGET. The launcher printsPASS_REGISTERED_RESEARCH_PACKAGEwith outcomepartial.The verifier recomputes the prefix and suffix images from the word. Prefix supports 595 and 597 cancel, so the source functional equals the cut row. Suffix supports 193, 199 and 204 cancel, leaving helper register 188 in the output direction. Both pairings equal 1. The helper group with frames
(3, 127)has 424 members, and no owned field is live at the cut. Direct matrix checks givea R = e_596^TandR e_596 = bfor both pairs. Compiled coefficients lie in{±1, ±5, ±10, ±1/16, 16}and satisfy the2^16growth bound; every SCALE is a dyadic unit. The 140 inserted events account for the +1136 allowance.Failure controls: the old constructor rejects both exhibited pairs; a nearby row with a unit coordinate is still accepted; a non-dyadic pair and a pair whose product is not 1 are rejected by the compiler; scaling the cut row by 3, pivot 0, group
(3, 126), and a forged output witness are rejected by the handoff; coefficient2^16fails the growth bound; SCALE by 3 fails the unit-SCALE check. The input word is left unchanged.Not run:
native(), the physical caller, the PR5545 capsule, outer predicates, other pivots, other cuts, and any coefficient-minimal schedule. The nine published unit-pivot handoffs remain the CrocSwap#5611 receipt. A locating search outside this verifier is not part of the receipt.Credit
Ali Romman's PR CrocSwap#5611 and PR CrocSwap#5602 supply the Euclidean compiler and the coupled handoff. PR CrocSwap#5599 is the reviewed helper-subspace construction named by the priority prose. Nick Petalas's PR CrocSwap#5115 uses Euclidean row preparation for a different single-hub contract. The PR5580 word and
local.pyretain David Arias, Cinna Davis, Gareth Davidson and Ali Romman's source credit. Prepared by unpaidmoon with substantial Cursor Grok assistance. Apache-2.0. No independent human or formal-kernel acceptance is claimed.Open next questions
The structured questions are in
research/dyadic-rejected-dual-target/TASK.jsonand the package README.{592, 593, 594, 596}, or another legal rejected pair on this word, produce a lower local scalar allowance? First step: recompile those pivots and compare local replay. A frame-597 locating hit is not a packaged witness.Workflow feedback (optional)
On this base commit,
certificates/selected-result.jsonrecords κ = 781451/250000000 whiledocs/research/current-priorities.mdstill describes the CrocSwap#5599 checkpoint κ = 0.00310045. This package leaves both files untouched. Feedback discussion: CrocSwap#1200