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
94 changes: 94 additions & 0 deletions research/qq16-f0-dirty-ray-magnitude/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
# Intermediate magnitudes on one F0 dirty-helper ray

**Scoped scalar ledger. No new exponent.**

On the common-chart scalar projection of the literal reviewed `programs.F_0`
word, the initial state `L359 = T` (every data and private register zero)
reaches intermediate coefficient **128T in data register L103** and **68T in
helper L609**. The same word then restores that input exactly. The published
cut used by the restoration-preserving fault is only **4T**. Selected κ stays
`0.001672660197076918`.

This is the intermediate ledger asked for by one ray. It is not a bound for
every dirty helper, not a Hilbert-norm certificate, and not an F17 consumer bill.

## Statement

Expand `programs.F_0` exactly as the scalar fault audit does: 26,099 events,
of which 21,025 are scalar. Non-scalar events do not change this projection.
Coefficients below are for `T = 1`; the word is linear and homogeneous, so the
`T` ray is the same scan multiplied by `T`.

| Class | Peak absolute coefficient | First attained | Gate, frame annotation |
| --- | ---: | --- | --- |
| Data `L0..L223` | 128 | after event 24280, `L103 = -128` | `L103 += 64 L354`, annotation `1` |
| Helpers `L224..L703` | 68 | after event 24338, `L609 = 68` | `L609 += -34 L354`, annotation `1` |
| Private `C0..C7` | 0 | — | never written on this ray |

Immediately before the data-peak add, `L103 = -64` and `L354 = -1`. A relative
destination defect `u(|d| + |c| |s|)` at that add therefore has allowance
**128 u T**. The coefficient `-128` then sits only in `L103` across the next
154 scalar states. At the published fault index 24438 the pre-state is still
`L39 = -4`, `L359 = 1`, and the final state is exactly the input.

The data ray `L112 = 1` is the control. Its largest absolute coefficient is 1,
every helper and private register stays 0, and it also restores exactly. At
event 24438 that ray contributes nothing to `L39` or `L359`.

A unit injection into `L103` after event 24280 does **not** preserve helper
restoration. Its final image has 78 nonzero data fields, maximum `1/16`, and
71 nonzero helpers, maximum `17/32`. The published fault at event 24438 is a
different site: there the helpers restore and the completed data factor is
`4 u T`. The intermediate peak does not replace that necessary reserve.

## What this does not say

`||F|| <= 58` in the #2965 completed-output contract is a bound on the finished
data map. An intermediate register coefficient 128 does not contradict it.
Frame annotation `1` is the word's label at the two peak adds. This package
does not load native frame vectors, so it does not promote 128T or 68T to
payload Hilbert norms. Exact execution of this ray has completed data error 0;
the peak is not an exhibited rounding failure.

