Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file not shown.
120 changes: 120 additions & 0 deletions research/r439-five-cycle-seed9f01/CERTIFICATE.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
{
"base_commit": "0b1cccf86e2f5132ed286a26ef0a681a495740ea",
"controls": [
"missing helper preparation edge rejected by D boundary",
"missing inverse restoration edge rejected by D boundary",
"stale injection rejected by D boundary",
"wrong inverse order rejected by D boundary",
"mutated injection coefficient rejected by D boundary"
],
"exact_precision": {
"local": {
"lhs": "44468459235010318794652647424",
"rhs": "20282409603651670423947251286016"
},
"nine_stage": {
"lhs": "4676708453903757010070537011688772133559165966010548224",
"rhs": "6277101735386680763835789423207666416102355444464034512896"
}
},
"new_kappa": false,
"paid_profile": {
"1": 1323,
"2": 1342,
"3": 79,
"4": 44,
"5": 102,
"6": 11,
"7": 19
},
"paid_rank_mass": 5129,
"search": {
"candidates": 1860480,
"optimistic_max_net_ADD_saving": 109,
"positive_saving_candidates": 56,
"selected": {
"edges": [
[
59,
148
],
[
148,
21
],
[
21,
129
],
[
129,
25
],
[
25,
59
]
],
"injection_weight": 4442,
"new_support_weight": 70,
"old_support_weight": 92,
"permutation": [
59,
148,
21,
129,
25
],
"saving": 12,
"support": [
21,
25,
59,
129,
148
]
},
"supports": 15504,
"sweeps_per_support": 120
},
"selected_record_sha256": "10b9e340fd8e354a37a0c4813c90e5de1dd42044b5f6aca4a3fc5a42b685fa32",
"status": "PASS_R439_FIVE_CYCLE",
"unrun": [
"native C++ replay",
"supplier adoption",
"outer assembly replay",
"all-size/compiler and analytic proof obligations"
],
"word": {
"columns": 661,
"copy_ranks": [
7,
7,
7,
7,
7,
7,
7,
7,
7
],
"directions": 2,
"exporter": {
"adds": 11488,
"copies": 9,
"erasures": 9,
"forward": 27061,
"payload_bits": 96,
"record_sha256": "10de6f93ba0dcf14aaeb0bfeaea0e35f65ad5ba22de6284fe2828a7ee0504930",
"reverse": 5921344
},
"literal": {
"B": 5921344,
"D_adds": 5536,
"F": 27061,
"local_bits": 96,
"native_ADDs": 11488,
"nine_stage_bits": 182
}
}
}
134 changes: 134 additions & 0 deletions research/r439-five-cycle-seed9f01/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
# Five-helper cyclic basis change on the R439 D map

**Finite local circuit construction; no new κ.** A five-edge directed cycle on
five helpers reduces the pinned R439 D-stage cost by 12 ADDs after paying for
both preparation and restoration. The selected result, accepted bit supplier,
paid rank profile and `upstream/` are unchanged. The selected complex side still
binds.

## Exact construction

The source is the source-pinned 11,500-ADD word in
[`research/r439-bsection-stars-seed01/`](../r439-bsection-stars-seed01/README.md),
which combines the R439 helper-star D word with its ten phase-B block programs.
The cycle is applied **after** the old helper preparation. Using local helper
indices, its chronological word is:

```text
helper[59] ^= helper[148]
helper[148] ^= helper[21]
helper[21] ^= helper[129]
helper[129] ^= helper[25]
helper[25] ^= helper[59]
```

The corresponding absolute wire IDs are 281, 370, 243, 351 and 247. Write
`H0` for the original helper basis change, `H1` for this five-operation cycle,
and `J0` for the original 111-by-439 injection. The old helper state at
injection is `H0 s`. The new state is `H1 H0 s`; use the injection
`J0 H1^-1`, then restore `H1^-1` in reverse operation order before the old
`H0^-1`. Thus

```text
J0 H1^-1 H1 H0 s = J0 H0 s
```

for every helper vector `s`, including arbitrary dirty values. The target and
helper D boundary is identical. The existing target preparation/restoration,
other stages, COPY/ERASE records and frame schedule remain in place.

The five selected injection columns have total weight 92 before the cycle and
70 after it. Their 111-row injection therefore drops from 4,464 to 4,442 ADDs.
The cycle adds five preparation and five restoration ADDs, giving:

| Quantity | Pinned word | Cyclic word |
|---|---:|---:|
| Injection ADDs | 4,464 | 4,442 |
| Helper cycle preparation and restoration | 0 | 10 |
| Complete D-stage ADDs | 5,548 | 5,536 |
| Complete R439 word ADDs | 11,500 | **11,488** |
| Paid rank mass | 5,129 | 5,129 |

The complete-word bounds are `F=27,061` and `B=5,921,344`. Exact integer
arithmetic gives

```text
64 F^3 B^2 = 44468459235010318794652647424
< 20282409603651670423947251286016 = 2^104

2^18 F^5 B^4 = 4676708453903757010070537011688772133559165966010548224
< 6277101735386680763835789423207666416102355444464034512896 = 2^192
```

## Bounded search and optimistic price

Rank all 439 injection columns by their total pairwise support overlap, breaking
ties by column weight (larger first) and local helper index (smaller first).
Take the top 20 helpers. For every one of the 15,504 five-element supports,
test all 120 permutations, where each permutation gives the five chronological
cyclic edges `p[i] ^= p[i+1]` with indices modulo five. The search tests exactly
**1,860,480** words and stops there. It finds 56 words with positive complete
ADD savings; four tie at the maximum of 12. The candidate above is the
lexicographically first maximum.

Before enumeration, a favorable basis bound gave at most 109 net ADDs of
savings in this domain: the highest-ranked five columns have weight 124 and
rank five, while preparation and restoration cost ten. For any invertible
change on five columns, the new injection has at least that rank in nonzero
columns. The cycle search attains 12 of the 109-ADD ceiling.

The paid profile is unchanged, so the recursive moment and κ gain are exactly
zero. This construction does not enter the selected assembly or establish a
smaller integer-multiplication exponent. It is scoped to the frozen R439 word
and the stated top-20 cyclic-sweep domain; it is not a minimum over other helper
supports, longer cycles, target bases or complete circuits.

## Verification

The source-pinned replay uses the standard library and the retained R439
boundary, owner and exporter checks:

```sh
python3 -B research/r439-five-cycle-seed9f01/verify.py
python3 scripts/research_package.py --package research/r439-five-cycle-seed9f01 --check-only
python3.12 scripts/research_package.py --package research/r439-five-cycle-seed9f01
```

The first command repeats the full finite search, checks all 661 formal columns
in both directions, verifies the dirty D boundary, replays H1–H5 and the paid
profile, and checks the complete exporter invoice and precision expressions.
It also rejects five controls: a missing preparation edge, a missing inverse
edge, the stale injection, a wrong inverse order, and a changed injection
coefficient. The expected final line is:

```text
PASS_R439_FIVE_CYCLE candidates=1860480 best_saving=12 ADDs=11500->11488 columns=661 controls=5 no_new_kappa
```

The exact candidate, search receipt and replay receipt are
[`CANDIDATE.json.gz`](CANDIDATE.json.gz),
[`SEARCH-RESULT.json`](SEARCH-RESULT.json) and
[`CERTIFICATE.json`](CERTIFICATE.json). `SOURCES.json` pins the task catalogue,
selected result, review, source manifest, assembly certificate and every live
input used by the predecessor replay. The conditional result remains subject
to the inherited all-size/compiler, common-label/mutable-source realization,
whole-call hosting, precision/tape and analytic-transfer assumptions. Native
C++ replay, supplier adoption and outer assembly replay were not run here.

## Open next questions

- **Can a six-helper cyclic change save more on the same D map?** A longer cycle
could realize multi-column cancellations unavailable to a five-cycle. First
compute its exact rank-based optimistic ceiling and full six-edge
preparation/restoration bill on a bounded overlap-ranked support family.
Continue only if that ceiling is positive and the precision budget is
favorable.

## Credit

The R439 word, helper-star basis, phase-B programs and retained checkers come
from the predecessor packages and PR lineage named in `SOURCES.json` and the
linked README. Those inputs are reused unchanged. Prepared by Cinna Davis
(@1337isnot1337) with substantial OpenAI Codex assistance in the derivation,
search, implementation, checking and writing. No independent human review is
claimed. This package is Apache-2.0.
Loading
Loading