Validation
qkd is checked against published numbers in two tiers, each with its own success criterion and failure meaning. Both run as MDR exams; one exam is a declared skip.
The scoreboard
Theory: qkd reproduces what a paper computed. Experiment: qkd reproduces what a paper measured, at a stated number of fitted parameters. A family can be green on the first and empty on the second.
A green row can answer an easier question than its neighbour. Every anchor reachable from q. outside Gaussian modulation and BB84-WCP is asymptotic; six-state on a single-photon source, MDI-BB84, RRDPS and mode pairing have finite-key anchors in qkd._core. Refused finite-key analyses, per family: Security.
The two tiers are not one score
A Tier A green cell: qkd and the paper computed the same quantity and got the same number, every input pinned. A Tier B green cell: physical parameters inside declared ranges reproduce a measurement. Tier B is strictly weaker, and its parameter count is part of the claim.
| Tier A | Tier B | |
|---|---|---|
| Free parameters | none | named, counted, and bounded in the Tier B table |
| Target | the paper's own computed value | the paper's measured observables |
| Success | equality to the quoted precision, or a correctly-signed inequality | inside the stated uncertainty, from fitted values that are themselves plausible |
| A failure means | a bug, or a convention mismatch | the noise model is falsified; a fit needing an absurd parameter falsifies it louder than a miss |
| Cost | milliseconds on the debug build: pinning collapses run() to closed form | a fit, reported with its free parameters |
The theory axis has three levels, and they are not interchangeable
"It matches the paper" is not an answer. Every Tier A cell carries a qualifier, and the qualifier is the claim.
| Level | Qualifier | Means |
|---|---|---|
| 1 | ✅ exact | the same quantity, agreeing to numerical precision. The tolerance is round-off, |
| 1, at the source's precision | ✅ values | a published constant, table or figure reproduced to the digits the source prints. The source's last digit is the tolerance: the same number, a weaker agreement than exact |
| 2 | ✅ bound | a correctly-signed inequality; not the same number |
| 3 | ⚙ structural | no published number, but the behaviour the source requires |
| orthogonal to level | ⚠️ pinned input | one input read from the literature rather than derived, named in the exam |
In Tier B the qualifier is a count of free parameters. A prediction the fit did not reach is a declared miss, kept rather than tuned away.
The board
| Protocol family | Reached through | Tier A — theory, nothing fitted | Tier B — experiment, parameters fitted |
|---|---|---|---|
| Gaussian modulation, homodyne | q.Link | ✅ values — Lodewyck 2007's three printed kb/s figures | ✅ 3 assumed — default metro link inside the measured |
| Gaussian modulation, heterodyne | q.Link | ✅ bound — Jain 2022 | ✅ 3 fitted — Hajomer 2024, |
| Long-distance / worst-case CV | q.Link | ✅ bound — Zhang 2020 | ✅ 0 fitted — Zhang's six measured points, each at its own published parameters |
| Finite-size machinery | q.FiniteSize, q.KeyBlock | ⚙ structural — Leverrier 2010 (continuous variable) and Lim et al. 2014 (decoy BB84) | — not applicable |
| Differential phase shift | q.Link | ⚙ structural — WTY 2006; QBER derived | ✅ 4 fitted — Diamanti et al. 2006; ✅ 3 fitted — their full 3.4% with timing jitter, exactly determined; ✅ 1 fitted — Takesue et al. 2007's 42.1 dB reach, where qkd and the paper evaluate the same expression |
| Round-robin differential phase shift | qkd._core | ✅ values — Yin et al. Table 1 in both columns, and their reading of the | ✅ 1 fitted — Takesue, Sasaki, Tamaki & Koashi, Nat. Photon. 9, 827, arXiv:1505.07914, 30 km (ExpTakesueTrain) |
| Coherent one way | q.Link | ⚙ structural ⚠️ pinned input — Gao et al. 2022 reach, phase-error bound read off their figure; ✅ bound — the certified COW′ bound, SDP · Bound | ✅ 1 fitted — Stucki et al. 2009 QBER curve to 250 km; ✅ 2 fitted — Korzh et al. 2015 to 307 km. Both papers' rates bounded, not reproduced |
| Decoy states | q.Decoy | ✅ values — Ma, Qi, Zhao & Lo 2005 on the GYS set | ✅ 0 fitted on the background anchor, 1 fitted on the rate — Lucamarini et al. 2013's T12, the first decoy observables reproduced |
| BB84 with weak coherent pulses | q.BasisKeying | ✅ values — GLLP (Gottesman, Lo, Lütkenhaus & Preskill, QIC 5, 325 (2004)) with decoy on the GYS set; ✅ bound — the finite-key length below Zhang, Zhao, Razavi & Ma 2017 | ✅ 2 fitted — Gobby, Yuan & Shields 2004 over 122 km |
| Six-state | q.BasisKeying(bases=3) | ✅ exact — Rev. Mod. Phys. 81, 1301 App. A, Eqs. (A4)–(A6); ✅ values — the 12.6% threshold at 12.6193% | ✅ 0 fitted on the anchor, 1 fitted on the partial-attack leg — Enzer et al. 2002 |
| SARG04 | q.BasisKeying(announce="pair") | ✅ exact — Fung, Tamaki & Lo Eq. (34); ✅ values — 9.689% and 2.710% tolerable, 97.2 km with decoy | ✅ 1 fitted — Jeong et al. 2014, BB84 and SARG04 on one rig |
| B92 | q.TwoStateKeying | ✅ values — Tamaki & Lütkenhaus's three depolarising thresholds at 0.03379, 0.02313, 0.01215 | ✅ 1 fitted — Hughes et al. 1999 over 48 km; ✅ 1 fitted — Gordon et al. 2004's QBER curve to 9.96 km |
| E91, priced by the violation | q.ViolationBound | ✅ exact — Acín et al.'s | ✅ 0 fitted — Naik et al. 2000; ✅ 0 fitted — Ling et al. 2008 |
| Discrete modulation, | q.PhaseShiftKeying | ✅ values — Denys, Brown & Leverrier 2021 from primary sources; Ghorai et al. 2019 QPSK curve to | ✅ 0 fitted — Hajomer et al. 2024's four 10 GBaud rows, as a ceiling |
| Continuous-variable relay (CV-MDI) | q.Swap | ✅ values — zero crossings and asymmetry against Pirandola et al. 2015; PLOB as a ceiling | ✅ 0 fitted — Hajomer et al. 2025 over 10 km |
| Basis-keyed relay (MDI-BB84) | q.Swap | ✅ values — Ma & Razavi 2012's closed forms at their own limits, Xu et al. 2013's joint decoy bound sandwiched, Lo, Curty & Qi's stated 40 dB tolerance | ✅ 1 fitted — Rubenok et al. 2013, sixteen measured gains and eight error rates |
| Mode-pairing / asynchronous MDI | qkd._core | ✅ values — Zeng et al. 2022's two closed-form intensity optima; ⚙ structural — the | ✅ 0 fitted — Zhu, Huang, Liu, Zeng, Zou, Dai, Tang, Li, You, Wang, Chen, Ma, Chen & Pan, Phys. Rev. Lett. 130, 030801 (2023), arXiv:2208.05649, 101–407 km (ExpZhuPairing) |
| Entanglement-based basis keying (BBM92) | q.PairLink | ✅ exact — Ma, Fung & Lo 2007 Eqs. (9)–(10) against an independent four-detector enumeration; Acín et al. 2007's | ✅ 1 fitted — Honjo et al. 2008 over 100 km |
| Loss-tolerant source flaws | qkd._core | ✅ exact — Pereira, Curty & Tamaki's printed yield to | ✅ 0 fitted — Xu, Wei, Sajeed, Kaiser, Sun, Tang, Qian, Makarov & Lo, "Experimental quantum key distribution with source flaws", Phys. Rev. A 92, 032305 (2015), arXiv:1408.3667, three distances (ExpXuFlaws). ⚠️ Not test/flaws.py, which uses Xu's flaw magnitude only as MIZ_FLAW, Mizutani's simulation setting, and reproduces none of Mizutani's Figs. 2–7 |
| Certified COW′ phase error (SDP) | qkd._core | ✅ bound — at or below Gao et al.'s Cauchy–Schwarz estimator at every operating point, at or above the honest channel; ⚙ structural — the | ✅ 1 fitted — Cao, Sun, Li, Lu, Yin & Chen, Sci. Adv. 12, eaec2776, arXiv:2601.06772, four distances and both records (ExpCaoVacuum) |
| Detector attacks | q.attacks | ✅ values — Qin et al.'s level-II displacement, 19.54 against their stated 19.5, and | ✅ 0 fitted — Zhao's time-shift counts, Weier's seven blinding intensities, Lydersen's threshold ratio |
| Reconciliation and post-processing | q.reconcile | ✅ values — Jouguet et al. Tables I–III; Martinez-Mateo et al. Eqs. (4) and (6) turning their Table 3's columns into one another; simulated Cascade's counted parities reproduce their | — not applicable: their |
| Truncated-Fock / non-Gaussian | q.fock | ✅ values — closed-form Wigner values and the | ✅ 0 fitted — Lvovsky et al. 2001's measured Wigner dip |
| Discrete modulation, the certified proof | qkd._core (dm_secure) | ✅ exact — the reduced relative entropy against an explicit numpy construction of the Kraus image to | ❌ none |
| Photon-number-resolving detection | q.ThresholdArray, q.PnrDetector | ✅ exact — the one-element array reproduces click.rs's threshold law to 2 ulp over efficiency, dark rate and flux, and the occupancy recursion agrees with the closed inclusion–exclusion form in exact rational arithmetic; ⚙ structural — completeness and positivity on the truncated space, and a shortfall from true number resolution first order in | ❌ none |
| Transmitted local oscillator | q.TransmittedLO | ✅ exact — every quantity reduces to the locally generated path as the oscillator is made local, the key-rate difference exactly zero across trust modes and both detectors, and the reconstruction at a transparent channel is the Gaussian layer's two-mode squeezed vacuum; ✅ values — Jouguet, Kunz-Jacques & Diamanti's calibration point, a shot-noise ratio of 1.525 erasing a full intercept-resend at | ❌ none — but it bears on two green rows; below |
| Finite key, six-state | qkd._core (sixstate_finite) | ⚙ structural — Scarani & Renner's Lemmas 1–3: never above the asymptotic rate at any block, bias or error rate, monotone in the block, exactly zero past the 12.6193% asymptotic crossing, an interior optimum in the basis bias; ✅ values — convergence onto sixstate_secret as | — not applicable |
| Finite key, MDI-BB84 / RRDPS / mode pairing | qkd._core | ✅ values — rrdps_split returns Takesue et al.'s five hand-fixed values, and Xie et al.'s printed | ❌ none |
| The repeaterless-capacity envelope | cross-family | ✅ exact — an ideal reverse-reconciled homodyne link sits at exactly half the PLOB capacity at every transmittance, residual | — not applicable |
| Network layer (key management, not physics) | q.Network | — no bound to reproduce | ✅ 1 fitted — Sharma et al. 2026's MAQAN testbed, with a |
| Distinction inside Tier A | Row by row |
|---|---|
| Exact versus inequality | Lodewyck is the one Gaussian-modulation row computing the identical quantity, at the source's printed three significant figures: a values row, not exact. Zhang and Jain publish finite-size or composable rates, which an asymptotic point estimate must exceed |
| Numeric versus structural | the Leverrier and WTY rows reproduce no published number; they check the machinery behaves as the source requires. The DPS protocol under the bound is anchored by the click exams against |
The network row's Tier B cell is green on reachability and on its controller's two reroute thresholds only. Its rate prediction is a declared miss at
| Open in Tier B | Why |
|---|---|
| The relative-entropy proof for discrete modulation | its published comparisons are calculations; a row needs a fielded discrete-modulation run at parameters the proof accepts. Nearest published-data check: not pinned |
| Photon-number-resolving detection | nothing here reaches a key rate. A row needs a published PNR characterisation stating element count, efficiency and background beside measured click statistics |
| Finite key for MDI-BB84, RRDPS and mode pairing | no fielded run publishes a block size and an epsilon budget beside its counts |
| Transmitted local oscillator | not for want of an experiment: the two closest are green rows under a different engine (below) |
Tier A — theory anchors, exact
Pin everything the paper states —
The continuous-variable rows
| Anchor | Configuration | Reproduced |
|---|---|---|
| Lodewyck et al. 2007, 25 km (arXiv:0706.4255) | homodyne, trusted, asymptotic | values: |
| Zhang et al. 2020, 202.81 km (arXiv:2001.02555) | homodyne, trusted, worst-case | |
| Jain et al. 2022, 20 km LLO (arXiv:2110.09262) | heterodyne, trusted receiver | asymptotic |
| Leverrier et al. 2010 (arXiv:1005.0339) | finite-size machinery | three properties: below asymptotic, convergence to |
| Denys, Brown & Leverrier 2021 (arXiv:2103.13945) | constellation moments and the certified correlation to dm_holevo at an unbounded alphabet reproduces cv_rate to | |
| Ghorai, Grangier, Diamanti & Leverrier 2019 (PRX 9, 021059) | QPSK, linear-objective SDP, | rate-versus-distance curve to better than |
| Pirandola et al. 2015, High-rate quantum cryptography in untrusted networks, Nat. Photon. 9, 397 (arXiv:1312.4104) | CV relay, pure-loss arms | symmetric zero crossing |
| Number-state and cat closed forms | truncated Fock | vacuum |
The threshold-detector and qubit rows
| Anchor | Configuration | Reproduced |
|---|---|---|
| Waks–Takesue–Yamamoto 2006 (quant-ph/0508112) | DPS, individual attacks | four structural properties: |
| Ma, Qi, Zhao & Lo 2005 (quant-ph/0503005) | vacuum+weak decoy, GYS hardware | Sec. 3.1 and Figs. 1–2: |
| BB84-WCP on the same GYS set | GLLP, fed the infinite-decoy | positive at 140 km and zero by 145 km; |
| Lim, Curty, Walenta, Xu & Zbinden 2014 (arXiv:1311.7129) | decoy BB84 finite key, GYS hardware | the counted-event bounds reduce to the rate-based decoy layer: |
| Zhang, Zhao, Razavi & Ma 2017 (arXiv:1611.02524) | the same protocol under a tighter concentration inequality | their Table 3 BB84 row, |
| Gao et al. 2022, COW (arXiv:2107.09329) | post-zero-error-attack analysis | positive within 100 km, below |
| Bruß 1998 and Scarani et al. 2009, Rev. Mod. Phys. 81, 1301, App. A | six-state, one-way, Bell-diagonal | exact: Eq. (A4) against Eq. (A5) as printed to |
| Fung, Tamaki & Lo 2006, PRA 73, 012337 (quant-ph/0510025) | SARG04, unconditional, one and two photons | exact: the engine's phase bound is their Eq. (34) at |
| Branciard et al. and Niederberger et al., photon-number splitting ceilings | SARG04 against BB84 | optimised ceilings scale as |
| Tamaki & Lütkenhaus 2004, PRA 69, 032316 (quant-ph/0308048) | plain B92, lossy and noisy | tolerable depolarising rates 0.03379, 0.02313, 0.01215 against 0.034, 0.023, 0.012 at |
| Koashi 2004, PRL 93, 120501 (quant-ph/0403131) | strong-reference B92 | the |
| Ekert 1991, PRL 67, 661; Acín et al. 2007 (quant-ph/0702152); Pironio et al. 2009 | E91 priced by the CHSH violation | exact: the error bridge inverts Acín's |
| Ma & Razavi 2012 (arXiv:1204.4856) | MDI-BB84 forward model, weak coherent pulses | four parameter-free limits of their Eqs. (21), (23), (35), (39), (51)–(54): |
| Xu, Curty, Qi & Lo 2013 (arXiv:1305.6965) | MDI-BB84 joint decoy bound, Eq. (1) and Table 2 | the three-intensity |
| Lo, Curty & Qi 2012 (arXiv:1109.1473) | MDI-BB84 reach, standard parameter set | their more than 40 dB tolerance, about 200 km, holds: positive at 200 km, dead by 260. Three-intensity secure distance 230.5379 km / 46.1076 dB; |
| Zeng, Zhou, Wu & Ma 2022, Nat. Commun. 13, 3903 (arXiv:2201.04300) | mode-pairing / asynchronous MDI | their two closed-form intensity optima off a sweep: -log1p(-eta)/ln 2. The arXiv id is routinely given wrong: W8, W9 |
| Ma, Fung & Lo 2007 (quant-ph/0703122) | entanglement-PDC pair source, threshold detectors | Eqs. (9) and (10) against an independent four-detector enumeration: worst gain residual |
| Tamaki, Curty, Kato, Lo & Azuma 2014, PRA 90, 052314 (arXiv:1312.3514), with Pereira, Curty & Tamaki 2019, npj QI 5, 62 (arXiv:1902.02126) | loss-tolerant analysis with state-preparation flaws | exact: Pereira's printed yield to |
| Seksaria & Prabhakar (2026), Sec. VI D, tightening Gao et al., Opt. Express 30, 23783 (2022) (arXiv:2107.09329) | COW′ certified phase error, by semidefinite programme | certified worst case at or below the Cauchy–Schwarz estimator at every operating point and at or above the honest channel's phase error. The certified rate is about twice the analytic one at each bound's own optimum, falls as |
| Qin, Kumar & Alléaume 2016, PRA 94, 012325 (arXiv:1511.01007) | homodyne saturation attack | values: Sec. VII.3.1's sat_gain holds |
| Jouguet, Kunz-Jacques & Diamanti 2013, PRA 87, 062313 (arXiv:1304.7024) | local-oscillator calibration attack | Eqs. (7) and (8) at |
| Qi, Fung, Lo & Ma 2007, QIC 7, 73 (quant-ph/0512080) and Fung, Tamaki, Qi, Lo & Ma 2009, QIC 9, 131 (arXiv:0802.3788) | detection-efficiency mismatch | Eq. (2) gives 0 at |
| Jouguet, Kunz-Jacques & Leverrier 2011, PRA 84, 062317 (arXiv:1110.0100) | multi-edge LDPC reconciliation | Table I efficiencies 95.9%, 97.2%, 98.1% as |
| Martinez-Mateo, Pacher, Peev, Ciurana & Martin 2015, QIC 15, 453 (arXiv:1407.3257) | Cascade | Eq. (4) turns Table 3's |
| Yin, Wang, Chen, Han, Wang, Guo & Han 2018, Nat. Commun. 9, 457 (arXiv:1702.01260) | round-robin DPS | Table 1's tolerable bit error rate at every tabulated train length under the original bound and their collective one, including rrdps_gllp rrdps_tag rrdps_phase |
| Row | Caveat |
|---|---|
| BB84-WCP | composes GLLP from an infinite-decoy closed form in the exam, not from decoy_bounds: it anchors the rate composition and the GYS channel, and the 140–145 km crossing is insensitive to the finite-decoy estimator. That estimator: Decoy · Anchors, Decoy · Sandwich, reduced to its infinite-decoy limit by Cross-engine · Decoy |
| Denys | checked against the paper's source and its authors' ancillary implementation, removing the plot-reading error. The Gaussian-limit lock is internal consistency, not a literature anchor: two independent layers agreeing where they describe the same physics, both in SNU with |
| Decoy | Ma, Qi, Zhao and Lo's Eq. (7) yields carry a double-count correction — a pulse that arrives and draws a background click is one detection — which their Eq. (10) drops. A stated approximation, not an error: Eq. (10) is printed with test_gain_double_count pins the gap |
| COW | the analytic phase-error bound is pinned at 0.20, read off the 0.17–0.24 band of Gao et al.'s figure over 0–100 km at 2% misalignment; their bound is a function of monitoring-line decoy gains discrete.rs does not model. test_cow_phase_pinned carries the word UNVERIFIED. The pin stands for plain COW; the vacuum-decoy variant COW′ derives its phase error from the record (SDP · Bound) |
| SARG04 | the two privacy-amplification domains no published equation states (Protocol coverage). Read literally, the two-photon term credits 0.0347 bit per two-photon detection at |
Tier B — experimental anchors, statistical
Pin what the paper publishes; fit what it does not, within plausible ranges; land inside the paper's stated uncertainty. Where a paper is incomplete, the target is the measured envelope,
- The fitted values must be plausible, and are reported beside the match: a fit needing an absurd parameter has falsified the noise model.
- Fit curves, not points: a scalar anchor is underdetermined.
Continuous variable
| Anchor | Pinned, from the paper | Free, and its range | Result | Report |
|---|---|---|---|---|
| Default 25 km metro link (no single source; target the measured envelope) | assumed, not fitted — | Budget · Tier B | ||
| Hajomer et al. 2024, 100 km LLO (arXiv:2305.08156) | 3 fitted — | Bob-plane | Budget · Tier B | |
| Zhang et al. 2020, six points to 202.81 km (PRL 125, 010502; arXiv:2001.02555) | Table I in full — | 0 fitted. Attenuation published beside each length, inverting to 0.15988–0.16816 dB/km against their stated 0.16 | the asymptotic rate at each point's parameters upper-bounds their finite-size rate at all six, | Experiments · Zhang |
| Hajomer, Andersen & Gehring 2025, CV-MDI over 10 km (Quantum Sci. Technol. 10, 025032; arXiv:2303.01611) | Table 1 in full — | 0 fitted. The referral of relay-plane | equivalent noise 5.6815 and a per-attack rate of 0.18042 bit/symbol, above the 0.130 bit/symbol their finite-size 2.6 Mbit/s at 20 MBaud gives; the even split gives 0.24845 and the conclusion holds across the bracket. Their phase-noise expression is budget.phase(form="literature") term for term: 12.307 mSNU at their 0.06 rad against the 12.6 printed; 12.6 inverts to 0.06071 rad | Experiments · CV-MDI |
| Hajomer et al. 2024, discrete modulation at 10 GBaud (Optica 11, 1197; arXiv:2305.19642) | Table 1's four rows in full — | 0 fitted | Gaussian modulation at the same variance, the | Experiments · 10 GBaud |
| Lvovsky et al. 2001, the measured single-photon Wigner dip (PRL 87, 050402; quant-ph/0101051) | 0 fitted | three published measurements of the one parameter agree to 0.78%, inside | Experiments · Fock |
Threshold detectors and qubits
| Anchor | Pinned, from the paper | Free, and its range | Result | Report |
|---|---|---|---|---|
| Gobby, Yuan & Shields 2004, BB84-WCP over 122 km (Appl. Phys. Lett. 84, 3762; quant-ph/0412171) | 2 fitted — | visibility 87.89% against a measured 88.4%; QBER band 8.60–8.94% brackets the measured 8.9%; 101/122 km sifted-rate ratio 2.5473 against 2.5435; dark and stray light 0.374% at their | Experiments · GYS | |
| Diamanti, Takesue, Langrock, Fejer & Yamamoto 2006, DPS over 100 km (Opt. Express 14, 13073; quant-ph/0608110) | 4 fitted — | jitter-free QBER 2.691% against the 2.7% left after their 0.7% jitter share — 2.7% is nowhere in the paper, which prints only 3.4% and its three parts — split 1.726% dark and 0.965% interferometric; secure rate 168.2 bit/s against 166; their Eq. (5) dead-time factor 0.8969 against 0.8934, from a stateful scan that never sees the formula; 10 km QBER 2.16% against 2.2% | Experiments · Diamanti | |
| The same experiment, detector response modelled | the row above, plus three timing statements: 54% efficiency cost at a 100 ps window, 40% at 200 ps, the measured 3.4% QBER at 100 km | 3 fitted, exactly determined — core FWHM | the test is the split of the remaining 2.692%: 0.966% interferometric against 1%, 1.726% dark against 1.7%. The 0.709% is the fit target read back, not a prediction, nor is the 3.4% total. Secure rate unmoved at 168.19 bit/s | Experiments · Diamanti jitter |
| Stucki et al. 2009, COW to 250 km (New J. Phys. 11, 075003; arXiv:0903.3907) | 1 fitted — a baseline slot error, fitted at 100 km alone, bounded below 1%, landing at 0.847% | 1.904% at 250 km against a measured 1.9%, nothing moved in the model; the cryostat ran "particularly low" for that run, lowering the true QBER, so the agreement is fortuitous in the safe direction (misses). Key rates bounded, not reproduced: 6.3% and 6.6% of the per-click ceiling | Experiments · Stucki | |
| Korzh, Lim, Houlmann, Gisin, Li, Nolan, Sanguinetti, Thew & Zbinden 2015, COW over 307 km (Nat. Photonics 9, 163; arXiv:1407.7427) | supplementary Table I column by column — five distances, block sizes, session times, secret fractions, rates — their 0.160 dB/km fibre, dark-count column and visibility | 2 fitted, solved at 203 and 307 km and held — receiver factor 0.186628, baseline slot error 1.1537%. The factor is detector efficiency times the splitter's data-line share; their ">20% efficiency" caps the share at 0.9331, a loose cap (scoped below 150 K; all five rows run at 153–223 K). Refitting at 153 and 307 km moves the factor 2.8% and the baseline 5.8% | the two unfitted distances: 1.555% against 1.5% at 153 km, 1.700% against 2.0% at 256 km, across 26.5 dB. The climb from 1.5% to 3.5% is their published dark rate alone: halving it puts 307 km at 2.36%, doubling at 5.63%, both excluded. Their finite-key secret fraction is bounded, not reproduced — cow_rate is the plain Devetak–Winter difference where their Branciard–Gisin–Scarani expression carries an extra | Experiments · Korzh |
| Takesue, Nam, Zhang, Hadfield, Honjo, Tamaki & Yamamoto 2007, DPS at 10 GHz over 42.1 dB (Nat. Photonics 1, 343; arXiv:0706.0397) | 10 GHz clock, SSPD efficiency and its 36% window cost, 50 Hz dark rate, 42.1 dB maximum loss, 105 km and 200 km points, their "approximately 4.1%" error threshold | 1 fitted — dps_rate crosses zero at 4.5619% at the Shannon limit, 4.1487% at | the one experimental row where qkd and the paper evaluate the same expression — their Eq. (4) is the WTY Eq. (34). Zero crossing at 42.109 dB against 42.1 dB. 105 km: 17.42 kbit/s against a measured 17, 2.5% high; dropping the 36% window cost gives 27.3 kbit/s, a 61% excess, so the cost belongs on the efficiency | Experiments · Takesue |
| Lucamarini, Patel, Dynes, Fröhlich, Sharpe, Dixon, Yuan, Penty & Shields 2013, decoy-state BB84 with a biased basis (Opt. Express 21, 24550; arXiv:1310.0240) | three intensities and six sifted counts, | 0 fitted on the background anchor. 1 fitted on the 50 km rate — | the decoy family's first reproduced observables. Dark probability over two gates plus afterpulsing on the measured decoy_bounds on their intensities returns a single-photon yield 1.09% under the infinite-decoy ceiling and phase errors above the true ones in both bases, 2.705% against 2.588% (Z), 2.028% against 1.948% (X). | Experiments · T12 |
| Enzer, Hadley, Hughes, Peterson & Kwiat 2002, six-state under a simulated eavesdropper (New J. Phys. 4, 45) | measured | 0 fitted on the anchor. 1 fitted on the partial-attack leg — the Brewster-slab measurement strength, never stated | 33.333% against | Experiments · six-state |
| Jeong, Kim & Kim 2014, SARG04 against BB84 on one rig over 1.27 km (Laser Phys. Lett. 11, 095201) | 1 fitted — channel visibility, over-determined four ways at a spread of 1.97% (inversions) | misalignment raises the SARG04 conclusive rate to | Experiments · SARG04 | |
| Hughes, Morgan & Peterson 1999, plain B92 over 48 km of installed fibre (quant-ph/9904038; J. Mod. Opt. 47, 533) | 22.9 dB attenuation, | 1 fitted — background | zero-parameter leg: visibility fixes the interferometric error at | Experiments · B92 |
| Gordon, Fernandez, Townsend & Buller 2004, B92 QBER curve to 11.85 km at 100 MHz (IEEE J. Quantum Electron. 40, 900; quant-ph/0605222) | 180 background counts/s, 2.2 dB/km at 850 nm, nine fibre lengths, 5 ns and 9 ns QBER columns | 1 fitted — polarisation leakage 0.256% per beam splitter, a 25.9 dB extinction ratio, fitted at zero length alone. The published background already carries 36.1% of the 0.4% measured there | the 5 ns QBER at every length to 9.96 km, across 0.4% to 15.6%, worst miss 0.73 points. The 9 ns window shares only the dark rate and fibre loss: its zero-length fit gives 0.99474 against 0.99488 and tracks to 0.54 points. The whole climb is the published 180 counts/s (why): halving it gives 9.41% at 9.96 km, doubling 23.85%, against a measured 15.6% the published value reads as 15.72%. The 1 GHz rows are excluded, and the exam says why | Experiments · B92 curve |
| Naik, Peterson, White, Berglund & Kwiat 2000, E91 with a measured CHSH value beside its QBER (PRL 84, 4733; quant-ph/9912105) | 0 fitted | the Bell-diagonal bridge | Experiments · E91 | |
| Ling, Peloso, Marcikic, Scarani, Lamas-Linares & Kurtsiefer 2008, an E91 rate priced by a measured violation (PRA 78, 020301(R); arXiv:0805.3629) | 0 fitted | the violation as a depolarised singlet fixes the bit error at 5.806%, and the rate equation predicts 308.41 bit/s at the Shannon limit against a measured 292.40–300 bit/s: 2.8% headroom for their real reconciliation. Inverting 300 bit/s gives 5.899%, 0.093 points from the violation's 5.806%. BBM92 on the same data pays 813.33 bit/s against the CHSH price's 308.41, a factor of 2.637 | Experiments · CHSH | |
| Honjo, Nam, Takesue, Zhang, Kamada, Nishida, Tadanaga, Asobe, Baek, Hadfield, Miki, Fujiwara, Sasaki, Wang, Inoue & Yamamoto 2008, BBM92 over 100 km (Opt. Express 16, 19118) | itemised receiver chain, two brightnesses, measured back-to-back and 100 km QBERs, separately measured two-photon visibilities, sifted rates | 1 fitted — misalignment, from the 2.35% back-to-back QBER alone, at 0.4244% | predicts 6.702% at 100 km against a measured 6.91%, 0.21 points low across 21 dB and a | Experiments · pairs |
| Rubenok, Slater, Chan, Lucio-Martinez & Tittel 2013, MDI-QKD over deployed fibre (PRL 111, 130501; arXiv:1304.2463) | Table I and the supplementary gain table — four setups across 9.1 dB, two bases, signal and decoy intensities, sixteen measured gains, X-basis error rates. The supplement prints six intensity pairs per setup, not a | 1 fitted — misalignment, from setup 2's rectilinear QBER alone, 0.028870. 1 pinned input — detector efficiency 0.145, from Chan et al., Opt. Express 22, 12716 (2014) (arXiv:1204.0738) | all sixteen gains within | Experiments · MDI |
| Detector attacks on deployed hardware — Lydersen et al., Nat. Photonics 4, 686 (2010) (arXiv:1008.4593); Zhao, Fung, Qi, Chen & Lo, PRA 78, 042333 (2008); Weier et al., New J. Phys. 13, 073024 (2011) (arXiv:1101.5289) | Lydersen's | 0 fitted | Lydersen's ratio 1.4405, below the 2 their Eq. (1) requires; CW blinding powers 397 and 765 µW. Zhao's equalising mixture: 23.031% and 3479.07 detections against 23.0% and 3479; over same-basis tables 5.681% against their overall 5.68%; the per-shift QBERs 6.135% and 5.365% come back out of the same table. Weier's seven | Attacks · Threshold |
The network layer
| Anchor | Pinned, from the paper | Free | Result | Report |
|---|---|---|---|---|
| Sharma, Vilashini, Krishnan, Gayathri, A. K. Singh, V. P. Singh, Ramanathan, Mandayam & Prabhakar 2026, the MAQAN testbed at Chennai (Quantum Inf. Process. 25, 19; doi:10.1007/s11128-025-05031-x) | five nodes, three spans, Table 1 losses and key rates, Fig. 4 raw-key time series, COW and DPS only | 1 fitted — effective detected-pulse rate 3.61 MHz, from Fig. 4's last daily average of 20.75 kbps over the 7.5 dB span: 0.36% of the 1 GHz clock, 11.6% of the group's 31.25 MHz COW gate rate, inside both ceilings. Plus five INVENTED, labelled so in the exam: ETA_SPAD, DARK_SPAD, VIS_DLI, MISALIGN, CLOCK, none published. Sensitivity to the first: below | every hop clears the two thresholds their controller reroutes on. The fitted rate carried to their best span overshoots by | Network · MAQAN · Network · Tier B |
One free parameter, inverted several independent ways
The strongest claim a one-parameter row can make: separately published quantities each pin it.
| Anchor | The one free parameter | Independent inversions | Spread |
|---|---|---|---|
| Gobby, Yuan & Shields 2004 | fibre attenuation | 0.20826 (122 km visibility), 0.20941 (101/122 km sifted-rate ratio), 0.20974–0.21211 (122 km QBER) | 1.9%, inside |
| Diamanti et al. 2006 | the same | 0.20763 (jitter-free QBER), 0.20673 (dark-count share), 0.20799 (166 bit/s secure rate) | 0.61%, inside |
| Jeong, Kim & Kim 2014 | channel visibility | 0.954 (their channel measurement), 0.95850 (sifted-rate ladder, a count rate, no error model), 0.94000 (BB84 QBER), 0.94737 (SARG04 QBER) | 1.97% |
| Lvovsky et al. 2001 | single-photon fraction | 0.55 (marginal-distribution fit), 0.553 (pattern-function sampling), 0.548695 (their Abel-reconstructed | 0.78%, inside their |
| Rubenok et al. 2013 | detector efficiency, imported from a companion paper | sixteen inversions, one per measured gain: 0.14140 to 0.15578 | 10.2%, straddling the companion's 0.145 |
| Naik et al. 2000 | none — over-determined with no free parameter | bracketing the measurement, 1.55 |
| Leg carrying the argument | Why the free parameter cannot absorb it |
|---|---|
| GYS's sifted-rate ratio | a count rate, sharing no parameter with the error model, and sharp: |
| Stucki's dark-count takeover | the fitted baseline is flat in distance and cannot rise from 0.85% to 1.9%; the published 5 Hz dark rate does. It is fitted at 100 km, where dark counts are 0.0026% of the QBER. Halving the dark rate moves 250 km to 1.38%, doubling to 2.91% |
| Gordon's dark-count takeover | without the background the model is flat at 0.256% at every length to one part in |
| Honjo's visibilities | measured separately from the misalignment fit, they give the energy-basis QBER through |
| Rubenok's sixteen gains | nothing fitted in any; the fitted misalignment enters only the error rates |
| MAQAN's detector efficiency | enters fit and prediction alike: sweeping it 0.1 to 0.3, wider than any InGaAs SPAD band, moves the overshoot from |
The decoy row's Tier B cell is provenance, not reproduction.test_gys_tabulation traces every constant of the Tier A "GYS parameter set" to Gobby, Yuan and Shields's own measurements.
| GYS constant | Provenance |
|---|---|
| exactly twice their per-clock error count | |
| their short-distance QBER plateau | |
| their stated receiver efficiency | |
| the slope of their measured sifted-rate ladder, not the 0.2 their curve is drawn at |
GYS sent no decoy states, so this is theory on measured hardware, not a decoy observable. The nearest check is the MDI row: Xu, Curty, Qi and Lo's joint decoy bound on Rubenok's measured gain grid, a two-sender inversion.
GYS's $\sim$50 km limit is a model choice, not a missing number
GYS state that the Brassard–Lütkenhaus–Mor–Sanders condition — Bob's measured bit rate must exceed Alice's multiphoton emission rate — "imposes a limit of $\sim$50 km for the current system". At
| Reading | Condition | ||
|---|---|---|---|
| no distance — ratio 0.962 at | no distance | ||
| 66.5 km | 63.3 km | ||
| the same, with BB84's | 51.4 km | 49.0 km |
| Question | Answer |
|---|---|
| Which row reads GYS's words? | The third: "the bit rate measured by Bob" is the sifted raw rate they plot. It brackets $\sim$50 km from both sides across the two |
| Does any row recover GYS's arithmetic? | No. Row three adds the exact |
| What survives of the objection? | GYS's sentence omits |
| Is $\sim$50 km a key-rate bound? | No — a multiphoton-rate condition. The GLLP key-rate bound on the same parameters reaches 40.5 km with test_gys_nondecoy_deficit pins it |
Diamanti's full 3.4% QBER
A purely Gaussian jitter is excluded by the data. Fitted to the 100 ps window statement alone it needs a 192.13 ps FWHM core, predicts 22.03% loss at 200 ps against a measured 40% — a 17.97-point miss on an unfitted number — and 0.000% jitter error against 0.7%, returning the total to the jitter-free 2.691%. The model carries a one-sided exponential diffusion tail instead. The fit: Tier B row; window loss and bin leak: Protocol coverage; the 10 km QBER: declared miss.
Declared misses
A prediction the fit did not reach, asserted tightly so it cannot be quietly closed.
| Row | The miss, and its size |
|---|---|
| Hajomer 2024's key rate | a documented tolerance relaxation: at |
| GYS's sifted rate at short range | lumped collection factor 0.936 at 4.4 km against 0.655 at 101 and 122 km: the model over-predicts the long-distance rate by |
| Diamanti's 10 km sifted rate | 2.55 Mbit/s against a measured 2, a 28% excess needing about 1.1 dB of unpublished loss. Adding it moves the QBER from 2.16% to 2.35% against 2.2% |
| Diamanti's 10 km QBER with jitter | unfitted, 2.795% against 2.2%. A 200 ps window accepts roughly twice the neighbour's tail while collecting |
| Stucki's 250 km detector state | the cryostat ran colder for that run, so the true prediction sits slightly below 1.904%: fortuitous agreement, in the safe direction |
| Enzer's sifting count | 55 650 sifted bits over 94 min at 33 s⁻¹ raw is 29.900% where three-basis sifting gives a third: a 10.3% deficit. Their words are "roughly one-third"; the <0.5% double-pair events they bound do not cover it |
| Jeong's absolute scale | the figure 2 ladder needs end-to-end efficiency 0.17770 where |
| Jeong's two QBERs | 2.502% and 4.753% against a measured ~3% and ~5%, low by 0.50 and 0.25 points. The shortfall is the paper's own — its printed closed forms carry it — and their dark-count subtraction rules background out |
| Hughes's second intensity | background fitted at |
| Gordon's last two lengths | 22.24% and 27.14% against 24.3% and 31.8%, short by 2.06 and 4.67 points. Their raw counts fall 10.7% between 9.96 and 11.07 km (1109 to 990 per second, then 611 at 11.85) where 2.2 dB/km over 1.11 km asks 43.0%: the ladder flattens exactly where the QBER runs away. Strictly decreasing throughout, so a slope anomaly, not a non-monotonicity. The 9 ns column misses the same two points by 6.82 and 5.83 |
| Korzh's sifted count rate | the fitted receiver supplies 0.672 and 0.689 of test_korzh_ceiling pins it |
| Korzh's 104 km QBER | 1.526% against 2.40%, 0.87 points short. Closing it needs extra background of 1.84% of the detected count rate — an afterpulse probability the paper names ("for a given dead-time, the after-pulse probability increases exponentially with reducing temperatures") but never tabulates. 0.63% at 256 km and |
| Lucamarini's T12 enhancement | measured T12-over-BB84 at 50 km is 73.0% from the published pair, quoted 73.5%; the model gives 66.5%, 6.5 points short, charging error correction on the basis the counts land in. T12 puts 99.6% of its key in the noisier Z basis while BB84 splits evenly with the cleaner X, eroding the 76.6% sifting advantage further in the model |
| Naik's published key length | their 24.551% leakage then the CHSH price leaves 10 009 secret bits against 15 444 published, 64.8%. Their leakage is 1.244 times the Shannon limit at 3.06% |
| Honjo's count rate | sifted rate falls |
| Rubenok's rectilinear QBER drift | 0.0323 exactly at setup 2, where fitted, but 0.04429 against 0.053 at 18.2 dB, the deficit larger on the weaker decoy at every setup: the shape of a channel background absent from the signal, a term Ma & Razavi's model lacks |
| Zhang's phase-noise budget hole | their src/tlo.rs narrows the hole without closing it (below) |
| The certified COW′ reach | 93 and 103 km against the source's 103 and 121 km, in the honest channel, not in either bound. ⚠️ The proposed repair is refuted; do not re-attempt it as written: it read sdp_gains as putting half a pulse's flux in the interference slot and claimed the whole pulse — 3 dB, about 15 km — closes the gap. Cao, Sun, Li, Lu, Yin & Chen's constructive $ |
| MAQAN's secure key rate | 40.7 kbps against the 1 kbps Table 1 publishes as the network's highest: a |
| Declared reading or engine limit | |
|---|---|
| Hajomer 2025's relay efficiency | Table 1 lists |
| Hajomer 2024's 10 GBaud rows, untrusted | dm_rate folds |
| Ling's anisotropy | they attribute the low |
| Naik's privacy amplification | the collective-attack CHSH price on their violation is 0.34178 bit per raw bit against the 0.11768 their privacy amplification charged, 2.90 times as much. Acín et al. is seven years later; the engine's key is the smaller, the safe direction |
What the transmitted-oscillator module adds to two existing rows
Lodewyck et al. 2007 and Zhang et al. 2020 were measured on transmitted-oscillator hardware and are anchored through the locally generated engine, legitimately: both pin cv_rate directly. test_anchor_invariant asserts neither moves. src/tlo.rs sizes the gap those rows do not carry.
| Reading | |
|---|---|
| Lodewyck's delay | a 108 Hz laser across their 400 ns multiplexing delay accounts for their entire measured excess noise of 0.005 SNU; anything narrower leaves the phase term a minority contributor |
| Zhang's delay | their residual phase noise at their 100 Hz linewidth is a 121 ns signal-to-oscillator delay, inside the 200 ns symbol period of their 5 MHz clock: self-consistent |
| Zhang's share | the phase row covers 7.2% of measured excess noise at 202.81 km: the declared miss |
| What the rest is worth | 2.6 parts per million of shot-noise unit: at 32.45 dB a unit error is referred in through |
| What closing it costs | a part in |
None of it is a Tier B green cell or re-grades either row.
Recorded but not pinned
Comparisons in the repository's record that are not exams.
| Comparison | Standing |
|---|---|
dm_secure against Lin & Lütkenhaus's ideal-detector curve at | 0.4214 against a published 0.4541 at 0 km, |
| Wen, Tamaki & Yamamoto 2009's 6.09% DPS zero crossing | named in E1, computed in a scratch script only |
| Lim's Fig. 1 | a digitisation: reach 134.6 km at |
Lim's Fig. 1, digitised — the unclaimed Tier B target
At the paper's
| 0 km | 20 km | 50 km | 100 km | 140 km | max reach | |
|---|---|---|---|---|---|---|
| 4.47e-04 | 1.71e-04 | 4.13e-05 | 3.15e-06 | 134.6 km | ||
| 1.58e-03 | 6.11e-04 | 1.50e-04 | 1.29e-05 | 9.13e-07 | 156.1 km | |
| 3.32e-03 | 1.29e-03 | 3.17e-04 | 2.87e-05 | 2.79e-06 | 167.5 km | |
| 5.19e-03 | 2.02e-03 | 4.99e-04 | 4.64e-05 | 5.30e-06 | 173.2 km | |
| 7.21e-03 | 2.81e-03 | 6.94e-04 | 6.55e-05 | 7.88e-06 | 177.1 km | |
| 8.85e-03 | 3.45e-03 | 8.54e-04 | 8.17e-05 | 1.03e-05 | 179.6 km |
The
| Between this and an exam | |
|---|---|
| Detection model | Lim's decoy_gain or the Papapanos form under q.DeadTime(afterpulse=…), which is why E6's detection-model typo never reached qkd |
| Optimisation | the curve optimises five parameters |
Lim's is the fixed point q.KeyBlock takes it as an input |
Errors in published work, and the warnings beside them
| Class | |
|---|---|
| E | an error in published work |
| W | a claim of qkd's that did not survive checking (W1, W2), or a trap that will otherwise be read as an error (W3–W11). No W entry names a defect in anyone's paper; W10 and W11 are traps this repository walked into |
Recovered data is not a published constant. Numbers digitised from a figure or decoded from its embedded vector arrays may be checked against, never cited as an anchor.
| # | Source | Verdict | Stake in qkd |
|---|---|---|---|
| E1 | Waks, Takesue & Yamamoto, PRA 73, 012344 (2006), Eq. (37) | an inverted sign on the privacy-amplification term forces | load-bearing. qkd evaluates the corrected form, which crosses zero at |
| E2 | Denys, Brown & Leverrier, Quantum 5, 540 (2021), §10 | a factor 2 in the | none; §10 is an aside, and the SDP bound and §11 rates use the correct SNR |
| E3 | Numerical Recipes 3rd ed., gauher | wrong nodes from scipy.special.roots_hermite | none. The rule ships at 64 nodes with a Sturm-bracketed fallback |
| E4 | Tamaki & Lo, PRA 73, 010302(R) (2006), the SARG04 two-photon parenthetical | quoted at the wrong minimiser; blind verification against the LaTeX source, single-sourced | none; not a cross-check |
| E5 | Fung, Tamaki & Lo, PRA 73, 012337 (2006), Eq. (39) | a binary-entropy subscript on a conditional entropy, self-inconsistent within the paper | load-bearing. src/sarg.rs implements Eq. (39) |
| E6 | Lim, Curty, Walenta, Xu & Zbinden, PRA 89, 022307 (2014) | two printing errors, found by implementing the paper | one load-bearing; qkd implements the corrected |
| E7 | Qin, Kumar & Alléaume, PRA 94, 012325 (2016), Eq. (17) | qkd.attacks's saturation family ships the corrected form, agreeing with sat_estimate to | |
| E7b | the same paper, Eq. (19) | a factor 2 lost under a root; the authors' commented-out LaTeX carries it | same |
| E7c | the same paper, the sentence before Eq. (19) | a spurious 1/2 on a covariance, in the thesis too. Inert | none |
| E8 | Matsumoto, arXiv:1301.5083, introduction | a 3.5% B92 depolarising threshold attributed to a paper that does not carry it; blind verification, a mis-attribution | none; not a cross-check |
| E9 | Tamaki & Lütkenhaus, arXiv:quant-ph/0308048 — the e-print's depolarising channel | drops its | src/b92.rs's b92_channel implements the corrected reading |
| E10 | Jouguet, Kunz-Jacques & Diamanti, PRA 87, 062313 (2013), Eq. (3) | a sign error, self-inconsistent within the paper | none |
| E11 | Takesue, Nam, Zhang, Hadfield, Honjo, Tamaki & Yamamoto, Nat. Photon. 1, 343 (2007), Eq. (4) | confirmed in arXiv:0706.0397v1, the only version, and inconsistent with the paper's stated threshold. ⚠️ the published text was not accessible | none. Sibling of E1, corroborating its |
| E12 | Korzh et al., Nat. Photon. 9, 163 (2015), supplementary Table I | none; columns read individually | |
| E13 | Curty, Xu, Cui, Lim, Tamaki & Lo, Nat. Commun. 5, 3732 (2014), the | confirmed in v1, v2 and the published Supplementary, and inconsistent with the paper's | load-bearing. src/mdi.rs runs the sign-correct maximisation |
| E13b | the same paper, the key-length equation | load-bearing. mdi_phase returns the ratio | |
| E13c | the same paper, Claim 3 items 3–6 | a mismatch: log where the inversion above gives ln, bare log undefined in the paper. The "safer" half of the earlier reading is withdrawn: ln is not the wider form under base 2, the paper's convention wherever stated | src/mdi.rs runs ln because it is the derived form |
| E14 | Xie et al., PRX Quantum 3, 020315 (2022), Table 1 | confirmed in v1–v3: | none; no anchor taken from that table |
| W1 | Ma, Qi, Zhao & Lo — "internal inconsistency at | withdrawn. The paper prints | none |
| W2 | Gobby, Yuan & Shields — "~50 km unrecoverable" | withdrawn. It reproduces at 49.0 km under a trusted-detector reading with their sifting, and is a multiphoton-rate condition, not a key-rate bound (above) | none |
| W3 | Honjo et al., Opt. Express 16, 19118 (2008) — its "arXiv id" | no arXiv version exists. The ids commonly attached to it and to Dynes et al. 2009 are unrelated astro-ph and instrumentation papers; the field is correctly empty | none; a trap for whoever "fixes" a missing id |
| W4 | Pirandola et al., Nat. Photon. 9, 397 (2015) — as a channel experiment | it is not one. No optical channel is applied; loss is dialled into Bob's modulation depth, and its authors call it proof-of-principle | its Tier A row compares against a calculation; the CV-MDI Tier B row is Hajomer et al. 2025 |
| W5 | Takesue, Sasaki, Tamaki & Koashi, Nat. Photon. 9, 827 (2015) — its arXiv id | arXiv:1505.07884 does not exist. The paper is arXiv:1505.07914 | none; a one-digit trap that propagates by copying |
| W6 | "Wang, Yin, Chen et al., PRL 114, 180502" | three papers conflated. That PRL is Guan et al.; the Wang/Yin/Chen paper is Nat. Photon. 9, 832 (2015), not a PRL | none, but it is the |
| W7 | Sasaki, Yamamoto & Koashi, Nature 509, 475 (2014) — its "arXiv id" | no arXiv version exists. W3's shape; W5 is what inventing one looks like | none; the bound is reachable through two papers restating it |
| W8 | "arXiv:2201.04956" as the mode-pairing paper | an astrobiology paper, a near-miss id resolving cleanly to unrelated work. Mode pairing is arXiv:2201.04300 | none. Why the check is "does it resolve to the paper I mean, by title and authors" |
| W9 | the mode-pairing author list | routinely wrong. "Zeng, Zhou, Yin & Zhang" conflates two groups' concurrent papers | none |
| W10 | "Wang, Tamaki & Curty, npj QI 5, 64 (2019)" for arXiv:1902.02126 | the authors are Pereira, Curty & Tamaki, article 62. A different Wang, Tamaki & Curty paper exists; the id was right throughout | reached shipped src/, test/ and docs/; corrected |
| W11 | "arXiv:1201.6555" for the Sperling–Vogel–Agarwal click-counting POVM | a polarization-optics matrix-classification paper, W8's failure mode again the same day | none: the correct id could not be recovered, so no citation was written |
Pinning doubles as calibration
"Validate against a published experiment" and "calibrate qkd to your lab" are one operation: pin what you measured, fit the rest against multi-point data, check the fitted values are physical, then predict. explain() labels each quantity pinned, derived or default; the labels are the only difference between a calibration run and a validation run.
Invariants, not just anchors
Exams checking machinery rather than a paper are the rest of the report index; each report opens with its own description.
Verification of the verification
test/blind.py is evidence about two rows, not an anchor. src/flaws.rs and src/ekert.rs shipped with exams written by the pass that wrote the engines; the exams in blind.py were derived from the papers by a pass that never opened either source file and called _core as a black box.
| Found | Effect on the board |
|---|---|
| A contradiction, the committed anchors the wrong half | two crossover figures were pinned without the configuration producing them: both papers write their channel at |
| Confirmations at level 1 | the zero-flaw death at 57.855244 dB, agreeing to flaw_triangle's maximum at bb84_rate at zero flaw to |
| A misattribution in shipped code | "yield exceeds 1 by exactly |
The test that does not run
gpu_fallback::test_absent_gpu_is_not_an_error, ⏭️: it asserts that with no adapter the GPU entry points raise an actionable reason. Where an adapter answers there is nothing to assert, and faking the absence would test the fake.
Where the defaults come from
Every numeric default in the component reference is a literature value. The CV hardware defaults are sourced below; the rest:
| Default | Value | Basis |
|---|---|---|
Heterodyne(eta=0.6, v_el=0.1) | — | a composite, not one system: Jouguet's |
IndividualAttack(f=1.16) | 1.16 | standard DPS error-correction inefficiency |
SplittingAttack(f=1.22) | 1.22 | the value Ma, Qi, Zhao and Lo optimise |
ClickDetector(eta=0.2, dark=1e-6) | — | gated InGaAs single-photon detectors at telecom wavelength. dark is per gate per detector; Link derives |
Decoy(intensities=(0.5, 0.1, 0.0)) | — | near Ma–Qi–Zhao–Lo's |
Connector(loss=0.25) | 0.25 dB per mated pair | the mean an IEC 61753-1 grade C connector is allowed (grade B 0.12, grade D 0.50), and Thorlabs' typical mated FC/APC pair. QOSST charges inside that band: 0.23 dB per PM mating sleeve, 0.47 dB per spool connector |
Splice(loss=0.02) | 0.02 dB per splice | measured mean for SMF-28 Ultra spliced to itself at 1550 nm on a core-aligning splicer (Corning/AFL AN0041). A cladding-aligning v-groove splicer gives 0.03–0.04 dB; Telcordia GR-20-CORE asks for a group mean at or under 0.10 |
Coupling(loss=…) | none | deliberately absent |
PhaseShiftKeying(states=4, alpha=0.4) | — | QPSK at modulation variance |
The evidence base
Fielded systems and one modelling paper. Each parameter is in the units and at the plane its paper states. Those disagree — Laudenbach et al. define
| System | Architecture | Parameters and results |
|---|---|---|
| QOSST — Piétri et al., QOSST: A Highly-Modular Open Source Platform for Experimental CV-QKD, Quantum 8, 1575 (2024), arXiv:2404.18637 | Locally generated LO, RF-heterodyne, 100 MBaud with RRC roll-off 0.5, single-sideband shift | At |
| Grosshans et al. 2003 — Nature 421, 238 (2003), arXiv:quant-ph/0312016 | The original Gaussian-modulation demonstration: table-top, 780 nm, 800 kHz pulses, transmitted LO, homodyne | |
| Jouguet et al. 2013, 80 km — Nature Photonics 7, 378 (2013), arXiv:1210.6216 | 1550 nm pulsed diode at 1 MHz, transmitted LO, homodyne. | |
| Zhang et al. 2020, 202.81 km — PRL 125, 010502 (2020), arXiv:2001.02555 | NKT BasiK E15 laser at 100 Hz linewidth, 5 MHz pulsed, transmitted LO, homodyne, ultra-low-loss fibre at 0.16 dB/km. 10-bit DAC; the supplement names a 12-bit 1 GHz ADC (ADS5400) | Table I: |
| Hajomer et al. 2024, 100 km LLO — Sci. Adv. 10, eadi9474 (2024), arXiv:2305.08156. The closest published system to qkd's default configuration: the Tier B heterodyne anchor | CW source, locally generated LO, heterodyne, frequency-multiplexed pilot, finite-size. Linewidth | |
| Hajomer et al. 2024, 10 GBaud — Optica 11, 1197 (2024), arXiv:2305.19642 | Probabilistically shaped 16/32/64-QAM, 100 Hz CW, 8-bit AWG at 32 GSa/s with digital pre-emphasis, pilot at 8 GHz (10 GBaud) or 7 GHz (8 GBaud), integrated silicon-photonic phase-diverse receiver at | Table 1: |
| Qi et al. 2015 — PRX 5, 041009 (2015), arXiv:1503.00662 | First locally-generated-LO demonstration: pilot-aided feedforward phase recovery, two free-running commercial lasers, 25 km | residual phase-noise variance 0.04 rad |
| Chin et al. 2021 — npj Quantum Inf. 7, 20 (2021), arXiv:2002.09321 | Unscented-Kalman-filter phase tracking over 20 km at 50 MBaud, quantum band at 60 MHz, pilot at 130 MHz, LO offset | thermal state Laser(linewidth=10e3) |
| Laudenbach et al. 2018 (modelling reference) — CV-QKD with Gaussian Modulation: The Theory of Practical Implementations, Adv. Quantum Technol. 1, 1800011 (2018), arXiv:1703.09278 | The canonical statement that | Worked example (Fig. 10.2: |
Every hardware default, with its source
"Range seen" is what the systems above report, in their units and planes.
| Parameter (component) | Symbol | Range seen in experiments | qkd default | Citation for the default |
|---|---|---|---|---|
Laser linewidth (q.Laser, q.LocalLO) | 100 Hz (fibre lasers: Zhang, both Hajomer papers) to 10 kHz (ECL, workable with UKF: Chin) | 10 kHz — commodity ECL; 100 Hz is the hero-experiment choice, offered as a preset | Chin 2021, 10 kHz viable with a UKF, arXiv:2002.09321; Laudenbach's worked example, 10 kHz, arXiv:1703.09278; 100 Hz: arXiv:2001.02555, arXiv:2305.08156 | |
Modulation variance (q.GaussianModulation) | 1–10 (Jouguet, tuned in real time); 8.41 (Hajomer 100 km, optimised); 7.65–14.5 (Zhang); 0.87–1.03 (10 GBaud); 41.7 (Grosshans 2003) | 5.0 SNU — mid metro-link optimum; must stay exposed to an optimiser | Jouguet's 1–10 range, arXiv:1210.6216; Hajomer's optimisation curve, Fig. 3, arXiv:2305.08156 | |
Symbol rate (q.Alice) | 0.8–5 MHz (pulsed transmitted-LO era) → 50–100 MBaud (LLO: Chin, Hajomer, QOSST) → 8–10 GBaud (integrated) | 100 MBaud | QOSST, arXiv:2404.18637; Hajomer, arXiv:2305.08156 | |
Pilot arrangement (q.Pilots) | — | 1–2 CW tones frequency-multiplexed into the same sideband; QOSST 2 tones at 180/200 MHz, | 1 tone at 180 MHz, | QOSST's |
Detector efficiency (q.Homodyne, q.Heterodyne) | 0.552 (Jouguet) / 0.6134 (Zhang) / 0.68 (Hajomer 100 km, trusted part) / 0.81–0.84 (Grosshans 2003) / 0.44 (integrated 10 GBaud) | 0.6 | Jouguet's | |
Electronic noise (q.Homodyne, q.Heterodyne) | 0.015 (Jouguet, 1 MHz pulsed) / 0.12–0.27 (Zhang) / 0.063 (Hajomer 100 km) / 0.05–0.068 (10 GBaud) / 0.33 (Grosshans 2003) | 0.1 SNU — clearance | Hajomer's | |
DAC resolution (q.IQModulator) | bits | 8 (10 GBaud AWG) / 10 (Zhang) / 14 (QOSST) / 16 (Hajomer 100 km) | 16 | Hajomer's 16-bit 1 GSa/s DAC, arXiv:2305.08156 |
ADC resolution (q.ADC) | bits | 8 (10 GBaud) / 10 (Chin's oscilloscope) / 12 (Zhang, supplement) / 16 (Hajomer); | 12 | Zhang's 12-bit ADS5400, arXiv:2001.02555; the bit-requirement curve, Fig. 10.4a, arXiv:1703.09278 |
Fibre attenuation (q.Fiber) | 0.2 (SMF-28: Jouguet's 16.1 dB over 80.5 km; assumed in the 10 GBaud work); 0.146–0.16 (ultra-low-loss: Hajomer, Zhang) | 0.2 dB/km; ultra-low-loss as a preset | Jouguet, arXiv:1210.6216; Hajomer's 0.146, arXiv:2305.08156 | |
Reconciliation efficiency (q.Asymptotic, q.FiniteSize) | 0.78–0.80 (Grosshans 2003) → 0.95 (Jouguet, QOSST, 10 GBaud) / 0.925 at FER 0.59 (Hajomer) / 0.95–0.98 (Zhang, SNR-dependent) | 0.95 — the throughput is | Jouguet's | |
| Excess noise — an output | channel input: 0.001–0.008 (Jouguet, measured and worst-case), 0.0015–0.0086 (Zhang), 0.016–0.072 (10 GBaud); at Bob: 0.006–0.0095 (QOSST); channel output: 0.000212 over 100 km (Hajomer) | a validation target, not a default: a 25 km default run lands at | every row above and the QOSST benchmark table, arXiv:2404.18637; tabulated by plane under the measured envelope |
| Finite-size default | Cross-check |
|---|---|
| uniform across Jouguet, QOSST and Hajomer ( | |
key-producing blocks at metro distances are res.key_rate == 0 regression, named below |
Where a default is deliberately absent
Arguments where a plausible default was available and declined.
| Argument | Why no default |
|---|---|
Coupling.loss | an order of magnitude across mode-crossing interfaces (values) |
PhaseBound.e_phase, FiniteSize.fer | component reference |
dm_holevo(bits=…) | discrete modulation |
BellDetector.eta, .v_el | a relay detector defaulting to perfect is an idealisation nobody chose, and flatters the topology: relay imperfections fold into the arms as loss and noise Eve holds |
CorrelatedEnvironment.x, .p | no neutral correlation |
State.thermal_loss(ref=) | the plane is always named |
a qkd.fock cutoff for a negativity volume | the cutoff is part of the state |
What is not anchored yet
| Unbuilt anchor | State |
|---|---|
| Joint curve fits | Tier B exercises the budget engine at fixed configurations. Zhang's six points are each read at their own parameters, not fitted jointly with bounded free parameters. Jouguet's distances are untouched |
| QOSST zero-key regression at | not built |
| Lim's Fig. 1, end to end | digitised and compared, never pinned (the three missing pieces) |
| A full unpinned Gaussian run | its derived |
| A vacuum+weak decoy field experiment | Lucamarini's T12 is three-intensity biased-basis. The vacuum+weak set of Ma, Qi, Zhao and Lo's Sec. 3.3, which the Tier A anchor is written against, has no measured counterpart |
| COW and BB84-WCP Tier B rows end to end | assembled from closed forms, not run through the sampled paths: the sampled train reproducing GYS's measured QBER, a simulated COW data line reproducing Stucki's |