Open [PR #3552](https://github.com/CrocSwap/integer-mult-bounds/pull/3552)
compares four stored final magnitudes with the #2965 tolerance and does not
replay intermediate states. The scalar-projection digest here equals that
package's published `scalar_projection_sha256`.

## Reproduce

From the repository root, CPython 3.12:

```sh
python3.12 -B research/qq16-f0-dirty-ray-magnitude/verify.py
python3.12 -B research/qq16-f0-dirty-ray-magnitude/test_verify.py
python3.12 -B scripts/research_package.py --package research/qq16-f0-dirty-ray-magnitude
```

`verify.py` is read-only. Dense lists and sparse dictionaries are separate
forward scans; both must report the same peaks, cut and final state. The tests
use a three-operation synthetic word and change the peak coefficient from 64
to 63. The full literal scan takes well under a minute.

## Open next questions

1. Do the frame annotations `1` at events 24280 and 24338 denote the constant
payload vector, so the Hilbert norms are exactly 128T and 68T? The native
dirty-fault package already checks frame 1's canonical vector on its own
witness; this ledger does not.
2. Is register 359 special, or does another helper force an intermediate data
coefficient at least this large? A uniform dirty range has to cover the
worst ray. Only this ray was scanned.

## Credit

The literal F0 word and scalar projection are the reviewed joint-query
program. Arham Tahir's `qq16-producer-dirty-fault` package supplies the
expansion, the cut `(-4, 1)`, and the final-defect formula this ledger does
not replace. Nick Petalas's #2965 contract supplies the completed-output norm
`||F|| <= 58` and the open producer-interior question. Ali Romman and the
joint-query lineage retain the program. Tekalign's native binding is the
frame-vector predecessor named above and is not replayed here.

Prepared by unpaidmoon, with substantial assistance from Grok 4.7 in Cursor.
Apache-2.0. No independent human review is claimed.
36 changes: 36 additions & 0 deletions research/qq16-f0-dirty-ray-magnitude/SOURCES.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"schema_version": 1,
"base_commit": "bb4bccbf42844d2801487450727c2f63e10d1d0f",
"files": [
{
"path": "certificates/selected-result.json",
"usage": "provenance",
"git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81",
"sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129"
},
{
"path": "docs/research/agent-task-catalog.json",
"usage": "provenance",
"git_blob": "67f085acd86acd7d4e03922d9cf4b26bca66fed5",
"sha256": "47b42433f5a85809a3aadd29c2c339da2c6ed728e4f7762df6b88bccb7874cf0"
},
{
"path": "research/joint-query/certificate.json.gz",
"usage": "input",
"git_blob": "c6e876d8b48d768214deee265ade428f8983b566",
"sha256": "a5ed85fac5ebf3c091482a113ab0d351eb5a7892fe2841a35e16017ec1ff49f7"
},
{
"path": "research/qq16-producer-defect-transfer/README.md",
"usage": "input",
"git_blob": "16903a0090c020d033d24712cce11c633031e688",
"sha256": "30cf4389425f7704b1ed45af6cf4b5165e7b5c04af5077640ac96399c61cd703"
},
{
"path": "research/qq16-producer-dirty-fault/RESULT.json",
"usage": "input",
"git_blob": "fbead079e26a5e29f2d7926311f392d6a64d5c2b",
"sha256": "e48a14b6b8505cbd4721e379b26f80ace7d96f360a409cc6b18a9701153f3282"
}
]
}
86 changes: 86 additions & 0 deletions research/qq16-f0-dirty-ray-magnitude/TASK.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
{
"schema_version": 1,
"task_id": "joint-query-controller",
"priority_revision": 6,
"base_commit": "bb4bccbf42844d2801487450727c2f63e10d1d0f",
"original_card": {
"id": "joint-query-controller",
"question": "Can a literal QQ16 producer meet the proposed completed-output error budgets with dirty helpers and an affordable physical consumer?",
"starting_points": [
"docs/research/research-family-status.md",
"research/joint-query/README.md",
"research/joint-query/evidence/QQ16-SELECTED-WITNESS.md",
"research/joint-query/evidence/JOINT-QUERY-TRANSFER.md",
"docs/research/community-efficient1000-review.md",
"research/qq16-producer-defect-transfer/README.md"
],
"methods": [
"Derive one literal producer's completed-output defects and intermediate dirty-helper bounds, with its physical bill.",
"Design or audit one consumer, retention or hosting boundary and its complete cost for the pinned producer/decoder."
],
"acceptance_gate": "Name the changed premise of the fixed F0/B1 observation obstruction. Show exactly which query is recovered, legal native reads and restoration, and a full favorable budget including cover maps, helpers and endpoints. Local inverse identities alone do not close the global controller. A scoped local result may be retained without a complete supplier. Expanding it into further construction rounds requires the family-level budget and obligation gate in research-family-status.md; an optimistic passing relaxation alone is not acceptance.",
"first_step": {
"command": [
"python3",
"-B",
"scripts/research_baseline.py"
],
"expected": "PASS_RESEARCH_BASELINE_BINDINGS_ONLY",
"inspect": "Read the revision-6 family record and #2965 producer-defect transfer after the local QQ16 decoder contract. Its author-checked output-error estimate does not implement producer interiors, bound dirty helpers, or pay for the consumer; independently check the implication used.",
"scope": "Source-bound orientation only. Read the named package and review before relying on its local evidence; this command is not its replay or supplier admission."
},
"first_experiment": "Pin one literal F0/B1 producer and its native-child contracts; derive the actual intermediate magnitude ledger and completed-output defects, including dirty helpers and correlations. Compare with #2965 budgets and price storage, movement, cleanup and F17 consumption. Stop with a precise missing bound if no producer contract supplies it; do not optimize another decoder precision constant in isolation.",
"bottleneck_link": "The native local words exist; retained query information and its physical access are the missing link to a composed recursive interface.",
"allowed_variations": [
"One paid query, one changed first pair, or one precisely specified affine helper state.",
"A counterexample or lower bound for that exact proposed repair.",
"One unresolved obligation of a newer local decoder, with exact source heads and a distinct claim/domain."
],
"scope_change_triggers": [
"Retaining the fixed first pair and ordinary schedule while allowing only homogeneous selected-only control, already excluded by the witness.",
"Treating cover-map counts as zero-cost physical address operations.",
"Recreating the pending complete local decoder or early-record/output-bank coalescing already under investigation without a distinct audit or changed premise.",
"Treating a completed-output defect inequality as a producer-interior, dirty-range or physical-cost certificate."
],
"overlap_terms": [
"QQ16",
"joint-query",
"changing-chart controller",
"selected observation",
"1969",
"2540",
"early record",
"output-bank retention",
"complete native decoder",
"2965",
"producer defect",
"dirty-helper range",
"F17 consumer"
]
},
"scope_status": "refined",
"actual_scope": "On the common-chart scalar projection of the literal reviewed F0 word, ledger the intermediate coefficient magnitudes of the single dirty-helper ray L359=T with all data and private inputs zero, and of the data ray L112=1.",
"scope_change_reason": "The card asks for one literal producer's intermediate magnitude ledger, including dirty helpers. Open PR #3552 already compares the four stored final L359 magnitudes with the #2965 F0 tolerance and does not replay the word. This package replays the scalar projection far enough to name the intermediate peaks. It does not build the F0/B1 physical producer, a dirty-input range for every helper, or an F17 consumer bill.",
"bottleneck_link": "PR #2965 prices completed outputs and leaves producer interiors and dirty-helper ranges open. On this ray the exact scalar word restores its input, but a data register reaches coefficient 128T and a helper reaches 68T first. The completed-output statement ||F||<=58 does not bound those intermediate registers, so a relative-defect budget that looks only at the published cut coefficient 4T understates the local allowance at the data-peak add.",
"budget_minutes": 60,
"stop_rule": "Stop after these two rays and the unit injection at the data-peak add. Do not search other helpers, replay native 512-vectors, or price F17 consumption.",
"outcome": "completed",
"evidence": "Dense and sparse forward scans agree. Dirty ray peaks are data 128 at L103 after event 24280, helper 68 at L609 after event 24338, and private 0. The data peak is the ADD L103 += 64*L354 from (-64,-1) in frame annotation 1; its relative allowance is 128 u T. That coefficient 128 then occupies only L103 for 154 following scalar states. The published cut at event 24438 is still (-4,1), and the final state is exactly the input. The data ray peaks at 1 and leaves every helper and private register zero. A unit injection after event 24280 ends in 78 data fields, maximum 1/16, and 71 nonzero helpers, maximum 17/32, so this site is not the restoration-preserving fault at event 24438. Selected kappa is unchanged.",
"author": "unpaidmoon",
"ai_assistance": "Substantial assistance from Grok 4.7 in Cursor for the ledger, checker and writeup.",
"open_questions": [
{
"question": "Do frame annotations 1 at events 24280 and 24338 denote the constant payload vector, so the Hilbert norms are exactly 128T and 68T?",
"why_it_matters": "The scalar coefficients are proved here. A physical norm needs the native frame vector at those events; frame label 1 is the annotation, not this package's vector identity.",
"first_step": "Bind these two scalar events to the frame-1 canonical vector already checked by research/qq16-native-dirty-fault, without replaying the whole native word.",
"blocked_by": "This package does not load native recipes or frame vectors."
},
{
"question": "Does every one of the 480 helpers force an intermediate data coefficient at least this large, or is L359 special?",
"why_it_matters": "A uniform dirty-helper range has to cover the worst ray. One ray shows that 4T, the published cut coefficient, is not an intermediate bound.",
"first_step": "Repeat the sparse scan for one other helper index and compare its data peak with 128.",
"blocked_by": "Only register 359 was scanned."
}
],
"no_new_kappa": true
}
23 changes: 23 additions & 0 deletions research/qq16-f0-dirty-ray-magnitude/VERIFY.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"schema_version": 1,
"status": "ready",
"python": "3.12",
"requirements": [],
"inputs": [
"research/joint-query/certificate.json.gz",
"research/qq16-producer-defect-transfer/README.md",
"research/qq16-producer-dirty-fault/RESULT.json"
],
"commands": [
{
"argv": ["{python}", "-B", "{package}/verify.py"],
"timeout_seconds": 120,
"checks": "Dense and sparse forward scans of the F0 scalar projection: dirty-ray peaks 128 and 68, data-ray peak 1, exact restoration, and the non-restoring unit injection at event 24280."
},
{
"argv": ["{python}", "-B", "{package}/test_verify.py"],
"timeout_seconds": 180,
"checks": "Synthetic peak, coefficient-63 mutation of event 24280, and the published ledger constants."
}
]
}
52 changes: 52 additions & 0 deletions research/qq16-f0-dirty-ray-magnitude/test_verify.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/usr/bin/env python3
"""Failure controls for the F0 dirty-ray magnitude ledger."""
import importlib.util
from fractions import Fraction as Q
from pathlib import Path

