code wiki / (root) / nx_frameab_gate.nx

nx_frameab_gate.nx

buildroot/runtime/nx_frameab_gate.nx

10372 B161 linesdepth 8pulls 19 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_frameab_gate.nx -- THE REFEREE FOR THE FRAMETRACE A/B WIRING (nx_frameab). nx_abstat_gate already proves the STATISTICS. This gate proves the three things nx_frameab adds on top of them, each of which can be wrong while the arithmetic stays perfect: 1. the CONFOUND GUARD, in BOTH directions -- a guard that refuses everything passes every deny test, so the positive control (an identical-budget pair it must ALLOW) is the load-bearing tooth here; 2. the two per-frame INDICATOR DERIVATIONS at their boundaries, where an off-by-one hides; 3. the end-to-end push, so a real window really does produce the axis verdicts claimed. license_tier: ORIGINAL No hw writes (Rule 26).

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_gate_verdict.nx nx_frameab.nx nx_frameab_gate.nx

imports: nx_syscalls.nxnx_gate_verdict.nxnx_frameab.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main gv_ctr sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ gv_head gv_puts sys_write ↻ gv_check_eq gv_check gv_puts ↻ gv_puts ↻ gv_num sys_mmap ↻ sys_write ↻ sys_munmap fab_confounded fab_over_of fab_jank_of fbg_perf sys_mmap ↻ pf_words pf_push pf_push_raw pf_valid pf_init sys_mmap ↻ ab_words

structs

none

consts

14const FBG_N: i64 = 40

functions

16func fbg_perf(centre: i64, spread: i64, budget: i64) -> *i64
called by 1: main calls 3: sys_mmappf_wordspf_push
33func main() -> i64