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
1,098 changes: 1,098 additions & 0 deletions research/jp8-transposed-coefficient-work/CERTIFICATE.json

Large diffs are not rendered by default.

63 changes: 63 additions & 0 deletions research/jp8-transposed-coefficient-work/CLAIM.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Local sprint claim: transposed private work

- Track: complex supplier; fresh OS-random seed **25** (`secrets.randbelow(100)`).
- Exact base: `c290b7b919790300e14004a75d8d24b55ca3c5b5`.
- Current accepted result: #741/#589, conditional kappa
`1661202643272239/1000000000000000000`; read its certificate, construction
and maintainer review. This experiment deliberately uses historical #626.
- Exact object: the inverse-transpose companion of the fixed-source JP8
cleanup blocks constructed in #811, including varying magnitudes and
positive numerator-changing source reads.
- Method: transpose each literal private-work circuit in reverse order,
reverse the sign of updates into the original source, and check all dirty
native/private inputs, complete prefix envelopes and all costs. Compare
with #751's equal-coefficient reverse-Horner result. No larger search.
- Deliverable: standalone pinned companion construction, finite exact
certificate, independent block check, negative controls and cost note.
- Expected finish: 06:45 UTC on 2026-10-13; handoff before 06:54 UTC.

Three candidates: (0) CK numerator-changing forward reuse; (1) JP8
inverse-transpose continuation; (2) transport coefficient reuse into #741.
Seed `25 % 3 = 1` selects the second. Candidate 0 repeats the recent forward
mechanism; candidate 2 requires a wider interface audit. This claim concerns
the backward dual, not another forward coefficient search.

Checked open metadata through #811, #751 at
`7a1a3a319da359ec8b6e83230a7fcf7733fac8e5`, #739, #793 and the review ledger.
#751 handles 999 equal-magnitude fan-in runs; #739/#811 report no backward
same-source join. This extends the backward circuit class to the transposes
of their varying-magnitude continuations. #793 changes compensation order.
There is no pinned sprint issue; the issue list only contains #650 about
Discussions. This file is the local coordination fallback. #811 will be
pinned at its completed historical-assembly update, with full attribution.

Contributor: Ryan Haines (@Ryan-Haines), with substantial OpenAI Codex
assistance. Apache-2.0. Result and handoff will be recorded once after checks.

## Result and handoff