HERE = Path(__file__).resolve().parent
spec = importlib.util.spec_from_file_location("dirty_ray", HERE / "verify.py")
verify = importlib.util.module_from_spec(spec)
spec.loader.exec_module(verify)


def synthetic():
word = [["phase", 0] for _ in range(verify.WIDTH)]
word[0] = ["scalar", ["add", ["L", 1], ["L", 2], 3, 1], 4]
word[1] = ["scalar", ["add", ["L", 400], ["L", 2], -5, 2], 4]
# Keep the published fault index inside the word without using it.
while len(word) <= verify.FAULT:
word.append(["phase", 0])
word[verify.FAULT] = ["scalar", ["add", ["L", 39], ["L", 359], 4, 1], 1]
return word


def main():
word = synthetic()
summary = verify.project(word, 2, sparse=False)
other = verify.project(word, 2, sparse=True)
if summary["peaks"] != other["peaks"]:
raise SystemExit("synthetic representations disagree")
if summary["peaks"]["data"] != 3 or summary["peaks"]["helper"] != Q(5, 2):
raise SystemExit("synthetic peak moved")
if summary["peaks"]["data"] == 128:
raise SystemExit("synthetic word reused the F0 constant")
packet, _receipt = verify.load(verify.ROOT)
literal = verify.expand(packet)
tampered = [event[:] for event in literal]
gate = tampered[24280][1][:]
gate[3] = 63
tampered[24280] = ["scalar", gate, 1]
moved = verify.project(tampered, verify.DIRTY, sparse=True)
if moved["peaks"]["data"] == 128:
raise SystemExit("coefficient 63 still reported the published peak")
result = verify.audit(verify.ROOT)
if result["dirty_peaks"] != {"data": "128", "helper": "68", "private": "0"}:
raise SystemExit("published ledger moved")
if result["data_ray_peaks"]["data"] != "1":
raise SystemExit("data-ray control moved")
print("PASS_QQ16_F0_DIRTY_RAY_MAGNITUDE_TESTS groups=3")


if __name__ == "__main__":
main()
Loading