teal-sea / zeta-labstate of record · compiled 14 Aug 2026 · revision 9ebdea0 · source

Library · docs/doors/zeta.md

Department: `zeta`

612 words · 86 lines · source

The Riemann zeta function and RH — department #1, and the worked example every later department should copy.

Declared in harness/departments/zeta_department.py. Audited by tests/test_department_conformance.py.

What it studies

The classical machinery, implemented at arbitrary precision, with every identity exposed as a measured defect rather than assumed: θ and modularity, the functional equation, Hardy's Z and sign changes, the explicit formula, GUE statistics, heat flow on Ξ and the de Bruijn–Newman constant, Weil positivity, Li's criterion and Jensen hyperbolicity, the four equivalence faces, and the Davenport–Heilbronn counterexample. Curves over 𝔽_p — the RH that is a theorem — are department #2.

Modules: zeta.core, zeta.zeros, zeta.explicit, zeta.statistics, zeta.heatflow, zeta.weil, zeta.epstein, zeta.rigor, zeta.li, zeta.criteria, zeta.moments.

What can refute a claim here

RoleMembersSource
Rivals (3)Davenport–Heilbronn; Epstein ζ of the forms (2,1,3) and (1,1,6), discriminant −23zeta.epstein
Decoys (2)non-prime replacement of matched density; permutation of the same primeszeta.spectral_gate
Surrogates (3)log-correlated field; full random Euler product; CUEzeta.surrogate
Lesions (3)zero quadruples at ½ ± δ ± 40i, for δ = 0.1, 0.01, 0.001zeta.detectors

Each rival satisfies a Riemann-type functional equation, has real Dirichlet coefficients and a real Hardy-style Z, and violates RH. Each is assembled from legitimate Euler products but has no scalar Euler product of its own, because linear combination destroys primitive multiplicative structure while preserving the functional equation. That is where they part from ζ, and it is the only place a claim can hold on to.

The two decoys are sharp only as a pair: a construction must react to which places are present and ignore what order they arrive in.

The calibration

The department declares two claims whose verdicts are already derived in zeta/epstein.py, and the conformance test re-runs both rather than trusting the labels:

ClaimExpectedWhy
claim_functional_equationrejectedtrue of ζ and of every rival; a symmetry shared with functions that violate RH cannot be why RH holds
claim_multiplicativitydistinguishesthe fingerprint of an Euler product; false for every rival

Together they pin the battery in both directions. A referee that has only ever said "no" has not been shown to work.

One instrument that does not qualify, and why

zeta.factorization.factorization_defect is Gate 4 made into a number: D(f) = 0 exactly when f has an Euler product, which looks like an ideal third reference claim. It is not one, and the battery is what showed that.

Measured across the four subjects at n_max = 60:

Subjecta₁D
ζ11.03e−32
Davenport–Heilbronn10.993
Epstein (2,1,3)0undefined — raises
Epstein (1,1,6)21.76

The form 2x² + xy + 3y² does not represent 1, so that Epstein series has a₁ = 0 and the logarithmic-derivative recursion the statistic is built on has no normalisation to divide by. The rival did not answer, so the claim has not been shown to exclude it: run_battery records the exception in errors and distinguishes stays False.

That is the safe failure mode working as specified. A verdict that had quietly counted a crashed rival as refuted would be the most flattering possible bug, and it would have promoted D from "works on three of four subjects" to "the decision procedure for Gate 4".

Where to start