Completed: [PR #830](https://github.com/CrocSwap/integer-mult-bounds/pull/830).
All 1,091 backward companions pass; complete backward count is 224,470,
saving 32,810 real primitives and 13,122 beyond #751's equal-coefficient
result. Paired counts are 224,422/224,470. Exact complete prefixes remain
64/101 bits, while 377 isolated prefixes grow (worst ratio 40/9), explicitly
recorded as a limit on blanket transposition arguments. No new kappa.

Literal replay covers 725 arbitrary columns in both orientations; the
independent integer checker covers 6,776 block input columns and the full
backward prefix recurrence. Windows/Linux, 10+4+25 mutation controls, five
optimized/relocated/recompressed packaging tests, Ruff, Git-byte source pins
and current selected-record integrity pass. README.md gives the commands.

Final overlap refresh: 638 open PRs through #825 at 06:33 UTC; no new
transposed-coefficient/fan-in claim was present. #816 is a CK target forest;
#821 audits a global prefix estimate, a different object. #811 and #751
remain at the pinned heads. No pinned coordination issue exists. Main
advanced to `7ee02b7c96d85f22b38d28bd7ed49bb8c1aeb261`; all six consumed
input files are unchanged, and the selected #741 frontier remains separate.

Initial research commit: `0a5e2034c0d537c05a2cc3bb45f5d35ae0e3a668`.
This is the single final claim update. The local workspace also retains
`jp8-transposed-s25.patch` and `jp8-transposed-HANDOFF.txt`, with the final
commit, patch hash and reproduction command, as a submission-independent
handoff. No issue was opened merely to reserve this scope.
90 changes: 90 additions & 0 deletions research/jp8-transposed-coefficient-work/EXPECTED.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"schema": "jp8-transposed-private-work-replay/1",
"base_commit": "c290b7b919790300e14004a75d8d24b55ca3c5b5",
"negative_controls": [
"initial_clear",
"final_clear",
"missed_inverse_sign",
"omitted_target_write",
"forward_instead_of_reverse_order",
"inverted_scale",
"endpoint_neutral_excess_growth",
"frame_crossing",
"wrong_macro_dual",
"forward_source_write"
],
"orientations": {
"forward": {
"columns": 725,
"real_primitives": 224422,
"prefix_l1": "4536094588619580433782972610869617/281474976710656",
"prefix_bits": 64,
"non_scalar_sha256": "1fcf711555d365968ff8b64172090960cf98559865bd858c521c2adc7b12f792",
"paid_profile": {
"1": 2512,
"2": 400,
"3": 448,
"4": 160,
"5": 70,
"6": 8,
"8": 8
},
"original_real_primitives": 257232,
"saved_real_primitives": 32810
},
"backward": {
"columns": 725,
"real_primitives": 224470,
"prefix_l1": "16753412757380464429924108070201913461/8388608",
"prefix_bits": 101,
"non_scalar_sha256": "299442a1d68206eb7f49f0c9789cc8fa410a0615cff9c1900c54b064e901aa21",
"paid_profile": {
"1": 2512,
"2": 400,
"3": 448,
"4": 160,
"5": 70,
"6": 8,
"8": 8
},
"original_real_primitives": 257280,
"saved_real_primitives": 32810
}
},
"certificate_sha256": "8b4a9f4502acc772ebb18e1fd84fba9cdaf479b9b2759a5cd921515bc1f3a171",
"blocks": 1091,
"block_input_columns": 6776,
"unintegrated_budget": {
"adapter_allowances": 437040,
"compiler_charge": 25934336,
"original_local_bound": 11334342462720,
"paired_candidate_local_bound": 11334342429910,
"backward_only_local_bound": 11334342462672,
"new_kappa_claimed": false
},
"comparators": {
"equal_magnitude": {
"blocks": 999,
"backward_saved": 19688,
"backward_primitives": 237592
},
"power_only": {
"blocks": 1015,
"backward_saved": 30026,
"backward_primitives": 227254
}
},
"prefix_scope": {
"isolated_growth_blocks": 377,
"worst_start": 24875,
"worst_ratio": "40/9",
"old_isolated_prefix": "9/2",
"new_isolated_prefix": "20"
},
"prefix_nonmonotonicity_witness": {
"sources": 4,
"coefficient": "-1/4",
"old_prefix": "2",
"transposed_prefix": "4"
}
}
18 changes: 18 additions & 0 deletions research/jp8-transposed-coefficient-work/INDEPENDENT.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"method": "independent integer block matrices and dyadic full-prefix recurrence",
"certificate_sha256": "8b4a9f4502acc772ebb18e1fd84fba9cdaf479b9b2759a5cd921515bc1f3a171",
"blocks": 1091,
"block_input_columns": 6776,
"real_saved": 32810,
"isolated_prefix_growth_blocks": 377,
"complete_backward": {
"real_primitives": 224470,
"prefix_l1": "16753412757380464429924108070201913461/8388608"
},
"negative_controls": [
"initial_clear",
"final_clear",
"inverse_sign",
"neutral_growth"
]
}
71 changes: 71 additions & 0 deletions research/jp8-transposed-coefficient-work/NATIVE.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
{
"status": "PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY",
"v": 112,
"helpers": 492,
"local": {
"forward": {
"all_exact_columns": 716,
"prefix_l1_upper": "4536094588619580433782972610869617/281474976710656",
"prefix_bits_upper": 64,
"charged_payload_bits": 192,
"private_work_erased": true
},
"backward": {
"all_exact_columns": 716,
"prefix_l1_upper": "16753412757380464429924108070201913461/8388608",
"prefix_bits_upper": 101,
"charged_payload_bits": 192,
"private_work_erased": true
}
},
"paid_profiles": {
"forward": {
"1": 2512,
"4": 160,
"8": 8,
"3": 448,
"2": 400,
"5": 70,
"6": 8
},
"backward": {
"1": 2512,
"4": 160,
"8": 8,
"3": 448,
"2": 400,
"5": 70,
"6": 8
}
},
"entering_helpers": 204,
"cold_hyperplane_ended_helpers": 22,
"negative_controls_rejected": [
"wrong_scale",
"missing_center",
"wrong_common_frame",
"wrong_child_rank",
"missing_pre_wrapper",
"missing_post_wrapper",
"wrapper_with_wrong_frame",
"wrapper_in_wrong_phase",
"wrapper_on_a_data_register",
"wrapper_on_a_target_register",
"wrapper_on_a_centre_register",
"hpe_pre_wrapper_resolved_to_full_recipe",
"hpe_post_wrapper_without_terminal_frame",
"hpe_post_wrapper_wrong_terminal_frame",
"hpe_tail_gate_at_full_frame",
"hpe_tail_climb_dropped",
"hpe_helper_exit_adapter_to_full",
"hpe_tail_gate_moved_into_full_cleanup",
"cold_hpe_pre_wrapper_replaced_by_identity_entry_adapter",
"cold_hpe_pre_wrapper_dropped",
"cold_hpe_post_wrapper_replaced_by_exit_adapter",
"cold_hpe_pre_wrapper_resolved_to_cold_full_convention",
"cold_hpe_wrapper_with_nonzero_entrance",
"cold_hpe_post_wrapper_wrong_terminal_frame",
"cold_hpe_premix_gate_before_pre_wrapper"
],
"scope": "Literal forward and inverse-transpose replay on every arbitrary data/helper column, physical frame incidence, ordered paid wrappers, cleared private work and prefix coefficients. Global hosting and outer exponent are separate."
}
121 changes: 121 additions & 0 deletions research/jp8-transposed-coefficient-work/PROOF.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
# Transposing a cleared work stream

