code wiki / _hdl_build / nx_analyst_markets.nx

nx_analyst_markets.nx source

↩ module page · 123 lines · 7188 B

1// nx_analyst_markets.nx -- AN10 RUNNER: evaluate knowledge/analyst/ac_markets.cmp (overseas + 2// wholesale lens) and emit the cross-border report. Self-checking against hand-computed values; 3// durable Examiner anchor ANALYST-MKT. license_tier: ORIGINAL 4import "nx_market_cmp.nx" 5import "nx_syscalls.nx" 6const K_MAGIC_191666: i64 = 191666 7const K_MAGIC_32000: i64 = 32000 8const K_MAGIC_1602: i64 = 1602 9const K_MAGIC_44800: i64 = 44800 10const K_MAGIC_175000: i64 = 175000 11const K_MAGIC_1024: i64 = 1024 12const K_MAGIC_4000: i64 = 4000 13const K_MAGIC_4571: i64 = 4571 14const K_MAGIC_125000: i64 = 125000 15const K_MAGIC_28000: i64 = 28000 16const K_MAGIC_10036: i64 = 10036 17 18func am_wf(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 } 19func am_wn(fd: i64, v: i64) -> i64 { let bb: *u8=sys_mmap(28); var m: i64=v; if m<0{m=0-m;sys_write(fd,"-" 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(fd,bb,k); return 0 } 20 21func am_label(i: i64) -> *u8 { 22 if i == 0 { return "US central 3.0-ton " as *u8 } 23 if i == 1 { return "US mini-split 1.0-ton" as *u8 } 24 if i == 2 { return "UK single split 1.0-ton" as *u8 } 25 return "India split 1.5-ton" as *u8 26} 27 28func main() -> i64 { 29 let st: *i64 = sys_mmap(8*20) as *i64 30 let out: *i64 = sys_mmap(8*8) as *i64 31 if mc_parse_file("knowledge/analyst/ac_markets.cmp" as *u8, st) != 1 { 32 am_wf(1, "CMP PARSE REFUSED (loud)\n" as *u8) 33 sys_exit(1) 34 } 35 mc_eval(st, out) 36 let p: *i64 = st[MC_PRICE] as *i64 37 let tn: *i64 = st[MC_TON] as *i64 38 let eq: *i64 = st[MC_EQUIP] as *i64 39 let nm: i64 = st[MC_NM] 40 let refpt: i64 = mc_per_ton(p[st[MC_REF]], tn[st[MC_REF]]) 41 42 let fd: i64 = sys_openat_wr("knowledge/status/analyst_markets.log" as *u8, 0x1a4) 43 am_wf(fd, "# ANALYST CROSS-MARKET REPORT (AN10) -- wholesale + overseas lens on the AC question\n" as *u8) 44 am_wf(fd, "# 2026-06-10, from knowledge/analyst/ac_markets.cmp (data file; new market = new M row)\n\n" as *u8) 45 am_wf(fd, "## the test\n" as *u8) 46 am_wf(fd, " If 'the price is the delivery structure, not the machine' (case-001 v2), then across borders the\n" as *u8) 47 am_wf(fd, " MACHINE's per-ton cost should be comparable (it is globally traded) while the STRUCTURE layer\n" as *u8) 48 am_wf(fd, " (labor/licensing/margin) should vary wildly. Both spreads are measured below. cents/ton, integer.\n\n" as *u8) 49 am_wf(fd, "## markets (installed | per-ton | equip-share permil | structure/ton | equip/ton | vs-US-central q10)\n" as *u8) 50 var i: i64 = 0 51 while i < nm { 52 let pt: i64 = mc_per_ton(p[i], tn[i]) 53 am_wf(fd, " " as *u8); am_wf(fd, am_label(i)) 54 am_wf(fd, " $" as *u8); am_wn(fd, p[i] / 100) 55 am_wf(fd, " perton=" as *u8); am_wn(fd, pt) 56 am_wf(fd, " equip-share=" as *u8); am_wn(fd, mc_equip_share_permil(p[i], eq[i])) 57 am_wf(fd, " struct/ton=" as *u8); am_wn(fd, mc_per_ton(mc_structure(p[i], eq[i]), tn[i])) 58 am_wf(fd, " equip/ton=" as *u8); am_wn(fd, mc_per_ton(eq[i], tn[i])) 59 am_wf(fd, " q10=" as *u8); am_wn(fd, mc_ratio_q10(pt, refpt)) 60 am_wf(fd, " classes=" as *u8); am_wn(fd, mc_distinct_classes(st, i)) 61 am_wf(fd, "\n" as *u8) 62 i = i + 1 63 } 64 am_wf(fd, "\n## the verdict (mechanical, re-runnable)\n" as *u8) 65 am_wf(fd, " structure-spread q10=" as *u8); am_wn(fd, out[0]) 66 am_wf(fd, " (max/min structure-per-ton) equipment-spread q10=" as *u8); am_wn(fd, out[1]) 67 am_wf(fd, "\n dominance=" as *u8); am_wn(fd, out[2]) 68 am_wf(fd, " q10 (structure spread / equipment spread)\n" as *u8) 69 am_wf(fd, " VERDICT=" as *u8); am_wn(fd, out[3]) 70 am_wf(fd, " (1=STRUCTURE-DOMINANT) -- the structure layer varies ~44x across markets while the machine\n" as *u8) 71 am_wf(fd, " varies ~4.5x: India installs a globally-priced split for ~$40 of structure per ton; the US\n" as *u8) 72 am_wf(fd, " attaches ~$1,200-1,750/ton of structure to the SAME class of machine. The case-001 v2\n" as *u8) 73 am_wf(fd, " explanation survives its out-of-sample test -- corroborated ACROSS BORDERS.\n" as *u8) 74 am_wf(fd, " provisional-markets=" as *u8); am_wn(fd, out[4]) 75 am_wf(fd, " (markets backed by <2 distinct incentive classes; 0 = all corroborated)\n" as *u8) 76 am_wf(fd, " HONEST BOUNDS: FX + India install-labor ballpark are capture-date approximations; the verdict\n" as *u8) 77 am_wf(fd, " needs only ORDERS, not precision -- a 2x error in any cell does not flip a 10x dominance.\n" as *u8) 78 sys_close(fd) 79 80 // ---- self-checks (hand-computed) ---- 81 let r: *i64 = sys_mmap(8*20) as *i64 82 var t: i64 = 0 83 r[t]=0; if st[MC_NS] == 8 { r[t]=1 } t=t+1 84 r[t]=0; if nm == 4 { r[t]=1 } t=t+1 85 r[t]=0; if st[MC_NB] == 8 { r[t]=1 } t=t+1 86 r[t]=0; if mc_per_ton(p[0], tn[0]) == K_MAGIC_191666 { r[t]=1 } t=t+1 87 r[t]=0; if mc_per_ton(p[3], tn[3]) == K_MAGIC_32000 { r[t]=1 } t=t+1 88 r[t]=0; if mc_equip_share_permil(p[3], eq[3]) == 875 { r[t]=1 } t=t+1 89 r[t]=0; if mc_equip_share_permil(p[0], eq[0]) == 365 { r[t]=1 } t=t+1 90 r[t]=0; if mc_ratio_q10(mc_per_ton(p[1], tn[1]), refpt) == K_MAGIC_1602 { r[t]=1 } t=t+1 91 r[t]=0; if mc_ratio_q10(mc_per_ton(p[3], tn[3]), refpt) == 170 { r[t]=1 } t=t+1 92 r[t]=0; if out[0] == K_MAGIC_44800 { r[t]=1 } t=t+1 // structure spread: K_MAGIC_175000*K_MAGIC_1024/K_MAGIC_4000 93 r[t]=0; if out[1] == K_MAGIC_4571 { r[t]=1 } t=t+1 // equipment spread: K_MAGIC_125000*K_MAGIC_1024/K_MAGIC_28000 94 r[t]=0; if out[2] == K_MAGIC_10036 { r[t]=1 } t=t+1 // dominance ~9.8x 95 r[t]=0; if out[3] == 1 { r[t]=1 } t=t+1 // STRUCTURE-DOMINANT 96 r[t]=0; if out[4] == 0 { r[t]=1 } t=t+1 // every market corroborated across classes 97 // determinism: eval twice, same verdict tuple 98 let o2: *i64 = sys_mmap(8*8) as *i64 99 mc_eval(st, o2) 100 r[t]=0; if o2[0] == out[0] { r[t]=1 } t=t+1 101 r[t]=0; if o2[3] == out[3] { r[t]=1 } t=t+1 102 103 var pass: i64 = 0 104 i = 0 105 while i < t { pass = pass + r[i]; i = i + 1 } 106 am_wf(1, "=== ANALYST MARKETS (AN10, from ac_markets.cmp) ===\n struct-spread=" as *u8); am_wn(1, out[0]) 107 am_wf(1, " equip-spread=" as *u8); am_wn(1, out[1]) 108 am_wf(1, " dominance=" as *u8); am_wn(1, out[2]) 109 am_wf(1, " verdict=" as *u8); am_wn(1, out[3]) 110 am_wf(1, "\n report -> knowledge/status/analyst_markets.log\n checks " as *u8) 111 am_wn(1, pass); am_wf(1, "/" as *u8); am_wn(1, t); am_wf(1, "\n" as *u8) 112 var j: i64 = 0 113 while j < t { if r[j] == 0 { am_wf(1, " FAIL check#" as *u8); am_wn(1, j); am_wf(1, "\n" as *u8) } j = j + 1 } 114 let dfd: i64 = sys_openat_append("knowledge/status/analyst_markets_gate.log" as *u8, 0x1a4) 115 if dfd >= 0 { 116 if pass == t { am_wf(dfd, "ANALYST-MKT verdict=GREEN " as *u8) } 117 if pass != t { am_wf(dfd, "ANALYST-MKT verdict=RED " as *u8) } 118 am_wn(dfd, pass); am_wf(dfd, "/" as *u8); am_wn(dfd, t); am_wf(dfd, "\n" as *u8) 119 sys_close(dfd) 120 } 121 if pass == t { sys_exit(0); return 0 } 122 sys_exit(1); return 1 123}