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
4 changes: 2 additions & 2 deletions certificates/joint-dual-kappa.json
Original file line number Diff line number Diff line change
Expand Up @@ -838,11 +838,11 @@
"scripts/experiments/binary_frame_replay.py": "1a572dbb33faba6695b3293768a7e61392d11cb4c2d5f708eedcd2cb95d0aff9",
"scripts/experiments/joint_dual_compiler.py": "853d3fc4a740c5b74c23b3a6af5d4dc9b41fb38e9b55678539a7e0ee71947c13",
"scripts/experiments/joint_dual_compose.py": "3554e957570e2d3f65c5bd7c945338c9e2fc5f3e79efa2b436a4dfc61899c394",
"scripts/experiments/joint_dual_reclaim_compiler.py": "9984aaccf880e4840402322d76678bfddb33ce7e494af78430a43429f51b85fd",
"scripts/experiments/joint_dual_reclaim_compiler.py": "edab206b83cfe3f7a08f1b605b182e354c87cc24e2f3ad81a95f7a083ff342fb",
"scripts/experiments/pin_joint_dual_sources.py": "5d41535a73ad62fae7acb5365c5b7f40d7c99e52b6bc4266e44572018080acc5",
"scripts/experiments/verify_joint_dual.py": "7a31bba1e9c0ded32ae285df2ca9bc91ef20c330f6789fdba361876f3c7a1985"
},
"source_manifest_sha256": "e60f1f78c9729700ef9606a6576163de0b553792e5e8f24591dce5f51597158c",
"source_manifest_sha256": "330fac72bad557ef4ae999298121c7d63ce237e23bb3184222c9bd6b54264687",
"sources": [
{
"files": {
Expand Down
2 changes: 1 addition & 1 deletion certificates/joint-dual-validation.json
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@
}
},
"bit_saving": "2382370177/50000000000000",
"certificate_sha256": "a1329d6c5e78cef5c7381d5e5d79c0a8842db7e569892af3b7e763b6c46d6f96",
"certificate_sha256": "cd820c5f75f2de6b8bf1068e7c9a58010d2cf50062954f7e19ebea97a258be6d",
"kappa": "4764513337/100000000000000",
"margins": 7,
"producer_words_regenerated_and_matched": true,
Expand Down
2 changes: 1 addition & 1 deletion research/joint-dual/SOURCE.json
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
"scripts/experiments/binary_frame_replay.py": "1a572dbb33faba6695b3293768a7e61392d11cb4c2d5f708eedcd2cb95d0aff9",
"scripts/experiments/joint_dual_compiler.py": "853d3fc4a740c5b74c23b3a6af5d4dc9b41fb38e9b55678539a7e0ee71947c13",
"scripts/experiments/joint_dual_compose.py": "3554e957570e2d3f65c5bd7c945338c9e2fc5f3e79efa2b436a4dfc61899c394",
"scripts/experiments/joint_dual_reclaim_compiler.py": "9984aaccf880e4840402322d76678bfddb33ce7e494af78430a43429f51b85fd",
"scripts/experiments/joint_dual_reclaim_compiler.py": "edab206b83cfe3f7a08f1b605b182e354c87cc24e2f3ad81a95f7a083ff342fb",
"scripts/experiments/pin_joint_dual_sources.py": "5d41535a73ad62fae7acb5365c5b7f40d7c99e52b6bc4266e44572018080acc5",
"scripts/experiments/verify_joint_dual.py": "7a31bba1e9c0ded32ae285df2ca9bc91ef20c330f6789fdba361876f3c7a1985",
"tests/test_joint_reclaim.py": "c4e2817bf6e699f462aa3c589ee45e24ab0dcad6bcdb6152ca2a1e16ac7bffeb"
Expand Down
118 changes: 118 additions & 0 deletions research/reclaim-order-performance/BENCHMARK.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
{
"status": "PASS_IDENTICAL_RECLAIM_WORDS_AND_RECEIPTS",
"pairs": 3,
"platform": "macOS-26.6.1-arm64-arm-64bit-Mach-O",
"python": "3.14.7 (main, Aug 5 2026, 10:29:49) [Clang 21.0.0 (clang-2100.1.1.101)]",
"runs": [
{
"pair": 0,
"variant": "reference",
"h": 23,
"seconds": 99.31884212512523,
"word_sha256": "c83396d1ea5427eed332c45931d59ed0c8ea5eae23d16e0ea909854d41796d1e",
"receipt_sha256": "0c39d1dcb82a4642d371a6a3dc49871cb43773cd0ec289f557838995e12175ce"
},
{
"pair": 0,
"variant": "filtered",
"h": 23,
"seconds": 30.900923082605004,
"word_sha256": "c83396d1ea5427eed332c45931d59ed0c8ea5eae23d16e0ea909854d41796d1e",
"receipt_sha256": "0c39d1dcb82a4642d371a6a3dc49871cb43773cd0ec289f557838995e12175ce"
},
{
"pair": 0,
"variant": "reference",
"h": 25,
"seconds": 151.46320916572586,
"word_sha256": "6f6dca829728cb01e6c425ada5878884b13bc6362e0ae2144347bde8a5852dbf",
"receipt_sha256": "da2922d7b8b4f51d679f3fa5f5f052f41aff53e2bb283ffe6b50d00f6c1cc451"
},
{
"pair": 0,
"variant": "filtered",
"h": 25,
"seconds": 51.81142037501559,
"word_sha256": "6f6dca829728cb01e6c425ada5878884b13bc6362e0ae2144347bde8a5852dbf",
"receipt_sha256": "da2922d7b8b4f51d679f3fa5f5f052f41aff53e2bb283ffe6b50d00f6c1cc451"
},
{
"pair": 1,
"variant": "filtered",
"h": 23,
"seconds": 28.245789624750614,
"word_sha256": "c83396d1ea5427eed332c45931d59ed0c8ea5eae23d16e0ea909854d41796d1e",
"receipt_sha256": "0c39d1dcb82a4642d371a6a3dc49871cb43773cd0ec289f557838995e12175ce"
},
{
"pair": 1,
"variant": "reference",
"h": 23,
"seconds": 72.87553708255291,
"word_sha256": "c83396d1ea5427eed332c45931d59ed0c8ea5eae23d16e0ea909854d41796d1e",
"receipt_sha256": "0c39d1dcb82a4642d371a6a3dc49871cb43773cd0ec289f557838995e12175ce"
},
{
"pair": 1,
"variant": "filtered",
"h": 25,
"seconds": 50.21983787510544,
"word_sha256": "6f6dca829728cb01e6c425ada5878884b13bc6362e0ae2144347bde8a5852dbf",
"receipt_sha256": "da2922d7b8b4f51d679f3fa5f5f052f41aff53e2bb283ffe6b50d00f6c1cc451"
},
{
"pair": 1,
"variant": "reference",
"h": 25,
"seconds": 135.0369677497074,
"word_sha256": "6f6dca829728cb01e6c425ada5878884b13bc6362e0ae2144347bde8a5852dbf",
"receipt_sha256": "da2922d7b8b4f51d679f3fa5f5f052f41aff53e2bb283ffe6b50d00f6c1cc451"
},
{
"pair": 2,
"variant": "reference",
"h": 23,
"seconds": 70.33631454175338,
"word_sha256": "c83396d1ea5427eed332c45931d59ed0c8ea5eae23d16e0ea909854d41796d1e",
"receipt_sha256": "0c39d1dcb82a4642d371a6a3dc49871cb43773cd0ec289f557838995e12175ce"
},
{
"pair": 2,
"variant": "filtered",
"h": 23,
"seconds": 31.932895791251212,
"word_sha256": "c83396d1ea5427eed332c45931d59ed0c8ea5eae23d16e0ea909854d41796d1e",
"receipt_sha256": "0c39d1dcb82a4642d371a6a3dc49871cb43773cd0ec289f557838995e12175ce"
},
{
"pair": 2,
"variant": "reference",
"h": 25,
"seconds": 127.1452476666309,
"word_sha256": "6f6dca829728cb01e6c425ada5878884b13bc6362e0ae2144347bde8a5852dbf",
"receipt_sha256": "da2922d7b8b4f51d679f3fa5f5f052f41aff53e2bb283ffe6b50d00f6c1cc451"
},
{
"pair": 2,
"variant": "filtered",
"h": 25,
"seconds": 46.23027937486768,
"word_sha256": "6f6dca829728cb01e6c425ada5878884b13bc6362e0ae2144347bde8a5852dbf",
"receipt_sha256": "da2922d7b8b4f51d679f3fa5f5f052f41aff53e2bb283ffe6b50d00f6c1cc451"
}
],
"summary": {
"23": {
"reference": 72.87553708255291,
"filtered": 30.900923082605004,
"speedup": 2.3583611689443864
},
"25": {
"reference": 135.0369677497074,
"filtered": 50.21983787510544,
"speedup": 2.6889168397066214
}
},
"source_manifest_sha256": "b74995273584bf723998c757d47cf5df94d2c8a6c8e599e64eddf337cad36d6d",
"scope": "Complete scalar compilation and both dirty orientations; not the full repository suite."
}
47 changes: 47 additions & 0 deletions research/reclaim-order-performance/CLAIM.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"track": "Verification engineering",
"seed": 85,
"base_commit": "66849e1475c930fd7732b1a0067ffee7e1e95f60",
"claimed_utc": "2026-10-13T04:14:46.842049+00:00",
"expected_finish_utc": "2026-10-13T05:15:00Z",
"candidates": [
{
"task": "Exact logarithm or exponential acceleration",
"decision": "Excluded; PR667 and PR672 already cover these kernels."
},
{
"task": "Ranked reclamation candidate ordering",
"decision": "Selected; PR154 identifies repeated sorting as a bottleneck but does not change it."
},
{
"task": "R420 frame linear algebra",
"decision": "Deferred; close to PR367 frame-algebra work."
}
],
"object": "scripts/experiments/joint_dual_reclaim_compiler.py acquire() with PR55 h=23 and h=25 inputs",
"hypothesis": "Filter retired slots by exact frame containment before sorting. Preserve descending current rank and slot-ID order on eligible slots. Measure complete compilation and compare every generated word field.",
"method": "Fresh before/after processes on identical frozen inputs; exact semantic and independent replay comparison; no result cache or reduced dirty-basis coverage.",
"expected_deliverable": "Focused compiler optimization with exact-output evidence, benchmark and required source-pin updates, or a recorded failed screen.",
"coordination": "No pinned issues. Open-PR refresh covered 508 PRs through 688. PR154 is credited as the prior bottleneck report.",
"contributor": "Ali Romman",
"assistance": "Substantial OpenAI Codex assistance.",
"pre_submission_overlap": {
"open_prs": 614,
"through_pr": 795,
"pr175_head": "f1081fabbfadaaaaf7292a40d428dbbb865ce920",
"pr779_head": "daa9b0e773b53f36d5b4c3f1c7524600e5714deb",
"finding": "PR175 maintains sorted rank buckets. Concurrent PR779 maintains exact eligibility indexes and reports larger speedups. PR175 is preserved in a historical source archive; the root compiler at the base still sorts all retired slots.",
"distinct_contribution": "Two-line default-compiler filter without a maintained index, update hook or adapter; exact-output evidence and complete affected integration checks. No priority or best-performance claim.",
"timing_scope": "Only the current base and two-line filter were benchmarked on this machine."
},
"result": {
"status": "Verified two-line default-compiler option",
"median_speedup_h23": 2.3583611689443864,
"median_speedup_h25": 2.6889168397066214,
"unchanged_words_and_receipts": 12,
"required_groups_passed": 18,
"uninterrupted_full_run": false,
"new_kappa": false,
"publication": "PR link and exact head will be saved in the local continuation handoff."
}
}
65 changes: 65 additions & 0 deletions research/reclaim-order-performance/FOLLOWUP-REVIEW.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
{
"date": "2026-10-14",
"status": "PASS_FOCUSED_RECLAIM_REGRESSION",
"reviewed_head": "b879e8472547bd820ce81b1b9c0463176fe5151c",
"upstream_commit": "418e40eb2572d930b58c1cf9b82b41c0fc7ee08d",
"source_audit": {
"upstream_commit": "418e40eb2572d930b58c1cf9b82b41c0fc7ee08d",
"original_base": "66849e1475c930fd7732b1a0067ffee7e1e95f60",
"reviewed_head": "b879e8472547bd820ce81b1b9c0463176fe5151c",
"current_main_compiler_equals_reference": true,
"all_pins_valid": true,
"changes": {
"research/joint-dual/SOURCE.json": [
[
"files",
"scripts/experiments/joint_dual_reclaim_compiler.py"
]
],
"certificates/joint-dual-kappa.json": [
[
"local_source_sha256",
"scripts/experiments/joint_dual_reclaim_compiler.py"
],
[
"source_manifest_sha256"
]
],
"certificates/joint-dual-validation.json": [
[
"certificate_sha256"
]
]
}
},
"fresh_runs": {
"python": "3.14.7",
"platform": "macOS-26.6.1-arm64-arm-64bit-Mach-O",
"runs": [
{
"h": 23,
"word_sha256": "c83396d1ea5427eed332c45931d59ed0c8ea5eae23d16e0ea909854d41796d1e",
"receipt_sha256": "0c39d1dcb82a4642d371a6a3dc49871cb43773cd0ec289f557838995e12175ce",
"log_sha256": "75a64ea9169ea22f71f6242d297e09b7b1deedb205f4983d51d7210ce79067fc",
"all_dirty_columns_both_orientations": true,
"dirty_basis_vectors": 34230
},
{
"h": 25,
"word_sha256": "6f6dca829728cb01e6c425ada5878884b13bc6362e0ae2144347bde8a5852dbf",
"receipt_sha256": "da2922d7b8b4f51d679f3fa5f5f052f41aff53e2bb283ffe6b50d00f6c1cc451",
"log_sha256": "f8c7ceb38fb5770f12285831a9bc426737f7139d113a7a22d8c7c13f7a01e1ac",
"all_dirty_columns_both_orientations": true,
"dirty_basis_vectors": 44938
}
]
},
"retained_evidence": "VALIDATION.json and BENCHMARK.json at the reviewed head; no full-suite or timing rerun",
"scope": "Same finite words and compiler receipts. No new kappa or complete multiplication theorem.",
"scheduling": {
"requested_nice": 15,
"request_accepted": false,
"diagnostic": "nice: setpriority: Operation not permitted",
"execution": "One compilation at a time at normal priority; both completed."
}
}
72 changes: 72 additions & 0 deletions research/reclaim-order-performance/FOLLOWUP-REVIEW.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# Compiler and certificate follow-up review