## Endpoint identity

Take a fixed-source block `y_j += q_j x`, with `x` distinct from every
target. Targets may repeat. Its live-register matrix is `F = I + B`, where

```text
B = sum_j q_j e_(y_j) e_x^T.
```

Since no `y_j` is `x`, `B^2=0`; hence `F^(-T)=I-B^T`.
The backward block is therefore `x -= sum_j q_j y_j`. Its source registers
are unchanged, so the target updates commute within this block. No order
change across block boundaries is used.

The forward private-work program begins and ends with `clear(w)`. The
pinned constructor proves its live map is `F` and its final work is zero
for arbitrary incoming work. On the enlarged live-plus-work vector its
matrix is consequently `P = diag(F,0)`.

If the original primitive execution is `E_1,...,E_m`, then
`P = E_m ... E_1`. Transposing gives `P^T = E_1^T ... E_m^T`, implemented
by executing the transposed primitives in **reverse order**. Clear is a
self-transpose coordinate projection. Private doubling and halving are
self-transpose diagonal maps. A unit transvection transposes by swapping
source and destination, retaining its sign.

Let `D` change only the live coordinate `x` to `-x`. Then
`D P^T D = diag(I-B^T,0)`, since `D B^T D = -B^T`.
The original program never writes `x`, so its transpose never reads `x`
as the source of an off-diagonal update. The conjugation is implemented
without additional negation gates: simply reverse the sign of every
transposed update **into `x`**. Other transposed update signs stay unchanged.

Thus the concrete compiler is:

1. Reverse the complete primitive list, including both clears.
2. Keep private clears/doublings/halvings as written.
3. Swap source and target of each signed unit update.
4. Reverse that update's sign exactly when its new target is `x`.

This realizes the inverse-transpose live block while killing arbitrary
incoming work and returning it to zero. Each old primitive contributes one
new primitive, so the count is identical, including all source reads and
both clears. This algebraic argument is local to the stated register model;
it does not establish the inherited all-size multiplication theorem.

## Interfaces and complete costs

All affected original events are consecutive scalar additions in the
historical #626 JP8 `full_frame_cleanup`, at frame 1. The candidate generator
checks each backward macro against the exact signed scalar dual of its
forward counterpart. No source is written inside a forward block; no source
is written inside the backward fan-in except its common target. No child,
adapter, wrapper, frame change or private-center event lies inside a block.
All endpoints used by the block have native terminal frame 1.

The shared private stream is cleared before the next external event. Source
and target registers agree at block boundaries for arbitrary dirty inputs.
Non-scalar event streams, helper counts and recursive profiles stay exactly
as pinned. The new schedule needs no extra register or restoration pass.

The construction maps all 1,091 forward blocks, not a selected successful
subset. Their total saving is 32,810 real-component primitives in each
orientation. The backward equal-magnitude and power-only comparators save
19,688 and 30,026 respectively. Including every unchanged scalar primitive
gives 224,422 forward and 224,470 backward. The original adapter/compiler
allowances are retained in the complete unintegrated budget in EXPECTED.json.
No stronger kappa is inferred from this finite constant saving.

## Prefix growth is a separate obligation

Transposition preserves the endpoint and count; it does not in general
preserve the positive prefix envelope. For a simple counterexample, let
four independent source registers each have envelope 1 and the target have
envelope 1. The original backward block performs four additions with
coefficient `-1/4`. Separate preparation has envelope at most 1 and the
target ends at envelope 2, so the maximum is 2. The transposed shared circuit
first accumulates four sources in `w`, reaching envelope 4, then halves twice,
subtracts into the target and clears `w`. Its endpoint is the same but its
maximum is 4. The verifier executes this witness explicitly.

The concrete corpus contains 377 such isolated growth cases. At event span
`[24875,24886)`, common target 336 receives eleven contributions with
magnitudes `1/4,1/4,1/2,1/8,1/4,1/8,1/4,1/2,1/2,1/4,1/2`.
The original isolated maximum is `9/2`; the companion's maximum is `20`.
The certificate records the literal signed circuit and both exact values.
This is the largest isolated ratio in the corpus, `40/9`.

For the complete program, propagate positive envelopes independently of
signed matrix cancellations: additions and subtractions both add source
envelopes; scaling uses the absolute multiplier; clear sets zero. The
Fraction-based literal replay and the independent integer/dyadic recurrence
agree on the exact backward value

```text
16753412757380464429924108070201913461 / 8388608.
```

It is precisely the original 101-bit bound, below `2^192`. The paired
forward construction retains its original 64-bit bound. The finite full
replay, rather than an invalid blanket prefix-invariance rule, discharges
this obligation for these pinned programs.

## Independent finite checks

The second checker consumes literal backward circuits and original macros,
without importing the transpose compiler or the forward constructor. Each
block is executed on independent integer columns at scale `2^d`, where `d`
is at least its total number of halving instructions and every reference
coefficient denominator exponent. All intermediate columns are therefore
integral at that scale; each division is checked for exactness. This checks
6,776 block input columns, including dirty private work.

Its complete-program prefix checker represents positive dyadics as reduced
integer/exponent pairs and expands the original macros separately. It checks
literal costs and the exact full backward prefix, with no Fraction arithmetic.
Mutation controls include missing clears, inverse-sign errors and circuits
with the same endpoint but excessive intermediate growth. These are scoped
finite checks, not a formalization of the general multiplication theorem.
Loading