code wiki / _hdl_build / nx_cost_oracle_test.nx
nx_cost_oracle_test.nx source
↩ module page · 56 lines · 4620 B
1// nx_cost_oracle_test.nx -- canonical counted-cost contract gate.
2// Numerical cases are explicit test vectors, not production thresholds. This gate
3// establishes comparator behavior, not measured renderer performance or lower latency.
4// license_tier: ORIGINAL; expect_exit: 0
5import "nx_cost_oracle.nx"
6import "nx_syscalls.nx"
7import "nx_gate_verdict.nx"
8
9func main() -> i64 {
10 let ctr: *i64 = gv_ctr()
11 gv_head("COST ORACLE: validated counted-cost comparison; no latency claim" as *u8)
12 let a_wall: *i64 = sys_mmap(3*8) as *i64
13 let b_wall: *i64 = sys_mmap(3*8) as *i64
14 let a_insn: *i64 = sys_mmap(3*8) as *i64
15 a_wall[0] = 10; a_wall[1] = 12; a_wall[2] = 9
16 b_wall[0] = 8; b_wall[1] = 15; b_wall[2] = 11
17 a_insn[0] = 3; a_insn[1] = 3; a_insn[2] = 3
18
19 gv_check("wallclock-remains-unadmitted" as *u8, co_metric_deterministic(CO_WALLCLOCK) == 0, ctr)
20 gv_check("instruction-kind-admitted" as *u8, co_metric_deterministic(CO_INSN) == 1, ctr)
21 gv_check("toggle-kind-admitted" as *u8, co_metric_deterministic(CO_TOGGLES) == 1, ctr)
22 gv_check("bytes-kind-admitted" as *u8, co_metric_deterministic(CO_BYTES) == 1, ctr)
23 gv_check("unknown-positive-kind-rejected" as *u8, co_fair_verdict(CO_BYTES+1, 3, 5, 1) == CO_REJECT, ctr)
24 gv_check("unknown-negative-kind-rejected" as *u8, co_fair_verdict(0-1, 3, 5, 1) == CO_REJECT, ctr)
25 gv_check("unknown-extreme-kind-rejected" as *u8, co_fair_verdict(CO_I64_MAX, 3, 5, 1) == CO_REJECT, ctr)
26 gv_check("wallclock-verdict-rejected" as *u8, co_fair_verdict(CO_WALLCLOCK, 10, 8, 1) == CO_REJECT, ctr)
27 gv_check("unequal-samples-detected" as *u8, co_reproducible(a_wall, 3) == 0, ctr)
28 gv_check("equal-samples-detected" as *u8, co_reproducible(a_insn, 3) == 1, ctr)
29 gv_check("empty-samples-not-evidence" as *u8, co_reproducible(a_insn, 0) == 0, ctr)
30 gv_check("negative-sample-count-refused" as *u8, co_reproducible(a_insn, 0-1) == 0, ctr)
31 gv_check("null-sample-buffer-refused" as *u8, co_reproducible(0 as *i64, 1) == 0, ctr)
32 gv_check("single-sample-remains-trivial-equality" as *u8, co_reproducible(a_insn, 1) == 1, ctr)
33 gv_check("rank-reversal-observed" as *u8, co_wallclock_flips(a_wall, b_wall, 3) == 1, ctr)
34 gv_check("null-rank-buffer-not-reversal" as *u8, co_wallclock_flips(0 as *i64, b_wall, 3) == 0, ctr)
35 gv_check("equal-cost-zero-margin-is-tie" as *u8, co_fair_verdict(CO_INSN, 5, 5, 0) == CO_TIE, ctr)
36 gv_check("zero-cost-zero-margin-is-tie" as *u8, co_fair_verdict(CO_BYTES, 0, 0, 0) == CO_TIE, ctr)
37 gv_check("equal-extreme-cost-zero-margin-is-tie" as *u8, co_fair_verdict(CO_TOGGLES, CO_I64_MAX, CO_I64_MAX, 0) == CO_TIE, ctr)
38 gv_check("equal-cost-positive-margin-is-tie" as *u8, co_fair_verdict(CO_BYTES, 5, 5, 1) == CO_TIE, ctr)
39 gv_check("negative-a-refused" as *u8, co_fair_verdict(CO_INSN, 0-1, 5, 0) == CO_REJECT, ctr)
40 gv_check("negative-b-refused" as *u8, co_fair_verdict(CO_INSN, 5, 0-1, 0) == CO_REJECT, ctr)
41 gv_check("negative-margin-refused" as *u8, co_fair_verdict(CO_INSN, 3, 5, 0-1) == CO_REJECT, ctr)
42 gv_check("signed-min-cost-refused-before-subtraction" as *u8, co_fair_verdict(CO_INSN, 0-CO_I64_MAX-1, CO_I64_MAX, 0) == CO_REJECT, ctr)
43 gv_check("signed-min-margin-refused" as *u8, co_fair_verdict(CO_INSN, 3, 5, 0-CO_I64_MAX-1) == CO_REJECT, ctr)
44 gv_check("lower-a-count-wins" as *u8, co_fair_verdict(CO_INSN, 3, 5, 1) == CO_A_FASTER, ctr)
45 gv_check("lower-b-count-wins" as *u8, co_fair_verdict(CO_BYTES, 5, 3, 1) == CO_B_FASTER, ctr)
46 gv_check("difference-below-margin-ties" as *u8, co_fair_verdict(CO_TOGGLES, 3, 5, 3) == CO_TIE, ctr)
47 gv_check("difference-at-margin-retains-a-win" as *u8, co_fair_verdict(CO_INSN, 3, 5, 2) == CO_A_FASTER, ctr)
48 gv_check("difference-at-margin-retains-b-win" as *u8, co_fair_verdict(CO_INSN, 5, 3, 2) == CO_B_FASTER, ctr)
49 gv_check("zero-to-max-difference-safe" as *u8, co_fair_verdict(CO_BYTES, 0, CO_I64_MAX, CO_I64_MAX) == CO_A_FASTER, ctr)
50 gv_check("max-to-zero-difference-safe" as *u8, co_fair_verdict(CO_BYTES, CO_I64_MAX, 0, CO_I64_MAX) == CO_B_FASTER, ctr)
51 gv_check("near-max-below-margin-ties" as *u8, co_fair_verdict(CO_INSN, CO_I64_MAX-1, CO_I64_MAX, 2) == CO_TIE, ctr)
52 gv_check("abs-signed-min-refused" as *u8, co_abs(0-CO_I64_MAX-1) == CO_REJECT, ctr)
53 gv_check("abs-max-preserved" as *u8, co_abs(CO_I64_MAX) == CO_I64_MAX, ctr)
54 gv_check("abs-ordinary-negative-preserved" as *u8, co_abs(0-5) == 5, ctr)
55 return gv_verdict("NX-COST-ORACLE" as *u8, ctr, "counted-cost ordering and boundary refusals; timing requires a separate sampled contract" as *u8)
56}