Repository navigation
Research: PG(2,16)-M bootstrap orders, merge-family optimum 784 (no bound, no kappa) - #2956
Merged
Merged
Conversation
…ound, no kappa) Bounded investigation of the bit-side Problem X ordering question (Discussion CrocSwap#2278), building on philippeVV's limits-1 expXL at ed21d62. - Independent order checker: stdlib Dinic, split identity at every prefix, girth check; agrees with limits-1 check_order.py on positive and failure controls. - graph16_59 and ord784 rebuilt byte for byte from the Singer difference set and the cyclic rule, pinned by SHA256. - Exact DP over all 5,660,928 two-sequence cyclic merge families: the minimum is 784, attained only by the native multiplier 118 and its reverse. - Spectral bound 751 reproduced; o3_52 caps cut-only bounds at 772. - Bounded search (partition annealing, prefix beam with exact rollout values, exact-cost insertion annealing): no order below 784; best non-cyclic order 785, flow-infeasible. Boot stays in [772, 784]. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
State the cut-width ceiling precisely, label the algebraic identity checks as sanity checks, replay all six merge-DP optima, record what the registered replay does not cover, and drop stale LOCAL-ONLY text. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.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.
Summary
Bounded investigation of the bit-side Problem X ordering question from #2278: is Boot(PG(2,16)−M) = 772 for the Hermitian Singer code? It builds on philippeVV's
limits-1(expXL) ated21d624andlimits-2atae0cd3ed. No new bound on Boot and no κ claim. Boot stays in [772, 784].New package
research/pg16m-bootstrap-orders/:verify.py; scipy Dinic insearch/indep_check.py). It agrees withlimits-1/bootstrap/xl/check_order.pyon positive and failure controls. It also re-checks the split identity cost = ½|∂S| + Σ_S(j−8)⁺ + Σ_{V∖S}(ℓ−8)⁺ at every prefix. Robustness note:check_order.pychecks regularity and symmetry but not girth, so it would accept a degree-preserving rewired graph containing a 4-cycle; this checker also rejects that. No result is affected: an order's cost does not depend on girth, and the graph itself is pinned by the Singer rebuild.graph16_59.txtis the Singer incidence graph of PG(2,16) (difference set D′ ∪ {59}) minus the invariant matching point i — line i+59.ord784is the alternating cyclic order with multiplier 118 and offset 81. Both rebuild byte for byte and are pinned by SHA256.o3_52(max prefix cut 1544) shows that cut-width-type bounds (bisection, spectral, cut-width) cannot certify Boot > 772. No certified bound above 751.Evidence
python3.12 scripts/research_package.py --package research/pg16m-bootstrap-orders. It printsPASS_PG16M_BOOT_ORDERS, about 20 s. Metadata check:PASS_PACKAGE_METADATA_AND_PINS.o3_52and the best orders found here, replays the merge DP in pure Python on 47 recorded families (which agree with the numba sweep), and runs 4 corrupted-input rejections plus a flow-infeasible two-swap control.search/(numpy, scipy, numba). They are not part of the registered replay. The sweep takes about 27 min on 8 cores.Merge Danger
Low. The change adds one self-contained directory under
research/and touches no existing files, selected record, frontier or CI. The package registers one stdlib replay (300 s timeout). Scope note: dim C/E = 0.1767 < 0.193, so q = 16 is a test instance for the Hermitian route. It does not affect κ.AI assistance: prepared by Sudarsh Chaturvedi with assistance from Claude (Anthropic), Ran separate Claude review agent tried to break the claims before submission.