code wiki / _hdl_build / nx_alu_divider_exhaustive_test.nx
nx_alu_divider_exhaustive_test.nx
buildroot/runtime/_hdl_build/nx_alu_divider_exhaustive_test.nx
about
nx_alu_divider_exhaustive_test.nx -- the divider EXCEED on the VERIFICATION
dimension: prove the synthesized divider correct over the ENTIRE 8-bit input
space (all dividends 0..255 x all divisors 1..255 = 65280 pairs), quotient AND
remainder, 1:1 vs behavioral.
MEET (floor) = a correct divider on a few vectors. EXCEED (this) = correctness
PROVEN-BY-CONSTRUCTION at 100% input-space coverage -- the guarantee incumbent
synthesis flows (Yosys/ABC) do NOT give (structural-only; can silently
miscompile -- the SynFuzz finding). Named incumbent: an unverified emitted
divider. Measurable dimension: verified-coverage = 100% (65280/65280).
(This is the VERIFICATION exceed; the PERFORMANCE exceed = radix-4 SRT fewer
stages, scoped next by the exceed-calibration. Honest: don't conflate them.)
Known answer (FAIL LOUD): "65280 65280 " (ok, total). exit 0 iff ok == total.
dependencies 1 imports · 0 importers
imports: nx_alu_divider.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 19 | func _emit_num(v: i64) -> i64 called by 1: main |
| 27 | func _nl() -> i64 { let z: *u8 = sys_mmap(2); z[0] = 10; sys_write(1, z, 1); return 0 } called by 1: main |
| 29 | func main() -> i64 |