This review addresses the [PR #797 triage request](https://github.com/CrocSwap/integer-mult-bounds/pull/797#issuecomment-6160965282).
The two-line change preserves the complete compiler word. Fresh compilation
at both supported historical sizes passed on 2026-10-14. No code correction
was needed. The result remains a verifier improvement with no new kappa.

## Exact inputs

The reviewed PR head is `b879e8472547bd820ce81b1b9c0463176fe5151c`.
Its original base is `66849e1475c930fd7732b1a0067ffee7e1e95f60`.
Refreshed main is `418e40eb2572d930b58c1cf9b82b41c0fc7ee08d`.
The original compiler at that main commit is byte-identical to `reference.py`.
Every input in `SOURCES.json` still matches its digest. The PR can therefore
be reviewed against the same default compiler. This does not compare its
speed with the indexed adapters in [PR #175](https://github.com/CrocSwap/integer-mult-bounds/pull/175) or [PR #779](https://github.com/CrocSwap/integer-mult-bounds/pull/779).

## Code and binding audit

`contains` reads two immutable frame descriptions. Its sort key reads the
rank and slot ID. Before a dependent row is found, `ins` changes only the
local elimination basis. It does not change the retired set or any frame.
Both loops thus visit the same eligible slots in the same order. The first
clearing operation is followed by removal of that slot and immediate return.
No later predicate can observe the changed frame. The allocation path is
also unchanged. This proves equality of the emitted word by induction over
calls to `acquire`; the finite runs below are separate regression evidence.

The three changed historical JSON files have exactly four changed fields:

| File | Changed fields |
| --- | --- |
| `research/joint-dual/SOURCE.json` | The compiler digest in `files` |
| `certificates/joint-dual-kappa.json` | The compiler digest in `local_source_sha256` and `source_manifest_sha256` |
| `certificates/joint-dual-validation.json` | `certificate_sha256` |

A recursive, type-sensitive JSON comparison found no other change. These
are source bindings. No numerical field, selected word or paid profile
changed. The historical [PR #626](https://github.com/CrocSwap/integer-mult-bounds/pull/626) / [PR #543](https://github.com/CrocSwap/integer-mult-bounds/pull/543) context belongs to the original
base; it is not the current selected frontier.

## Fresh execution and retained checks

Both sizes ran once, sequentially. The request for lower scheduling priority
failed with `nice: setpriority: Operation not permitted`, so the runs used
normal priority. This diagnostic is outside the compiler receipts.
The actual output paths were new files in the maintenance directory.
The interpreter was Python 3.14.7 on macOS arm64. To reproduce these runs,
use new output paths such as those below:

```sh
python3 -B scripts/experiments/joint_dual_compiler.py --h 23 --output /tmp/reclaim-h23.json --word /tmp/reclaim-h23-word.json.gz
python3 -B scripts/experiments/joint_dual_compiler.py --h 25 --output /tmp/reclaim-h25.json --word /tmp/reclaim-h25-word.json.gz
```

Both commands exited 0. Their decompressed words match the committed
`certificates/joint-dual-word-23.json.gz` and `joint-dual-word-25.json.gz`
byte for byte. Their full receipts match the corresponding `compiled`
objects in `certificates/joint-dual-compiler.json`, with JSON types preserved.
The runs check 34,230 and 44,938 dirty basis vectors in both orientations,
all physical frame inclusions, and the admitted [PR #55](https://github.com/CrocSwap/integer-mult-bounds/pull/55) scalar graph.
`FOLLOWUP-REVIEW.json` records the exact output and log digests.

The three alternating reference/candidate benchmark pairs and the 18-group
validation remain the prior evidence in `BENCHMARK.json` and
`VALIDATION.json`. The reference compiler, native CRT profiles, mutation
suite and complete selected replay were not run again in this follow-up.
No new timing ratio, remote CI result or complete theorem is claimed.

Prepared by Ali Romman with substantial OpenAI Codex assistance. Apache-2.0.
This is an author-side follow-up, not independent human review or a merge
approval.
Loading
Loading