nx_imgsig_gate.nx
buildroot/runtime/nx_imgsig_gate.nx
about
nx_imgsig_gate.nx -- referee for the unified visual signature (nx_imgsig = visdesc + colordesc).
PROVES the COMBINATION beats either component alone, on a 2x2 structure x color corpus where each
component is individually ambiguous:
classes = {H-stripes RED, H-stripes GREEN, V-stripes RED, V-stripes GREEN}, 4 instances each.
- visdesc alone (structure/tone on gray) CONFUSES H-red vs H-green (same structure) -> lower P@3.
- colordesc alone (chroma) CONFUSES H-red vs V-red (same color) -> lower P@3.
- imgsig (both) separates all four.
row1 imgsig retrieval P@3 strong (>=850 permil).
row2 imgsig P@3 > visdesc-only P@3 (color disambiguates what structure cannot) [measured]
row3 imgsig P@3 > colordesc-only P@3 (structure disambiguates what color cannot) [measured]
row4 DETERMINISM: same image twice -> identical signature (L1 == 0).
row5 SEPARATION: cross-class imgsig L1 >> same-class.
GREEN iff 5/5. Durable verdict -> knowledge/status/imgsig_gate.log. license_tier: ORIGINAL
dependencies 1 imports · 0 importers
imports: nx_imgsig.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
| 16 | func g_puts(s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(1,s,n); return 0 } called by 1: main |
| 17 | func g_num(v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m;sys_write(1,"-" as *u8,1)}; 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{bb[i]=t[k-1-i];i=i+1}; sys_write(1,bb,k); return 0 } called by 1: main |
| 18 | func g_w(fd: i64, s: *u8) -> i64 { var n: i64=0; while s[n]!=(0 as u8){n=n+1} sys_write(fd,s,n); return 0 } called by 1: main |
| 19 | func g_wn(fd: i64, v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{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{bb[i]=t[k-1-i];i=i+1}; sys_write(fd,bb,k); return 0 } called by 1: main |
| 20 | func g_clamp255(v: i64) -> i64 { if v<0 { return 0 } if v>255 { return 255 } return v } called by 1: g_synth_sc |
| 24 | func g_synth_sc(rgb: *u8, gray: *u8, w: i64, h: i64, structIdx: i64, colorIdx: i64, p: i64, phase: i64, dbright: i64) -> i64 |
| 56 | func g_l1mode(a: *i64, b: *i64, mode: i64) -> i64 |
| 63 | func g_p3(sdesc: *i64, nimg: i64, ninst: i64, mode: i64, taken: *i64) -> i64 |
| 92 | func main() -> i64 |