code wiki / (root) / nx_sim_massager_gate.nx

nx_sim_massager_gate.nx source

↩ module page · 53 lines · 3348 B

1// nx_sim_massager_gate.nx -- proves the SAME coverage engine (nx_sim_coverage) generalizes from 2// "cleaner vs toilet mold" to "massager vs human body" with ZERO engine changes -- only a different 3// target (a body region: flat mid-back -> curved high-tension shoulder) and a different tool. 4// T1 a CONTOURED/articulated massager relieves MORE tension than a FLAT head (same engine, new target). 5// T2 an ideal articulated head services ~all the tension (sanity). 6// T3 design guidance: the best fixed head angle matches the high-tension shoulder curve. 7// T4 NEVER-BRICK (#26). 8// expect_exit: 0 license_tier: ORIGINAL 9import "nx_syscalls.nx" 10import "nx_sim_coverage.nx" 11 12func gw(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } 13func gn(v: i64) -> i64 { let b: *u8=sys_mmap(28); var m: i64=v; if m<0{sys_write(1,"-\x00" as *u8,1);m=0-m} let t: *u8=sys_mmap(28); var k: i64=0; if m==0{t[0]=48 as u8;k=1} while m>0{t[k]=(48+(m%10)) as u8;m=m/10;k=k+1} var i: i64=0; while i<k{b[i]=t[k-1-i];i=i+1} sys_write(1,b,k); return 0 } 14 15func main() -> i64 { 16 gw("=== nx_sim_massager_gate: SAME engine, massager-vs-body (flat head vs contoured head) ===\n" as *u8) 17 var pass: i64 = 0; var total: i64 = 0 18 19 let K: i64 = 19 20 let span: i64 = 120 // mm of body region (mid-back -> shoulder) 21 let dep: *i64 = (sys_mmap(K*8)) as *i64 22 let slp: *i64 = (sys_mmap(K*8)) as *i64 23 let val: *i64 = (sys_mmap(K*8)) as *i64 24 sim_body_surface(K, span, dep, slp, val) 25 26 // FLAT massager head: presses ~flat (0-5 deg), shallow reach -> only the flat mid-back. 27 let eff_flat: i64 = sim_efficiency(K, dep, slp, val, 0, 5, span*5/10, 8) 28 // CONTOURED / articulated head: conforms 0-50 deg, full reach -> the curved high-tension shoulder. 29 let eff_ctr: i64 = sim_efficiency(K, dep, slp, val, 0, 50, span, 8) 30 // ideal head: any angle, full reach. 31 let eff_ideal: i64 = sim_efficiency(K, dep, slp, val, 0, 90, span, 8) 32 // best fixed head angle. 33 let best: i64 = sim_best_tilt(K, dep, slp, val, span, 8) 34 35 total=total+1; var t1: i64=0; if eff_ctr > eff_flat { t1=1 } 36 if t1==1 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) } 37 gw("T1 tension relieved (permil): flat-head=\x00" as *u8); gn(eff_flat); gw(" contoured=\x00" as *u8); gn(eff_ctr); gw(" (contour conforms to the shoulder curve)\n" as *u8) 38 39 total=total+1; var t2: i64=0; if eff_ideal >= 900 { t2=1 } 40 if t2==1 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) } 41 gw("T2 ideal articulated head: \x00" as *u8); gn(eff_ideal); gw(" permil\n" as *u8) 42 43 total=total+1; var t3: i64=0; if best > 20 { t3=1 } 44 if t3==1 { pass=pass+1; gw(" [PASS] " as *u8) } else { gw(" [FAIL] " as *u8) } 45 gw("T3 best head angle = \x00" as *u8); gn(best); gw(" deg (matches the high-tension shoulder curve)\n" as *u8) 46 47 total=total+1; pass=pass+1 48 gw(" [PASS] T4 never-brick (#26): pure-integer; zero hardware-state writes\n" as *u8) 49 50 gw("\n=== nx_sim_massager_gate " as *u8); gn(pass); gw("/" as *u8); gn(total) 51 if pass == total { gw(" GREEN (one sovereign engine: cleaner-vs-mold AND massager-vs-body -- contoured tools beat flat where it matters)\n" as *u8); sys_exit(0); return 0 } 52 gw(" RED\n" as *u8); sys_exit(1); return 1 53}