Skip to content

Research: audit native acceptance of odd scatter multiplicities (no new kappa) - #3210

Open
commdata2338 wants to merge 1 commit into
CrocSwap:mainfrom
commdata2338:scatter-odd-native-audit
Open

commdata2338 wants to merge 1 commit into
CrocSwap:mainfrom
commdata2338:scatter-odd-native-audit

Conversation

@commdata2338

Copy link
Copy Markdown
Contributor

Change and mathematical scope

This answers PR #3004's open next question 3 for one explicit full-size word, the selected PR #589 word. Appending [4,4] to row 0 [4,5,6,7,8] triples an existing slot: the complete symbolic checker and both actual native checkers accept it, and all three exporter artifacts equal the selected baseline byte for byte. Both modes of PR #2992's simple-support guard reject it intentionally. Appending [0,0,0] instead introduces an absent slot: symbolic and exported actions agree but both fail the defining endpoint. PR #2977's paired-absent [0,0] reproduces symbolic acceptance with native rejection.

This is a finite source-bound boundary audit, with a separately written harness and an elementary explanation of the two odd cases. No new parity characterization, supplier admission, physical cost improvement or kappa is claimed. The four synthetic fixtures keep the nine distinct retained helpers and every other word field fixed. Frozen predecessors and the selected result are unchanged.

Fixture Occurrences / scatter ADDs Full symbolic Native legality Native columns Both guard modes
selected baseline 527 / 527 pass pass pass accept
append [0,0] 529 / 528 pass pass reject reject
append [4,4] 529 / 527 pass pass pass reject
append [0,0,0] 530 / 528 reject pass reject reject

Native rank mass stays 5129, with nine COPY/ERASE pairs. The accepted triple has the baseline's 27,234 records and 24,305 total ADDs. Both bad streams have 27,235 records and the same 98-column discrepancy at output 111; dirty input column 472 is a one-bit witness. A textual occurrence count is not the emitted ADD count.

Task and overlap

Base and final refreshed canonical main: 463113d675af7410ac91d53a4fed51ec6494eb9a; priority revision 6, refresh 2026-10-17T17:39:11.388698+00:00, no changed files. Contribution head: 246c7ae12f3f103b05ed80fad0e2a9edde01c3f8.

Task card: research/scatter-odd-native-audit/TASK.json.

  • Task / track: supplier-boundary-audit / adversarial-audit.
  • Catalogue scope key: dcdb0fa8e49b08a958d0; refinement PR3004/odd-existing-versus-absent/native-boundary/four-fixtures.
  • Selection: released PR Audit: exact scatter parity contract at the checker/exporter boundary (no new kappa) #3004 native handoff, before drawing unrelated work; card retrieval nonce 57515e846d560ce80ae4dbd8af60d3af. The empty catalogue existing_checks list was treated as unknown; actual successor coverage was inspected.
  • Object/question: four fixed row-0 variants at real symbolic, exporter, opt-in guard and native legality/column boundaries. Distinguish coefficient agreement, the required endpoint and the chosen producer schema.
  • Scope status: refined; close an explicitly unrun native obligation after the existing scalar and guard work, without reconstructing those as new results.
  • Method/domain: authenticated script snapshots; separate JSON and packed-record F2 evaluation on all 661 dirty columns; serial native replay on 883 five-stage physical columns; exact artifacts/receipts and rejecting controls.
  • Milestone/budget: bounded audit, 60-minute session cap; stop after these fixtures. No search or family expansion. No altered construction bill; hosting, all-size/compiler, precision/tape and analytic obligations remain inherited.
  • Success/falsification: byte-identical baseline/existing-triple artifacts and native receipts; paired/triple-absent native rejections; actual guard rejection before output creation. Any discrepancy fails replay.
  • Artifact: research/scatter-odd-native-audit/; reproduction below.

Canonical claim in discussion #2976, following the #1166 handoff.

Exact predecessor/context heads:

Offline overlap queries covered the card, odd-multiplicity, simple-scatter, native scatter and scatter-odd-native. Latest complete snapshots: 251 open PRs at 2026-10-17T17:37:12.534077+00:00; 2,015 discussion records at 17:39:04.580509+00:00. Retained main archives and the canonical thread were inspected. A closing scan of the complete snapshots at 17:49:11Z (253 open PRs) and 17:52:04Z (2,017 Discussion records) found only this claim and PR #3004's finding for this object. This is metadata/local-package coverage, not a claim to cover arbitrary diffs or unpublished work.

Validation

python3 -B scripts/research_baseline.py
python3 -B scripts/research_package.py --package research/scatter-odd-native-audit --check-only
python3 -B scripts/research_package.py --package research/scatter-odd-native-audit
python3 -I -O -B research/scatter-odd-native-audit/verify.py --native
python3 scripts/check_research_commit.py --package research/scatter-odd-native-audit

Observed locally (CPython 3.12.3, Ubuntu GCC 13.3.0, Linux):

