cert-machine · audit · an AI counterexample library

The counterexample machine, decided

Suvrit Sra's open library of counterexamples, most of them found by language models, decided case by case by programs that read the published certificate and never the authors' checker. Every case's mathematics holds where it can be decided; four cases rest partly on a cited theorem or an argument over all m, and one holds under only one of the two definitions its own text gives.

The library: github.com/suvrit/count-ex-machina at commit dbf67374 (Apache-2.0), the companion of arXiv 2608.29595, "GPT, the Counterexample Machine". Fourteen cases, mirrored verbatim in corpus/countex. What is decided is each counterexample as the case states it; what the library's authors chose to call a conjecture is theirs. Nothing has been sent to them.

tl;dr
  • The finding. 9 of 14 cases CERTIFIED whole; 5 PARTIAL, and no case REFUTED. The partial ones: Borcea-Branden AIM problems (one of four results rests on cited universal theorems); Feasible Picard steps for DPP likelihood (it holds under one of the two definitions of "feasible" its own text gives); Log-volume midpoint gap and its Lorentzian generalization (one of two results needs bodies only a cited theorem supplies); No dimension-free constant in O'Donnell's matrix conjecture (the all-m step is argued in prose); Variance-sensitive Matrix Spencer (the all-m step is argued in prose). The DPP case defines "feasible" twice: as keeping the iterate positive definite, under which a = 5 descends and the conjecture falls, and as Prop. A.1's bound, about 1.90 here, which a = 5 exceeds. None of the fourteen checkers reads the published certificate: each writes it from a witness in its own code.
  • The mechanism. One standard-library program per case (4,876 lines in all), written from the case's statement before its verify.py was read, reading the published artifact, recomputing every number the case prints and comparing it as a separate check. Exact rationals and integers; where a transcendental enters, decimal intervals in named contexts with a proved series tail. Each program also decides a FORGE — the certificate changed by the smallest amount that breaks it — which must not certify.
  • Check it. python3 tools/run-countex-ledger.py --check · python3 instruments/countex/battery.py — 18 checks, 14 forges refused.
cases decided
14
Found by 16 an OpenAI model, 2 a Claude model, 1 by hand (a case can credit several).
certified whole
9
Every fact the counterexample needs, re-derived from the published artifact.
partly
5
A certified part beside a part that rests on a cited theorem, an argument over all m, or a reading.
checkers that read the certificate
0
Of fourteen. Each writes it; the library's CI checks that the written file equals the committed one.
§1 · the cases

Fourteen counterexamples, one verdict each

verdictcasefound by
PARTIALBorcea-Branden AIM problemsGPT-5 (Pro), GPT-5.6 (Pro), Opus 5
CERTIFIEDCourtade's volume conjecture for Minkowski sums is falseSuvrit Sra, by hand
PARTIALFeasible Picard steps for DPP likelihoodGPT-5.6
CERTIFIEDFailure of the proposed Hamiltonian NEPv Rayleigh identityOpenAI Codex
PARTIALLog-volume midpoint gap and its Lorentzian generalizationGPT-5.6 Pro
CERTIFIEDMacdonald lattice Schur-convexityGPT-5.6 (Pro)
PARTIALNo dimension-free constant in O'Donnell's matrix conjectureGPT-5.6 Pro
CERTIFIEDAn oblivious subspace injection need not give relative-error sketch-and-solveOpenAI Codex
CERTIFIEDExact QRCP can miss the orthonormal-row conditioning boundOpenAI Codex
CERTIFIEDQuantum coupon collection: positivity of an alternating sum of inversesGPT Pro
CERTIFIEDA mixed-norm Cauchy-Schwarz question of Sah, Sawhney, Stoner and ZhaoGPT-5.6 Sol (Pro), Opus 5
CERTIFIEDStrict diagonal dominance does not ensure diminishing Nyström error reductionsOpenAI Codex
CERTIFIEDDerivatives of the Jacobi-theta kernelGPT-5.5 (Pro)
PARTIALVariance-sensitive Matrix SpencerGPT-5.5 (Pro)
§2 · case by case

What is decided, and what the authors' checker does

§3 · one case, two definitions

When is a step feasible?

The DPP case refutes a conjecture of Mariet and Sra (2015): that every feasible Picard step a ≥ 1 increases the log-likelihood. Its context paragraph says a step "is feasible when it keeps the iterate positive definite, which the source guarantees for a ≤ 1/(1 − γ)"; its statement block says "feasibility is the bound a ≤ 1/(1 − γ) of Prop. A.1". The witness takes a = 5.

The source's own sentence, "Prop. A.1 presents an easily computable upper bound on feasible a", reads more naturally the first way, so the counterexample stands for the conjecture as posed. What it does not show is a descending step that Prop. A.1's bound admits; that question is still open, and the case's statement block, as written, asks it.

§4 · the checkers

What a checker that writes its certificate proves

Every case's verify.py builds its witness from values in its own source and WRITES artifacts/ from them; none of the fourteen reads the published certificate. The library's CI then regenerates the artifacts and requires git diff --exit-code, so the committed files equal what the code writes — but a reader holding only a certificate cannot check it with verify.py. The deciders here read the published artifacts.

That design makes each certificate reproducible, which is worth having. It does not let anyone check a certificate they were handed, and several checkers type in what they should compute: a diagonal assigned rather than built, a residual formula written in, a Kostka matrix copied, a sign settled by SymPy's numerical evaluation, two tails left to Sage scripts the Python checker does not run. In every case the mathematics survives the stricter decision here; the point is where the rigor sits.

§5 · limits

What is not decided here