Certified-accuracy scorecard (post_audit_roadmap §1) #
REDUCED CERTIFICATE MODEL — this file's concrete net is the 4×4-pooled 49-dim
MNIST family (width-8 hidden, /128–/256 rational weights), NOT the canonical
784→512→512→10 mlpVerified; chosen so every margin/norm/SOS check is exact rational
arithmetic in-kernel. Canonical surface: Proofs/MlpCanonical.lean.
The one-input certificate of LipschitzCertInstance.lean, scaled to a
dataset-level claim over a FIXED subset — the first 100 MNIST test images
(4×4-pooled, exact pixel-sum rationals) — at a FIXED radius ε = 1/10
(pooled-feature L2; a pooled coordinate is a 16-pixel block average, so ε
is a 4×4-block-averaged pixel budget of 0.1·255 ≈ 25.5 gray levels
concentrated on one block, or spread L2-wise across blocks). Two nets:
- unconstrained — the committed /128 net (
W1t/W2t, q-acc 0.898), Schatten-8 product L = 63.79 (mlpT_lip_gram2): 1/100 certified at ε; - spectrally capped — same recipe + projected SGD onto ‖Wᵢ‖₂ ≤ 4
(host-side rescaling after every step, as
mnist-mlp-spectral), 36 epochs, /256-rationalized (W1s/W2s, q-acc 0.870), Schatten-8 product L = 19.76: 34/100 certified at the same ε.
Same theorem, same ε — the training method decides whether the certificate bites (the roadmap's caps 1.5–2 cost too much clean accuracy at this scale: σ ≤ 2 → 66% test acc; σ ≤ 4 keeps 87.0% vs 89.8% unconstrained).
Theorem vs. measurement — read this before quoting a number. Soundness
lives in the ENGINE (certified_at_eps + LipschitzCert.lean), proved once —
kernel-checking the 57th image buys nothing the 56th didn't. The counts above
are exact-rational MEASUREMENTS over the first 100 images, carried in full by
the certMargin* data table at the aggregate below (which is what downstream
measurement passes read); the first 8 certified images per net additionally
carry hpre*/margin*/certified* THEOREMS, and scorecard states only
those. Every img<i> of the measured set is kept regardless — the 34 image
definitions are cheap and other tiers reference them.
Each of the 8 EMITTED images gets a margin lemma (exact rational, in-kernel)
and a ∀ δ, ‖δ‖ < ε → argmax fixed theorem via certified_at_eps. Every OTHER
certified image appears only as a -- certMargin* comment line: a measurement,
carrying no lemma of any kind. The aggregate
count is the honest direction only ("at least K of 100") — an upper-bound L
cannot prove an image UNcertifiable. Empirical bracket (not proof): L2-PGD
(100 steps, 4 restarts) leaves uncon 69/100, capped 72/100
robust at the same ε — cert ≤ TRUE ≤ PGD.
Generated by scripts/lipschitz_cert_scorecard.py; weights/images are DATA.
Capped-net hidden weights (8×49), entries k/256.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Capped-net output weights (10×8), entries k/256.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The capped trained MLP: dense → ReLU → dense.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Schatten-8 bound for the capped hidden layer: B₁ = 4323/1000 (cap 4).
Capped-net Schatten-8 product: L = 19.760 vs 63.79 unconstrained — the projection is what makes the fixed-ε certificate bite.
MNIST test image #0 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #3 (digit 0), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #5 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #10 (digit 0), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #13 (digit 0), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #14 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #17 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #25 (digit 0), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #28 (digit 0), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #29 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #34 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #36 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #37 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #39 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #41 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #52 (digit 5), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #56 (digit 4), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #60 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #68 (digit 3), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #69 (digit 0), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #70 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #71 (digit 0), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #74 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #79 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #81 (digit 6), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #82 (digit 2), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #85 (digit 4), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #86 (digit 7), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #89 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #90 (digit 3), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #93 (digit 3), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #94 (digit 1), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #95 (digit 4), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
MNIST test image #98 (digit 6), exact pixel sums /4080.
Equations
- One or more equations did not get rendered due to their size.
Instances For
f is certified at radius ε on input x with class i: every
perturbation of L2 norm < ε leaves i the strict argmax. This is the
(undecidable — it quantifies over real δ) per-image certificate that
each certifiedC<i>/certifiedU<i> theorem proves.
Equations
Instances For
The capped-net certificate witnesses: (subset index, image, class),
one triple per certifiedC<i> theorem, in index order.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The unconstrained-net certificate witnesses (certifiedU<i>).
Instances For
Every capped-net witness is certified — the aggregate is no longer bookkeeping over a bare index list: the proof term is literally the tuple of the 8 per-image theorems.
The scorecard, as a theorem: at ε = 1/10 (pooled L2) the capped net
certifies 34/100 of the fixed test subset and the unconstrained net
1/100 — same certificate, same ε; training (σ-projection) decides
whether it bites. Those are MEASUREMENTS (the certMargin* table above);
the 8 and 1 witnesses BELOW are the ones carrying per-image
CertifiedAt proofs, tied to them via cappedCerts_certified/
unconCerts_certified rather than a bare list length. Lower bounds only:
an upper-bound L cannot prove an image uncertifiable.