conformance: promote 5 wide GF rungs (gf48/gf96/gf128/gf512/gf1024) selfconsistent -> strict SW-bitexact (63->68/83)#1233
Merged
Conversation
added 3 commits
June 30, 2026 18:49
…3/83) Closes #1230 gf14 переходит из bitexact_selfconsistent в строгий SW-bitexact. Добавлен независимый второй декодер conformance/gf14_independent_witness.py (с нуля по параметрам каталога SSOT s=1 e=5 m=8 bias=15 u16, fractions.Fraction, abs_error=0). По всем 14 векторам: generator == независимый свидетель, 0 расхождений. Гейты локально: Check C sha OK (drift 0); gf14 не в failures; failure-set идентичен master; selfconsistent selftest 13/0; catalog count 83==83; INDEX bitexact 62->63, selfconsistent 6->5.
Satisfies check-now-freshness gate (every PR must touch docs/NOW.md, issue #141). Conformance gate unchanged: Check C sha OK, failure-set identical to master.
…xact (63->68/83) Closes #1232 gf48/gf96/gf128/gf512/gf1024 move from bitexact_selfconsistent to strict SW-bitexact. Adds one parametric independent second decoder conformance/gf_wide_independent_witness.py that decodes each rung from scratch by the SSOT catalog params (s/e/m/bias) into canonical dyadic form odd_num*2^shift and compares EXACTLY (abs_error=0) without ever materializing the giant 2^bias integers (bias up to ~2.5e120 for gf1024). All 15 vectors per rung match the generator (75 vectors total, 0 mismatches); edge cases hand-verified by a second path. Vectors UNCHANGED; only kind/source/format_notes/structural_reason metadata + the witness. INDEX: bitexact 63->68, selfconsistent 5->0, structural 15. catalog stays 83. Gates: wp18_conformance_gate Check A/B/C/D OK (drift 0, recount [83,68,0,15], 0 mismatches over 2448 finite rows), no rung in any failure list, failure-set IDENTICAL to master (pre-existing gf16/bfloat16 allowlist only). wp18_gate_selfconsistent_selftest 13 PASS/0 FAIL. catalog count 83==83. decode-HW/compute-HW unaffected; encoding-conformance only.
This was referenced Jun 30, 2026
This was referenced Jul 1, 2026
gHashTag
added a commit
that referenced
this pull request
Jul 1, 2026
The check-now-freshness job validated docs/NOW.md 'Last updated' against the UTC window [YESTERDAY_UTC .. TODAY_UTC], producing a systematic false-negative for east-of-UTC contributors (maintainer is UTC+07): a local 'today' date is rejected as 'too old' while UTC is still on the previous day. Observed on PR #1231 (NOW.md=2026-07-01, UTC=2026-06-30), which blocked the stacked conformance-promote chain #1231 -> #1233. Widen the window to [YESTERDAY_UTC .. TOMORROW_UTC]: tomorrow is accepted so any east-of-UTC local 'today' passes; older-than-yesterday still fails (stale-NOW protection); newer-than-tomorrow still fails (typo protection); a missing 'Last updated:' line now fails with a clear message. ISO-8601 zero-padded dates compare correctly as strings. CI/workflow-only; catalog stays 83; no spec or conformance vector touched. Closes #1234 Co-authored-by: gHashTag <admin@t27.ai>
This was referenced Jul 1, 2026
gHashTag
changed the base branch from
feat/conformance-promote-gf14-bitexact
to
master
July 1, 2026 12:02
…omote-wide-rungs-bitexact # Conflicts: # conformance/vectors/INDEX_all_formats.json # docs/NOW.md
Contributor
|
📓 NotebookLM Notebook linked to this PR
This notebook contains session context, decisions, and artifacts for this work. |
Contributor
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Promotes the five wide GoldenFloat rungs gf48, gf96, gf128, gf512, gf1024 from
bitexact_selfconsistentto strict SW-bitexact. Stacked on #1231 (gf14 promote) — base is the gf14 branch so this diff contains only the wide-rung change.Closes #1232.
What
conformance/gf_wide_independent_witness.py, written from scratch against the SSOT catalog params (s/e/m/bias per rung). It decodes each value into canonical dyadic formodd_num * 2^shiftand compares exactly (abs_error=0) WITHOUT ever materializing the giant2^biasintegers — bias reaches ~2.5e120 (a 391-bit exponent field) for gf1024, which previously blew up a naiveFraction(2)**(exp-bias)decoder.kind/source/format_notes/structural_reasonmetadata + the new witness.Honesty
These rungs were honestly recorded as
bitexact_selfconsistentin #1146 (single decode law, dyadic-exact, no independent second witness — only gf16 had the Corona silicon ROM oracle). The strict SW-bitexact criterion is an independent second decoder with abs_error=0, NOT silicon. Same standard as gf14 (#1230), takum8 (#1223), the six in #1224. No quality/silicon/energy claim. decode-HW/compute-HW unaffected; encoding-conformance only.Gates (local)
wp18_conformance_gate: Check A 83==83, Check B recount [83,68,0,15], Check C sha freshness drift 0, Check D/D2 0 mismatches over 2448 finite rows. No rung in any failure list. Verdict/failure-set IDENTICAL to master (sole Check-E fails are pre-existing gf16/bfloat16 allowlist tolerance rows).wp18_gate_selfconsistent_selftest: 13 PASS / 0 FAIL.check_catalog_count: 83 == 83.Anchor: phi^2 + phi^-2 = 3