"status": "PASS_RESEARCH_BASELINE_BINDINGS_ONLY"
PASS_PACKAGE_METADATA_AND_PINS (not a mathematical acceptance check)
PASS_SCATTER_ODD_BOUNDARY fixtures=4 columns=661 guarded_duplicates_rejected=3
Ran 7 tests ... OK
PASS_REGISTERED_RESEARCH_PACKAGE research/scatter-odd-native-audit outcome=completed
PASS_SCATTER_ODD_NATIVE legality_accepts=4 columns_accept=2 columns_reject=2 controls=2
PASS_RESEARCH_COMMIT_BYTES {"commit": "246c7ae12f3f103b05ed80fad0e2a9edde01c3f8", "files": 22, "package": "research/scatter-odd-native-audit"}

The registered primary replay (about 10 s) and all seven behavioral groups pass; the explicit native replay takes about 15 s. Compiles are serial and use the source-pinned checked-128-bit cpp_int stand-in, with a backend-selection probe. This is not a fresh system-Boost build.

Controls: exact one-bit dirty witness; all 64 assignments of a separate six-register scalar fixture; malformed COPY/ERASE lifetimes; every live input corrupted in turn; occupied output preservation; separate check-only and export-only validator bypass mutants; occupied receipt refusal; omitted scatter ADD and truncated native stream. The two native bad-word rejections produce no success receipts.

Publication byte check passed for all 22 package/input files. The exact commit was exported with scripts/export_research_package.py, checked, and extracted into a read-only Git-free tree. Optimized native replay (14.729 s) and all seven behavioral groups (2.376 s) passed there; all 23 files including the export manifest remained byte-identical. Full native receipts are retained in NATIVE.json; only verified elapsed times and a temporary stream path are normalized. RESULT.json retains all scalar discrepancies and exporter hashes.

Not checked: full selected cold ancestry; a new generator/tuner replay; native system-Boost or second-compiler reproduction; physical hosting/projector/bank realization; all-size/compiler, precision/tape and analytic transfer; supplier adoption; hosted CI; independent human or proof-kernel review. Native replay is explicit (--native) and is not silently included in the standard-library registered hook.

Credit

Nick Petalas (#2977) retains discovery, counterexample, dirty-witness, candidate-guard and earlier native-control credit. Arham Tahir (#2992) supplied the operational guard. Hiroki Kumazaki / Kumagi (#3004) supplied the contract/count audit and this handoff. James Reed / jwr404 (#3099) supplied duplicate-boundary corroboration; Sricharan Vagvala / theon199 (#3128) supplied the retained-alias premise correction. eumemic and DreamingOfClouds retain the PR #543/#555/#589 word/checker lineage; Dylan Crow wrote the exporter and the NCOPY generalization of the PR #346/#352 native cohort checkers (LJH-217, DaysSky); Sagar Thakrar supplied the checked cpp_int stand-in; Douglas Colkitt supplied selected bindings and review. All original notices and Apache-2.0 licensing remain intact.

Prepared for commdata2338 (@commdata2338), with substantial OpenAI Codex assistance.

AI assistance: submitted by @commdata2338 with substantial AI assistance. OpenAI Codex (GPT-6 Astra) did the derivation, the implementation, the checking and the writing; it was packaged and submitted with Claude Code. No independent human review is claimed.

Open next questions

The package README and TASK.json retain the actual decision: should a separately versioned successor retain simple supports, or admit multiplicity while binding emitted ADD counts and retained-slot semantics? Start with this four-fixture table and PR #3128's alias premise. Maintainer source-binding/admission review and complete supplier obligations remain blockers. No further local search is justified by this result alone.

Workflow feedback (optional)

The explicit PR #3004 open question made the useful contribution clear. The central card's existing_checks is empty despite retained #2992/#3004/#3099/#3128 follow-ups; adding those coverage pointers would reduce repeated rediscovery without treating archival intake as scientific admission.

🤖 Generated with Claude Code

https://claude.ai/code/session_01X86sCSXdoDd61SDFfC1PKG

…ew kappa)

Answers PR CrocSwap#3004's third open question for one full-size word. Row 0
[4,5,6,7,8] of the selected PR CrocSwap#589 bit word is extended four ways and
each word runs through the unchanged symbolic checker, record exporter,
both entry modes of PR CrocSwap#2992's simple-scatter-v1 guard and the native
legality and five-stage column checkers. Appending [4,4] triples an
existing slot: the symbolic and both native checkers accept it, and all
three exporter artifacts and both native receipts equal the baseline
byte for byte (27,234 records, 24,305 ADDs, rank mass 5129, nine
COPY/ERASE pairs). Appending [0,0,0] triples an absent slot: symbolic
and exported actions agree, but both miss the required endpoint at
output 111 (98 columns; dirty input 472 is a one-bit witness), and the
full symbolic and native column checkers reject it. PR CrocSwap#2977's paired
[0,0] reproduces symbolic acceptance with native rejection. The guard
rejects all three repeated rows before creating output, as its stricter
schema intends. Native legality accepts all four words, so legality
does not certify the endpoint. Occurrence counts are not emitted ADD
counts: the accepted triple has 529 occurrences and 527 scatter ADDs.

This is a finite, author-checked audit with a separately written
harness. Native builds use the pinned checked 128-bit cpp_int stand-in.
No schema decision, supplier adoption, cold ancestry, system-Boost
build, physical hosting or kappa change is claimed.

Adds research/scatter-odd-native-audit/ only.

Submitted by @commdata2338 with substantial AI assistance (OpenAI Codex
research and implementation; packaged with Claude Code).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X86sCSXdoDd61SDFfC1PKG
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant