# dkmm/ -- certificates for the KKLT benchmark (main text Section 5; Supplementary Material Section S3)

This directory contains the code and data behind the statements of Section 5 of the main text about the flux
vacuum of Demirtas, Kim, McAllister and Moritz (DKMM, arXiv:1912.10047) on the mirror of the degree-18 hypersurface in
CP[1,1,1,6,9], and about the AdS vacuum 5-81-3213 of arXiv:2107.09064. Everything labeled certified is an Arb ball
(python-flint) whose radius is a rigorous error bound: exact rational series coefficients, proved tail bounds (the lemma
in `majorant/`), ball arithmetic elsewhere, and a Krawczyk interval-Newton step for the critical point. The only
floating-point computation is the comparison worksheet in `pilot/`, which is labeled as such.

| directory | what it establishes | paper |
|---|---|---|
| `cert_w0_vac/` | existence and uniqueness of the F-term critical point of the DKMM superpotential in the box of SM Table S3, and the enclosures \|W0\|_vac = 2.0371060933111834191228615593319846787338...e-8 +/- 4.36e-148, Im tau_vac = 6.8554572563187259039156861046... +/- 6.76e-149 | Eqs. (66)-(67), Table 6; SM Section S3.3, Tables S3-S4 |
| `cert_w0/` | the certified period vector and \|W0\| on the one-parameter curve through the vacuum (the companion value \|W0\|(s*, tau*) = 2.0366366850674102932936107130...e-8 +/- 4.62e-166), the exact integral frame at the point of maximal unipotent monodromy, and the transport with proved tail bounds that `cert_w0_vac/` builds on | Section 5.2, Eqs. (63)-(65); SM Section S3.3 |
| `majorant/` | the tail-envelope lemma for Frobenius jet towers used by every transport leg (statement and proof in `majorant/README.md`), its implementation and regression tests | Eq. (15) of the main text; SM Section S4 |
| `pilot/` | the comparison of the published values 2.037e-8, 2.048e-8 and 2.0482e-8: keeping or dropping the zeta(3) chi term reproduces each (floating point, mpmath; exact rational polynomial layer) | Section 5.3, Table 7; SM Section S3.2 |
| `pfaffian_ads581/` | the conditional certified value of the undressed \|W\| for the AdS vacuum 5-81-3213, 2.0377822475698608540440976364927797...e-23 +/- 7.72e-91 (published: 2.03778e-23), from an exact 17x17 connection matrix and directly summed period towers | Section 5.4, Eq. (69); SM Eqs. (S3.5)-(S3.7) |
| `restrict/` | exact inputs shared by `cert_w0/` and `cert_w0_vac/`: the order-6 Picard-Fuchs operator restricted to the curve (`operator_LS.json`, theta-form, s-degree 63), the rho-jet tower on the curve, the holomorphic series, the Gopakumar-Vafa numbers used for cross-checks, and the curve parameter s_vac | Section 5.2 |
| `manifests/` | SHA-256 sums of the arXiv source archives and the public repository snapshot from which conventions and flux data were read | Section 5.1 |

## Requirements

Python 3 with `python-flint` (Arb ball arithmetic) for `cert_w0/`, `cert_w0_vac/` and `pfaffian_ads581/`; `mpmath` for `pilot/`
and the `checks` steps; `sympy` for `cert_w0_vac/jet_ideal.py`; `numpy` for `pfaffian_ads581/check_pa1.py` (it reads the `.npz`
sample bank). Tested with Python 3.12.3, python-flint 0.8.0, mpmath 1.3.0, sympy 1.14.0, numpy 2.4.1 and 1.26.4. One core; no
network access. Peak memory stays under 8 GB.

## How to run

Each script resolves its inputs inside this directory tree. Result files (`result_*.json`, `checks_*.json`) and transcripts
(`out_*.txt`) of a reference run are included; re-running overwrites the JSON files in place, and the new balls must
overlap the shipped ones (they are identical when the same library versions are used, apart from the recorded wall-time
fields `wall_s`, `wall_companion_s`, `wall_krawczyk_s`; run `sha256sum -c SHA256SUMS` in the parent folder before
re-running if byte integrity of the shipped result files is to be checked).

```
cd pilot        && python3 repro_w0.py && python3 rt_1d_check.py           # Table 7 grid; exact-fraction layer asserted
cd majorant     && python3 selftest_envelope.py                            # lemma regression tests (prints SELFTEST: ALL CHECKS PASS)
cd cert_w0      && python3 run_cert.py stage1 \
                && python3 run_cert.py route R 60  && python3 run_cert.py route C 60 \
                && python3 run_cert.py route R 150 && python3 run_cert.py route C 150 \
                && python3 run_cert.py checks                              # writes checks_cert.json
cd cert_w0_vac  && python3 jet_ideal.py && python3 jet_checks.py \
                && python3 run_vac.py solve 60 R && python3 run_vac.py solve 150 R && python3 run_vac.py solve 150 C \
                && python3 run_vac.py checks                               # writes checks_vac.json
cd pfaffian_ads581 && python3 check_pa1.py 2147483489 && python3 jets_series.py 3000 && python3 check_pa2.py && python3 verdict.py
```

Routes R and C are two transport paths on the curve (a real-axis path and a complex detour with a different base point
and 54 legs); 60 and 150 are the working precisions in decimal digits. The `checks` steps compare the two precisions,
the two routes, the on-curve companion and the vacuum value, print PASS/FAIL lines, and exit with status 1 if any
comparison fails; every other step stops with an assertion error or a FAIL line and nonzero status on inconsistent
input, so the `&&` chains above stop at the first failure.

Measured wall times on one x86 core (this release, fresh copy): pilot about 20 s; majorant self-test about 5 s;
`cert_w0` stage1 about 12 s, route R legs 16-18 s, route C legs 93-106 s; `cert_w0_vac`:
`jet_ideal.py` about 30 s, route R legs 17-22 s, route C 150 about 119 s; `pfaffian_ads581`:
`check_pa1.py` about 2 s, `jets_series.py 3000` about 132 s, `check_pa2.py` about 1 s, `verdict.py` about 5 s;
`restrict/gamma2p.py` about 1 s.

## What is not claimed

The enclosure of \|W0\|_vac is for the dressed quantity \|W0\| = e^{(K_cs + K_tau)/2} \|W\| of DKMM's definition, at the
critical point of the full three-modulus F-term system with all instanton orders entering through the Picard-Fuchs
ideal; the complex-structure Kaehler factor stored in `result_vac_R_150.json` (`emKcs`) is in the homogeneous gauge
X^0 = varpi_0, not X^0 = 1 (SM Table S4 gives both). The AdS value in `pfaffian_ads581/` is conditional on the
flux-quantization convention of its source (odd integer quanta with one half D3-brane, Q_flux = 71/2) and on the fixed
point s_vac = -1/180, tau* from the racetrack solution; no F-term certificate is computed for that vacuum, and the
value is the undressed \|W\| in the gauge X^0 = varpi_0(s).
