Skip to content

Commit bc70a05

Browse files
gHashTaggHashTag
andauthored
promote bcd → strict bitexact (2-digit packed instance, 3 witnesses) (#1319)
* feat(conformance): promote bcd -> strict bitexact (2-digit packed instance) BCD was structural (generic variable-width, u4_per_digit, no single layout). This pack fixes the concrete 2-digit packed instance (8-bit: tens[7:4]*10 + ones[3:0], range 0..99) - the same instance decoded on AX7203 silicon (corona-decode-bcd, HW Tier-E 100/100) and iverilog-witnessed on bcd_decode.v. Vectors: 100 valid codes 00..99 (exhaustive over the valid range), abs_error=0. Three independent witnesses recorded: 1. Python golden (tens*10+ones, integer exact) - 100/100 abs_error=0 2. iverilog 13.0 sim of bcd_decode.v - 256/256 bit-exact (incl. invalid-nibble mod-128 + valid flag), independent of the Python oracle 3. FPGA HW (corona-decode-bcd, AX7203 IDCODE 0x13636093) - 100/100 @160000 INDEX: bitexact_packs 69 -> 70, structural_packs 14 -> 13. Generic-BCD variable-width nature noted in catalog.instance + format_notes; invalid nibbles (0xA..0xF) excluded from the round-trip claim (documented policy). Per recipe-sw-bitexact gate (independent decoder + exact oracle + 2nd witness). Status tag: [verified SW] (iverilog) + [izmereno na kremnii] (HW Tier-E). Catalog = 83 unchanged. Closes #1321 * fix(conformance): ASCII-only bcd pack + refresh INDEX sha + NOW sync - Replace em-dash (U+2014) with ASCII hyphen in bcd_conformance_v0.json (fixes integrity-gate Check D parse error: ascii codec byte 0xe2). - Refresh bcd sha256 in INDEX_all_formats.json to match file byte-for-byte (fixes integrity-gate Check C sha_drift). - Add docs/NOW.md entry for the bcd promotion (fixes check-now-freshness). No vector values changed; 100/100 abs_error=0 unchanged. Catalog = 83. Closes #1321 --------- Co-authored-by: gHashTag <admin@t27.ai>
1 parent 9236718 commit bc70a05

3 files changed

Lines changed: 1142 additions & 16 deletions

File tree

conformance/vectors/INDEX_all_formats.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
"preprint": "https://arxiv.org/abs/2606.05017",
66
"total_formats": 83,
77
"total_packs": 83,
8-
"bitexact_packs": 69,
8+
"bitexact_packs": 70,
99
"selfconsistent_packs": 0,
10-
"structural_packs": 14,
10+
"structural_packs": 13,
1111
"packs": [
1212
{
1313
"id": "binary16",
@@ -513,10 +513,10 @@
513513
{
514514
"id": "bcd",
515515
"file": "bcd_conformance_v0.json",
516-
"kind": "structural",
517-
"n_vectors": 0,
518-
"source": "generated by gen_all_formats.py",
519-
"sha256": "42de461e6878d7a8b891f72b07c9158ac4cc1c92c5dbfbdbbe0c46c60429dd29"
516+
"kind": "bitexact",
517+
"n_vectors": 100,
518+
"source": "2-digit packed BCD instance; iverilog-witnessed (256/256) + HW Tier-E",
519+
"sha256": "637912a0b8d1a4a1e5a50ddafa2c6dbc8e44c7e96218fb8c70763bc69de505cb"
520520
},
521521
{
522522
"id": "ibm_hfp32",
@@ -663,4 +663,4 @@
663663
"sha256": "fc2a0a6dcce7bbb0eccc1e23ebdacb9abbd81cd54111796be6dc7e6a87a2071a"
664664
}
665665
]
666-
}
666+
}

0 commit comments

Comments
 (0)