Spectral Form Factors and Ramp–Plateau Physics
Scrollable formula. Use Left and Right arrow keys to reveal hidden content.
Scrollable table. Use Left and Right arrow keys to reveal additional columns.
Scrollable figure. Use Left and Right arrow keys to inspect hidden content.
The spectral form factor separates correlations in a discrete energy spectrum from the smooth density of states. After unfolding and subtracting the disconnected contribution, a linear random-matrix ramp diagnoses long-range level correlations, while a late plateau reflects spectral discreteness. The dip of the full statistic is partly a competition with the decaying smooth-density term. None of these features alone uniquely identifies a wormhole, an ensemble ontology, or a particular microscopic theory.
Required background. Quantum Information supplies traces, ensemble averages, variance, and finite-sample estimators.
Helpful background. Semiclassical Gravity supplies Euclidean topology expansions; Quantum Fields in Curved Spacetime supplies thermal traces; Black-Hole Information supplies factorization and replica saddles; Quantum Gravity supplies the microscopic-interpretation problem.
Full and connected spectral form factors
Section titled “Full and connected spectral form factors”For one Hamiltonian ,
An ensemble spectral form factor is
Its disconnected and connected pieces are
is largely fixed by the smooth one-point density. The correlation diagnostic is after energy unfolding, symmetry-sector separation, and a declared ensemble or time average. Cotler and collaborators distinguish slope, dip, ramp, and plateau and relate them to black-hole spectral questions in Cotler et al. 2017, §§2–4.
The plateau has a simple check independent of random-matrix theory. Expanding the product gives . For a discrete nondegenerate spectrum, an infinite-time average removes the terms with , leaving . With degeneracy , the answer is instead . Thus discreteness supplies a time-averaged plateau; correlations determine how the statistic approaches it. At , dividing by the number of retained nondegenerate levels gives the unit plateau used below.
Dataset, calibration, and selections
Section titled “Dataset, calibration, and selections”The named generated dataset is GUE64-512-seed2207-v1. It contains 512 independent complex Hermitian matrices in the Gaussian unitary ensemble, generated with PCG64 seed 2207. If has independent real and imaginary standard normal entries, the generator uses
The reference environment is CPython 3.11.9 and NumPy 2.0.2. An independent rerun with NumPy 2.3.5 agrees at the printed precision. No realizations or degeneracies were discarded; exact degeneracies, if encountered, would be retained. The full eigenvalue mean is and the calibrated second moment is , consistent with the unit-variance semicircle normalization.
For each sorted spectrum, select indices 16 through 47: the central 32 levels. This fixed-count window discards 16 edge levels on each side. Unfold each retained eigenvalue using the theoretical semicircle cumulative distribution
The observed retained range is . No empirical polynomial fit is used. With mean unfolded spacing one, define and . The Fourier phase is , consistent with the site convention .
This spectral unfolding removes the leading variation of the smooth mean density while preserving local ordering. It is a transformation with its own systematic uncertainty, not a harmless relabeling.
Estimator and measured ramp
Section titled “Estimator and measured ramp”For realization with retained levels, define
The estimators are
Uncertainties are delete-one-realization jackknife standard errors for . This plug-in connected estimator is the sample variance with denominator , so its expectation is . Multiplying it by would remove that finite-sample bias. The table deliberately retains the estimator displayed above; its downward bias is smaller than the reported statistical errors and is not included in those error bars. The selected time grid was fixed before inspecting the results; all nine points are reported.
| Scaled time | Full result | Disconnected result | Connected result | Jackknife error |
|---|---|---|---|---|
| 0.02 | 6.498183 | 6.469651 | 0.028532 | 0.001269 |
| 0.05 | 1.217684 | 1.161490 | 0.056194 | 0.002500 |
| 0.10 | 0.209153 | 0.101188 | 0.107965 | 0.004427 |
| 0.20 | 0.260469 | 0.039878 | 0.220592 | 0.009553 |
| 0.40 | 0.411581 | 0.002489 | 0.409091 | 0.018618 |
| 0.70 | 0.650325 | 0.001045 | 0.649281 | 0.027965 |
| 1.00 | 1.070236 | 0.004657 | 1.065579 | 0.042607 |
| 1.50 | 0.967789 | 0.008394 | 0.959394 | 0.042023 |
| 2.00 | 1.030791 | 0.003374 | 1.027417 | 0.042150 |
The full statistic dips near as the disconnected piece decays. The connected values then track the GUE large-size benchmark for and approach the unit plateau for . The ramp, rather than the early smooth-density slope, is the feature diagnosing correlations beyond the one-point density. The deviation at is compatible with statistical uncertainty; this sample alone does not identify a finite-window or finite- systematic shift.
The principal finite-size limitation is that a 64-level matrix with only 32 retained levels has a short ramp and a noisy late-time plateau. Neither a pointwise unit plateau nor an exactly linear slope is expected in one finite sample. The fixed-count window also forces in every realization, so exactly. A Poisson comparison with the same window must respect this endpoint rather than demand an immediate unit value at .
Exact reproduction
Section titled “Exact reproduction”Save the following program as sff_gue64.py; it generates the matrices, performs the declared selection and unfolding, and emits both calibration and the table.
import numpy as np
SEED, SAMPLES, N, M = 2207, 512, 64, 32TIMES = (0.02, 0.05, 0.10, 0.20, 0.40, 0.70, 1.00, 1.50, 2.00)rng = np.random.default_rng(SEED)x = (rng.normal(size=(SAMPLES, N, N)) + 1j * rng.normal(size=(SAMPLES, N, N)))h = (x + x.conj().transpose(0, 2, 1)) / (2.0 * np.sqrt(N))all_levels = np.linalg.eigvalsh(h)levels = all_levels[:, N // 4:3 * N // 4]
def semicircle_cdf(energy): energy = np.clip(energy, -2.0, 2.0) root = np.sqrt(np.maximum(0.0, 4.0 - energy * energy)) return (0.5 + energy * root / (4.0 * np.pi) + np.arcsin(energy / 2.0) / np.pi)
def connected_and_jackknife(amplitude): power = np.abs(amplitude) ** 2 estimate = power.mean() - abs(amplitude.mean()) ** 2 leave_power = (power.sum() - power) / (SAMPLES - 1) leave_mean = (amplitude.sum() - amplitude) / (SAMPLES - 1) leave_connected = leave_power - np.abs(leave_mean) ** 2 error = np.sqrt((SAMPLES - 1) / SAMPLES * np.sum((leave_connected - leave_connected.mean()) ** 2)) return estimate, error
unfolded = N * semicircle_cdf(levels)second_moments = np.mean(all_levels ** 2, axis=1)second_error = second_moments.std(ddof=1) / np.sqrt(SAMPLES)print(f"mean={all_levels.mean():.8f} second={second_moments.mean():.8f} " f"second_se={second_error:.8f}")print("tau full disconnected connected jackknife_se")for tau in TIMES: amplitude = np.exp(-2j * np.pi * tau * unfolded).sum(axis=1) / np.sqrt(M) full = np.mean(np.abs(amplitude) ** 2) disconnected = abs(np.mean(amplitude)) ** 2 connected, error = connected_and_jackknife(amplitude) print(f"{tau:.2f} {full:.6f} {disconnected:.6f} " f"{connected:.6f} {error:.6f}")Run python3 sff_gue64.py in that pinned environment. The matrix entries are generated data rather than a committed external dataset; seed, algorithm, parameters, transformation, selection, estimator, and output precision fully specify regeneration.
Systematics and adverse checks
Section titled “Systematics and adverse checks”At , repeating the same generator and central-half selection gives for with 512 samples, for with 512 samples, and for with 256 samples. Their spread is consistent with finite-sample uncertainty; it is not evidence for an exact unit slope at these sizes.
Additional systematics are the central-window fraction, theoretical versus empirical unfolding, realization count, time binning, disconnected subtraction, and matrix symmetry class. GOE changes the universal ramp coefficient; mixing symmetry sectors can wash out level repulsion. A Poisson spectrum has no GUE linear connected ramp after proper averaging, while a picket-fence spectrum produces recurrences that can masquerade as a plateau on a short window.
The permissive gravitational interpretation associates the connected ramp with a Euclidean double-trumpet saddle, as in the JT/matrix relation Saad, Shenker, and Stanford 2019, §§2–5. A conservative interpretation calls the ramp evidence for universal correlated levels but not for a unique spacetime saddle. A single-sample interpretation obtains similar local statistics after time or energy smoothing without claiming a literal ensemble. These competing positions agree on the estimator but not its ontology; the inference remains unresolved.
Results and open questions as of 2026-08-19
Section titled “Results and open questions as of 2026-08-19”The frontier cutoff is 2026-08-19.
| Evidence or result | Model and analysis choice | Limitation or competing conclusion |
|---|---|---|
| Dip, ramp, and plateau in chaotic spectra, Cotler et al. 2017, §§2–4 | Random-matrix and selected many-body spectra with declared averaging | Finite-size, smoothing, and disconnected-density artifacts must be separated |
| JT connected topology match, Saad, Shenker, and Stanford 2019, §§2–5 | Perturbative JT gravity and matrix-integral correlators | Establishes a controlled model, not a unique saddle interpretation for every theory |
| Symmetry-class dependence, Stanford and Witten 2020, §§2–5 | JT variants and random-matrix symmetry classes | Ramp coefficient and plateau structure depend on antiunitary symmetries and sectors |
Useful adverse checks compare the result with a calculation that omits disconnected subtraction, or with independent levels drawn from the same smooth one-point density and processed with the same window and normalization. The first exposes the early smooth-density contribution; the second removes level correlations while preserving the density in expectation. Merely shuffling nearest-neighbor spacings is not a Poisson control: it retains their level-repulsion distribution and can leave nontrivial spectral correlations. Omitting unfolding is also not, by itself, an invalid calculation; it changes the statistic and requires comparison with an appropriately density-weighted theoretical prediction.
The conclusions could change after a larger named dataset changes the unfolded connected statistic beyond quoted finite-sample errors, after a controlled single-theory gravity calculation fixes the averaging prescription, or after a new saddle or symmetry sector changes the predicted ramp or plateau normalization.
Exercises
Section titled “Exercises”At , use the table to compute the fraction of the full result due to the disconnected term. Why would fitting the full value alone still be a poor test of the GUE ramp at ?
Solution
The fraction is , about , so the full and connected estimators nearly agree at . At , the disconnected contribution is out of , about . The full early-time curve is therefore controlled by the smooth density, not the connected level correlations; fitting it as a ramp would test the wrong quantity.
References
Section titled “References”- Cotler et al. 2017, Jordan S. Cotler et al., “Black Holes and Random Matrices,” Journal of High Energy Physics 05 (2017) 118.
- Saad, Shenker, and Stanford 2019, Phil Saad, Stephen H. Shenker, and Douglas Stanford, “JT Gravity as a Matrix Integral,” arXiv:1903.11115 (2019).
- Stanford and Witten 2020, Douglas Stanford and Edward Witten, “JT Gravity and the Ensembles of Random Matrix Theory,” Advances in Theoretical and Mathematical Physics 24 (2020) 1475–1680.