Reproducibility
Re-run every Selene shot on this site
Every chart and table on this site is rendered from a JSON file under src/data/demos/. Each JSON was produced by running a real @guppy-compiled kernel on the Selene emulator. The commands below regenerate them locally so a reviewer can confirm the numbers were not hand-edited.
emit_qft_lines + cphase_true_on in quantum/nadarasa_g1_lib.py). The v0.2 Walsh–Hadamard readout is gone. See /notes/v0-3-changelog for what changed and why.1. Environment
Python ≥ 3.11 on Linux or macOS.
python3 -m venv .venv && source .venv/bin/activate
pip install guppylang selene-sim numpyBoth packages are published by Quantinuum. guppylang compiles the kernel; selene-sim runs the shots.
2. Run any single experiment (one command per Gn)
Every Gn driver is module-callable and writes its own JSON under src/data/demos/. Wall-clocks below are laptop estimates.
| GAP | Command | Output JSON | Wall |
|---|---|---|---|
| G1 | python -m quantum.nadarasa_g1 | nadarasa_g1.json | ~3 min |
| G1·sweep | python -m quantum.nadarasa_g1_via_sweep | nadarasa_g1_via_sweep.json | ~3 min |
| G2 | python -m quantum.nadarasa_g2 | nadarasa_g2.json | ~5 min |
| G2·real | python -m quantum.nadarasa_g2_real | nadarasa_g2_real.json | ~4 min |
| G3 | python -m quantum.nadarasa_g3 | nadarasa_g3.json | ~4 min |
| G4 | python -m quantum.nadarasa_g4 | nadarasa_g4.json | ~30 s |
| G5 | python -m quantum.nadarasa_g5 | nadarasa_g5.json | ~2 min |
| G6b | python -m quantum.nadarasa_g6b | nadarasa_g6b.json | ~3 min |
| G7 | python -m quantum.nadarasa_g7 | nadarasa_g7.json | ~1 min |
| G8 | python -m quantum.nadarasa_g8 | nadarasa_g8.json | ~2 min |
| G9 | python -m quantum.nadarasa_g9 | nadarasa_g9.json | ~1 min |
| G10 | python -m quantum.nadarasa_g10 | nadarasa_g10.json | ~2 min |
| G10·φ | python -m quantum.nadarasa_g10_phasefinder | nadarasa_g10_phasefinder.json | ~5 min |
| G11 | python -m quantum.nadarasa_g11 | nadarasa_g11.json | ~1 min |
| G11·real | python -m quantum.nadarasa_g11_real | nadarasa_g11_real.json | ~1 min |
| G12 | python -m quantum.nadarasa_g12 | nadarasa_g12.json | ~4 min |
Headline-experiment shortcut: the G2 two-window driver is the original refutation pressure on Conjecture C1. Expect ~5 minutes on a laptop.
python -m quantum.nadarasa_g2Then open /nadarasa/g2 — the chart and verdict update from your freshly produced JSON.
3. Diff against the published JSON
Selene's RNG is seeded; numbers should match to within shot noise (≲ 1/√shots). A larger drift means one of the kernels changed.
git diff -- src/data/demos/4. Read the Guppy source
quantum/sweep.py—SweepSpec+SweepRunner; the parameter-sweep abstraction used by G1·sweep, G8, G9, G12.quantum/nadarasa_g2.py— driver: builds templated kernels, runs Selene, writes the JSON.quantum/nadarasa_g11_real.py— CSWAP-chain cyclic shift for real controlled mul-by-2 mod 15 (Shor on a = 2, N = 15).quantum/nadarasa_g10_phasefinder.py— NumPy Powell loop recovering φ for QSP from a Chebyshevsign(x)target.quantum/generate_demos.py— regenerates the other JSON files on the dashboard (Shor / QSVT / QTDA / QML / resources).
Index of every kernel and its visualization page: /selene-notes.
Found a bug?
Misreading a Guppy primitive, a wrong baseline, an off-by-one in the slope sweep — please flag it. The whole point of this site is that the refutation is on the page and the source is open.