code wiki / _hdl_build / nx_proc_snapshot_gate.nx
nx_proc_snapshot_gate.nx
buildroot/runtime/_hdl_build/nx_proc_snapshot_gate.nx
about
nx_proc_snapshot_gate.nx -- proves the seq1318 fix is CORRECT (same answers) and ACTUALLY O(P)
(one walk serves many questions). Every tooth fires on the BAD state and is silent on the good one.
The two teeth that matter, and why they are not vacuous:
T5 EQUIVALENCE vs THE ORACLE: for a battery of names -- present, absent, and every name this
supervisor actually guards -- snapshot answer MUST equal the direct per-name /proc scan. The
oracle is the pre-existing implementation, so this proves "no behaviour changed", not "the new
code agrees with itself".
T6 THE O(P) PROPERTY ITSELF: 25 queries after one refresh must leave the BUILD COUNTER at 1. A
correctness-only gate would pass even if the fix silently rebuilt per query -- i.e. if the
defect were still there. This measures the fix, not just its output.
license_tier: ORIGINAL No hw writes (Rule 26). expect_exit: 0
dependencies 2 imports · 0 importers
imports: nx_proc_snapshot.nxnx_syscalls.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
| 16 | const GT_QUERIES: i64 = 25 // the ~25 guarded services of the real poll |
| 17 | const GT_SPANCAP: i64 = 512 |
| 18 | const GT_STDOUT: i64 = 1 |
functions
| 20 | func gt_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n } called by 1: gt_puts |
| 21 | func gt_puts(s: *u8) -> i64 { sys_write(GT_STDOUT, s, gt_slen(s)); return 0 } |
| 22 | func gt_putn(v: i64) -> i64 |
| 34 | func gt_bite(bad: i64, id: *u8, why: *u8) -> i64 |
| 40 | func main(argc: i64, argv: *i64) -> i64 |