Equation 48: The Keating–Snaith Moment Conjecture — In-Depth Analysis
1. What This Equation Says (Plain-Language Overview)
The Keating–Snaith conjecture is arguably the single most influential bridge between random matrix theory (RMT) and the Riemann zeta function. It answers a question that had been open for over 80 years:
What is the asymptotic behavior of the moments $$M_k(T) = \frac{1}{T}\int_0^T \left|\zeta\left(\tfrac{1}{2}+it\right)\right|^{2k} dt \quad \text{as } T \to \infty\ ?$$
The conjectured answer:
$$\boxed{\ M_k(T) \sim a_k \, g_k \, (\log T)^{k^2}\ }$$
where:
- $g_k = \prod_{j=0}^{k-1} \frac{j!}{(j+k)!}$ is the "random matrix factor" — it comes from Haar-random unitary matrices and knows nothing about primes.
- $a_k = \prod_p \left[\left(1-\frac{1}{p}\right)^{k^2} \sum_{m=0}^\infty \binom{m+k-1}{m}^2 p^{-m}\right]$ is the "arithmetic factor" — an Euler product over primes that RMT cannot see and must be grafted on by hand.
The deep insight: the analytic difficulty of the problem lives entirely in $g_k$, and RMT computes it exactly.
2. Historical Background
2.1 The classical era (1918–1998)
| Year | Who | Result |
|---|---|---|
| 1918 | Hardy & Littlewood | Proved $M_1(T) \sim \log T$. (Coefficient: $a_1 g_1 = 1$ ✓) |
| 1926 | A. E. Ingham | Proved $M_2(T) \sim \frac{1}{2\pi^2}(\log T)^4$. (Coefficient: $a_2 g_2 = \frac{6}{\pi^2}\cdot\frac{1}{12} = \frac{1}{2\pi^2}$ ✓) |
| 1984–98 | Conrey & Ghosh | Conjectured the $k=3$ coefficient: $\frac{42\, a_3}{9!}$ — via number theory, not RMT. |
| 1998 | Conrey & Gonek | Conjectured $k=4$: coefficient $\frac{24024\, a_4}{16!}$ — using long Dirichlet polynomials. |
For general $k$, nobody could even guess the constant. The pattern $1, 2, 42, 24024$ (values of $g_k \cdot (k^2)!$) was a complete mystery.
2.2 The RMT connection (1973–2000)
- 1973 — Hugh Montgomery conjectured that the pair correlation of zeta zeros matches the pair correlation of eigenvalues of random Hermitian matrices (GUE). The famous Dyson–Montgomery tea-time conversation at the Institute for Advanced Study revealed the connection: Freeman Dyson instantly recognized Montgomery's kernel $1 - \left(\frac{\sin \pi x}{\pi x}\right)^2$ as the GUE pair correlation.
- 1987 — Andrew Odlyzko computed millions of zeros near the $10^{20}$-th zero and found spectacular numerical agreement with GUE statistics ("the Odlyzko graph").
- 2000 — Jon Keating & Nina Snaith (University of Bristol) made the decisive leap in their paper "Random matrix theory and ζ(1/2+it)", Communications in Mathematical Physics 214 (2000), 57–89. Their idea: don't just model the zeros — model the value distribution of ζ itself using the characteristic polynomial of a random unitary matrix.
Keating and Snaith received the 2010 Fröhlich Prize (Keating) and related recognitions largely for this work; the paper launched an entire subfield.
2.3 The full recipe (2005)
Conrey, Farmer, Keating, Rubinstein, Snaith (CFKRS), "Integral moments of L-functions", Proc. London Math. Soc. 91 (2005) 33–104, extended the conjecture to all lower-order terms: $M_k(T)$ should be a polynomial of degree $k^2$ in $\log T$, with all coefficients given explicitly by an autocorrelation-of-characteristic-polynomials formula. Numerical agreement is astonishing (10+ digits).
3. The Mathematics, Step by Step
Step 1: The model
Let $U \in U(N)$ be Haar-random unitary. Its characteristic polynomial on the unit circle: $$Z(U,\theta) = \det(I - Ue^{-i\theta}) = \prod_{n=1}^{N}\left(1 - e^{i(\theta_n - \theta)}\right).$$
Dictionary: the eigenangle density is $\frac{N}{2\pi}$; the zeta-zero density at height $T$ is $\frac{1}{2\pi}\log\frac{T}{2\pi}$. Matching gives the fundamental calibration: $$N = \log\frac{T}{2\pi}.$$
Step 2: The exact CUE moment via Selberg's integral
Keating and Snaith evaluated the $2k$-th moment over the Circular Unitary Ensemble using Selberg's integral (Atle Selberg, 1944 — proved in a Norwegian journal and nearly forgotten for decades):
$$\mathbb{E}_{U(N)}\left[|Z(U,\theta)|^{2k}\right] = \prod_{j=0}^{N-1}\frac{j!\,(j+2k)!}{\left((j+k)!\right)^2}$$
As $N \to \infty$ this behaves as $g_k N^{k^2}$ with
$$g_k = \prod_{j=0}^{k-1}\frac{j!}{(j+k)!} = \frac{G(k+1)^2}{G(2k+1)}$$
($G$ = Barnes G-function). Values: $g_1 = 1$, $g_2 = \frac{1}{12}$, $g_3 = \frac{1}{8640} = \frac{42}{9!}$, $g_4 = \frac{24024}{16!}$ — exactly reproducing the mysterious 42 and 24024 from Conrey–Ghosh and Conrey–Gonek. This was the smoking gun.
Step 3: The arithmetic factor
Primes are invisible to RMT (a unitary matrix has no arithmetic). The Euler product factor $a_k$ arises from "diagonal terms" in the classical divisor-function analysis: $$a_k = \prod_p \left(1-p^{-1}\right)^{k^2} \sum_{m=0}^\infty d_k(p^m)^2\, p^{-m}, \qquad d_k(p^m) = \binom{m+k-1}{m}.$$
Step 4: The conjecture and its checks
$$M_k(T) \sim a_k\, g_k\, (\log T)^{k^2}.$$
- $k=1$: $a_1 = 1,\ g_1 = 1$ → $\log T$ ✓ (Hardy–Littlewood)
- $k=2$: $a_2 = 6/\pi^2,\ g_2 = 1/12$ → $\frac{1}{2\pi^2}(\log T)^4$ ✓ (Ingham)
- $k=3,4$: matches independent number-theoretic conjectures ✓✓
Rigorous progress since: Soundararajan (2009, Annals of Math.) proved conditional upper bounds $M_k(T) \ll (\log T)^{k^2+\varepsilon}$; Adam Harper (2013) sharpened to $\ll (\log T)^{k^2}$ under RH; Radziwiłł–Soundararajan and Heap–Radziwiłł–Soundararajan established matching unconditional lower bounds. The leading constant remains unproven for any $k \ge 3$.
4. Key Papers and Links
- Keating & Snaith (2000) — Random matrix theory and ζ(1/2+it), Comm. Math. Phys. 214, 57–89. https://doi.org/10.1007/s002200000261
- CFKRS (2005) — Integral moments of L-functions, Proc. LMS 91, 33–104. https://arxiv.org/abs/math/0206018
- Montgomery (1973) — The pair correlation of zeros of the zeta function, Proc. Symp. Pure Math. 24, AMS.
- Conrey & Ghosh (1998) — A conjecture for the sixth power moment of the Riemann zeta-function, IMRN 1998, 775–780.
- Soundararajan (2009) — Moments of the Riemann zeta function, Annals of Math. 170, 981–993. https://arxiv.org/abs/math/0612106
- Harper (2013) — Sharp conditional bounds for moments of the Riemann zeta function. https://arxiv.org/abs/1305.4618
- Keating & Snaith (2003) — survey: Random matrices and L-functions, J. Phys. A 36, 2859. (Excellent for a research paper's background section.)
5. Computational Examples in Python
5.1 Exact CUE moment, asymptotics, and the famous integers 1, 2, 42, 24024
from math import factorial
from fractions import Fraction
def cue_moment_exact(N, k):
"""E_{U(N)} |Z|^{2k} = prod_{j=0}^{N-1} j!(j+2k)! / ((j+k)!)^2 (exact rational)."""
result = Fraction(1)
for j in range(N):
result *= Fraction(factorial(j) * factorial(j + 2*k),
factorial(j + k)**2)
return result
def g_k(k):
"""Random matrix factor g_k = prod_{j=0}^{k-1} j!/(j+k)! (exact rational)."""
result = Fraction(1)
for j in range(k):
result *= Fraction(factorial(j), factorial(j + k))
return result
print("k | g_k | g_k * (k^2)! <-- the 'mystery integers'")
for k in range(1, 6):
g = g_k(k)
print(f"{k} | {str(g):>19} | {g * factorial(k*k)}")
# Verify the asymptotic E|Z|^{2k} ~ g_k * N^{k^2}
print("\nRatio E|Z|^{2k} / (g_k N^{k^2}) -> 1 as N grows (k=3):")
k = 3
for N in [10, 50, 200, 1000]:
ratio = cue_moment_exact(N, k) / (g_k(k) * Fraction(N)**(k*k))
print(f" N={N:5d}: {float(ratio):.6f}")
Output shows g_k * (k^2)! = 1, 2, 42, 24024, 701149020 — precisely the sequence number theorists could not explain before 2000.
5.2 The arithmetic factor $a_k$ via Euler product
import mpmath as mp
mp.mp.dps = 30
def a_k(k, prime_bound=10**5):
"""Arithmetic factor a_k = prod_p (1-1/p)^{k^2} * sum_m binom(m+k-1,m)^2 p^{-m}."""
log_a = mp.mpf(0)
ksq = k*k
for p in mp_primes(prime_bound):
p = mp.mpf(p)
s, m = mp.mpf(0), 0
while True:
term = mp.binomial(m + k - 1, m)**2 / p**m
s += term
if m > 2 and term < mp.mpf(10)**(-35):
break
m += 1
log_a += ksq * mp.log(1 - 1/p) + mp.log(s)
return mp.e**log_a
def mp_primes(n):
sieve = bytearray([1]) * (n + 1); sieve[0:2] = b'\x00\x00'
for i in range(2, int(n**0.5) + 1):
if sieve[i]:
sieve[i*i::i] = bytearray(len(sieve[i*i::i]))
return [i for i in range(2, n + 1) if sieve[i]]
print("a_1 =", a_k(1)) # -> 1
print("a_2 =", a_k(2)) # -> 6/pi^2
print("6/pi^2 =", 6/mp.pi**2) # check
print("a_3 =", a_k(3)) # needed for the sixth-moment conjecture
5.3 Monte Carlo verification: random unitary matrices vs. Selberg's exact answer
import numpy as np
from scipy.stats import unitary_group
def monte_carlo_cue_moment(N, k, samples=20000, seed=42):
rng = np.random.default_rng(seed)
total = 0.0
for _ in range(samples):
U = unitary_group.rvs(N, random_state=rng)
Z = np.linalg.det(np.eye(N) - U)
total += abs(Z)**(2*k)
return total / samples
N, k = 12, 2
mc = monte_carlo_cue_moment(N, k)
exact = float(cue_moment_exact(N, k))
print(f"CUE N={N}, k={k}: Monte Carlo = {mc:.3f}, Selberg exact = {exact:.3f}")
5.4 Testing the conjecture against ζ itself
import mpmath as mp
mp.mp.dps = 15
def zeta_moment(T, k, npts=2000):
"""(1/T) * integral_0^T |zeta(1/2+it)|^{2k} dt (composite quadrature)."""
f = lambda t: abs(mp.zeta(mp.mpc(0.5, t)))**(2*k)
return mp.quad(f, mp.linspace(0.1, T, 40)) / T
k = 1
T = 2000
lhs = zeta_moment(T, k)
# Keating-Snaith leading order, with the calibrated N = log(T/2pi):
rhs = float(g_k(k)) * a_k(k) * mp.log(T)**(k*k)
print(f"k={k}, T={T}")
print(f" measured moment : {lhs}")
print(f" a_k g_k (log T)^{k*k} : {rhs}")
print(f" ratio : {lhs/rhs}")
# For k=1 the full asymptotic is log(T/2pi) + 2*gamma - 1; try:
rhs_full = mp.log(T/(2*mp.pi)) + 2*mp.euler - 1 + mp.log(2*mp.pi) # ≈ log T + 2γ - 1
print(f" with lower-order term: {lhs/rhs_full}")
Note on convergence: because the error terms decay only in powers of $\log T$, leading-order agreement improves very slowly — this is exactly why the CFKRS full polynomial recipe matters: including all $k^2+1$ coefficients gives near-perfect agreement even at modest $T$ (see the tables in the CFKRS paper, e.g., agreement to ~10 significant figures for the sixth moment at $T \approx 2.4\times 10^6$).
6. Why This Matters for Your Riemann Hypothesis Paper
- Structural evidence for RH: the GUE/CUE statistics of zeros are consistent with the Hilbert–Pólya philosophy — that the zeros are eigenvalues of a self-adjoint operator, which would imply RH.
- The ζ–RMT dictionary is quantitative, not just qualitative: Keating–Snaith shows RMT predicts values of ζ, not merely zero spacings.
- It resolved genuine number-theoretic mysteries (42, 24024) that arithmetic methods produced but could not systematize.
- It generalizes: the same recipe (with symmetry types USp/SO from the Katz–Sarnak philosophy) predicts moments of families of L-functions — central to modern analytic number theory.