Nadarasa
Draft · v0.2 · Unreviewed
← Index/Project · Nadarasa ReductionDraft · v0.2 · Selene Emulator

Gate G26 · Crossover law

AQFT crossover law k*(n, p)

The approximate QFT drops every controlled-phase rotation beyond a band width K. In an ideal machine that is a pure loss: each dropped rotation costs a little accuracy. On a noisy machine each rotation also costs a two-qubit gate, and gates are the thing that is actually breaking. So there is a band width k* below which truncation stops being a compromise and starts being the better circuit. This gate measures that surface directly: 24 emulator cells across 4, 6, 8, 10 qubits and a six-step depolarizing ladder, with an exact statevector oracle at every point so truncation error and noise are never confused with one another.

crossover law verified24 cells24/24 save gates for free72 two-qubit gates saved at bestemulator only · no HQCs

Reproduce on your laptop

The entire G26 pipeline is runnable locally with the pinned dependency set in quantum/requirements.txt. The cross-platform corroboration script is quantum/gate26_cross_platform/run_all.py; it accepts a free Nexus account for the hosted emulator lanes and falls back to Selene + NumPy for fully local runs.

How k* is defined

For each (n, noise) cell we run every band width K from 1 up to the full QFT, measure P(measured = j) over fixed targets, and take k* as the smallest K whose measured success probability is within the statistical envelope of the full QFT. Everything above k* is paying two-qubit gates for accuracy the shot noise cannot see. The envelope is 4*sqrt(0.5/(shots*|targets|)), the same 4σ binomial rule used across the rest of this site.

Shots per target
512
Seed
7
Oracle
exact statevector
Noise model
depolarizing · H2-scaled

The H2 baseline the ladder multiplies: p_2q = 0.00129, p_1q = 0.000129, p_meas = 0.00135.

The crossover surface

k* per (n, noise) cell, with the two-qubit gates saved at that band width underneath. k* shrinks monotonically as noise rises — the noisier the machine, the narrower the QFT it wants.

nideal1x_H25x_H220x_H2100x_H2400x_H2
4
k* = 2/3
−2 2q gates
k* = 2/3
−2 2q gates
k* = 2/3
−2 2q gates
k* = 1/3
−6 2q gates
k* = 1/3
−6 2q gates
k* = 1/3
−6 2q gates
6
k* = 3/5
−6 2q gates
k* = 3/5
−6 2q gates
k* = 2/5
−12 2q gates
k* = 1/5
−20 2q gates
k* = 1/5
−20 2q gates
k* = 1/5
−20 2q gates
8
k* = 3/7
−20 2q gates
k* = 3/7
−20 2q gates
k* = 2/7
−30 2q gates
k* = 1/7
−42 2q gates
k* = 1/7
−42 2q gates
k* = 1/7
−42 2q gates
10
k* = 3/9
−42 2q gates
k* = 3/9
−42 2q gates
k* = 2/9
−56 2q gates
truncation strictly wins
k* = 1/9
−72 2q gates
truncation strictly wins
k* = 1/9
−72 2q gates
k* = 1/9
−72 2q gates

Where truncation strictly wins

In 2 of 24 cells the best band width is not just as good as the full QFT, it beats it outright by more than the envelope — the dropped rotations were costing more in noise than they were worth in phase resolution.

n = 10 · 5x_H2

best K = 3 at 55.9%, full QFT at 46.4%

56 two-qubit gates removed at k* = 2.

n = 10 · 20x_H2

best K = 2 at 13.0%, full QFT at 4.6%

72 two-qubit gates removed at k* = 1.

Every cell, band by band

Measured success probability against the exact oracle value for each band width. The gap between them is the noise penalty; the gap between the oracle value and 1.0 is the truncation error. Keeping the two separate is the whole point of the oracle leg.

n = 4 · ideal

k* = 2 · targets 1, 5, 15 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
11275.1%74.4%-0.0066
2k*1696.4%96.2%-0.0016
3full QFT18100.0%100.0%0.0000

n = 4 · 1x_H2

k* = 2 · targets 1, 5, 15 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
11271.0%74.4%0.0338
2k*1693.2%96.2%0.0303
3full QFT1895.5%100.0%0.0449

n = 4 · 5x_H2

k* = 2 · targets 1, 5, 15 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
11267.6%74.4%0.0683
2k*1683.6%96.2%0.1260
3full QFT1884.8%100.0%0.1523

n = 4 · 20x_H2

k* = 1 · targets 1, 5, 15 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*1248.4%74.4%0.2604
21654.3%96.2%0.4190
3full QFT1853.8%100.0%0.4622

n = 4 · 100x_H2

k* = 1 · targets 1, 5, 15 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*1214.3%74.4%0.6015
21610.8%96.2%0.8539
3full QFT1810.2%100.0%0.8984

n = 4 · 400x_H2

k* = 1 · targets 1, 5, 15 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*125.9%74.4%0.6848
2165.9%96.2%0.9033
3full QFT186.0%100.0%0.9401

n = 6 · ideal

k* = 3 · targets 1, 21, 63 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
11954.1%53.5%-0.0058
22786.6%87.6%0.0100
3k*3398.4%98.2%-0.0027
43799.8%99.8%-0.0005
5full QFT39100.0%100.0%0.0000

n = 6 · 1x_H2

k* = 3 · targets 1, 21, 63 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
11951.8%53.5%0.0177
22783.0%87.6%0.0458
3k*3392.8%98.2%0.0540
43792.2%99.8%0.0757
5full QFT3993.0%100.0%0.0697

n = 6 · 5x_H2

k* = 2 · targets 1, 21, 63 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
11947.3%53.5%0.0626
2k*2767.1%87.6%0.2053
33374.7%98.2%0.2350
43773.2%99.8%0.2652
5full QFT3972.1%100.0%0.2793

n = 6 · 20x_H2

k* = 1 · targets 1, 21, 63 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*1927.6%53.5%0.2592
22732.3%87.6%0.5530
33331.4%98.2%0.6679
43728.8%99.8%0.7092
5full QFT3927.0%100.0%0.7298

n = 6 · 100x_H2

k* = 1 · targets 1, 21, 63 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*193.1%53.5%0.5046
2272.5%87.6%0.8505
3332.2%98.2%0.9596
4372.1%99.8%0.9768
5full QFT392.2%100.0%0.9779

n = 6 · 400x_H2

k* = 1 · targets 1, 21, 63 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*191.7%53.5%0.5183
2271.5%87.6%0.8609
3331.5%98.2%0.9667
4371.5%99.8%0.9826
5full QFT391.4%100.0%0.9857

n = 8 · ideal

k* = 3 · targets 1, 85, 255 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
12641.9%42.9%0.0107
23878.9%78.7%-0.0019
3k*4895.6%95.5%-0.0004
45699.2%99.2%-0.0005
56299.9%99.9%0.0001
666100.0%100.0%-0.0002
7full QFT68100.0%100.0%0.0000

n = 8 · 1x_H2

k* = 3 · targets 1, 85, 255 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
12641.3%42.9%0.0159
23873.4%78.7%0.0528
3k*4886.5%95.5%0.0901
45687.8%99.2%0.1134
56289.0%99.9%0.1089
66689.2%100.0%0.1079
7full QFT6888.3%100.0%0.1165

n = 8 · 5x_H2

k* = 2 · targets 1, 85, 255 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
12631.9%42.9%0.1103
2k*3856.6%78.7%0.2207
34860.4%95.5%0.3518
45662.8%99.2%0.3634
56261.7%99.9%0.3817
66659.4%100.0%0.4054
7full QFT6860.6%100.0%0.3945

n = 8 · 20x_H2

k* = 1 · targets 1, 85, 255 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*2616.2%42.9%0.2679
23820.7%78.7%0.5801
34819.2%95.5%0.7633
45616.0%99.2%0.8315
56213.7%99.9%0.8621
66612.6%100.0%0.8735
7full QFT6814.8%100.0%0.8522

n = 8 · 100x_H2

k* = 1 · targets 1, 85, 255 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*261.3%42.9%0.4163
2380.5%78.7%0.7826
3480.8%95.5%0.9475
4560.5%99.2%0.9864
5620.2%99.9%0.9969
6660.5%100.0%0.9953
7full QFT680.3%100.0%0.9967

n = 8 · 400x_H2

k* = 1 · targets 1, 85, 255 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*260.4%42.9%0.4254
2380.7%78.7%0.7800
3480.7%95.5%0.9488
4560.3%99.2%0.9884
5620.7%99.9%0.9923
6660.6%100.0%0.9940
7full QFT680.3%100.0%0.9967

n = 10 · ideal

k* = 3 · targets 1, 341, 1023 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
13336.9%37.4%0.0050
24969.8%71.3%0.0147
3k*6394.1%92.7%-0.0137
47598.3%98.4%0.0012
58599.9%99.7%-0.0016
693100.0%100.0%-0.0005
799100.0%100.0%-0.0001
8103100.0%100.0%0.0000
9full QFT105100.0%100.0%0.0000

n = 10 · 1x_H2

k* = 3 · targets 1, 341, 1023 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
13335.1%37.4%0.0232
24965.4%71.3%0.0590
3k*6382.0%92.7%0.1067
47587.0%98.4%0.1145
58584.9%99.7%0.1482
69384.9%100.0%0.1505
79984.2%100.0%0.1575
810384.1%100.0%0.1588
9full QFT10583.3%100.0%0.1673

n = 10 · 5x_H2

k* = 2 · targets 1, 341, 1023 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
13326.8%37.4%0.1059
2k*4946.3%71.3%0.2497
36355.9%92.7%0.3685
47552.7%98.4%0.4576
58549.7%99.7%0.4997
69347.9%100.0%0.5203
79946.9%100.0%0.5312
810345.6%100.0%0.5436
9full QFT10546.4%100.0%0.5365

n = 10 · 20x_H2

k* = 1 · targets 1, 341, 1023 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*3311.1%37.4%0.2628
24913.0%71.3%0.5824
36311.7%92.7%0.8099
4758.9%98.4%0.8951
5856.2%99.7%0.9353
6936.5%100.0%0.9350
7995.2%100.0%0.9478
81034.9%100.0%0.9512
9full QFT1054.6%100.0%0.9538

n = 10 · 100x_H2

k* = 1 · targets 1, 341, 1023 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*330.5%37.4%0.3689
2490.2%71.3%0.7107
3630.0%92.7%0.9271
4750.3%98.4%0.9816
5850.1%99.7%0.9958
6930.0%100.0%0.9995
7990.2%100.0%0.9980
81030.0%100.0%1.0000
9full QFT1050.1%100.0%0.9987

n = 10 · 400x_H2

k* = 1 · targets 1, 341, 1023 · 512 shots each · envelope ±0.0722

K2q gatesmeasuredoraclenoise penalty
1k*330.1%37.4%0.3728
2490.1%71.3%0.7120
3630.1%92.7%0.9264
4750.1%98.4%0.9829
5850.0%99.7%0.9971
6930.1%100.0%0.9982
7990.1%100.0%0.9993
81030.0%100.0%1.0000
9full QFT1050.1%100.0%0.9987

Second compiler: does the saving survive TKET?

A two-qubit saving that a production optimiser can also find inside the full QFT is not a saving. Every band width was rebuilt as a pytket circuit — gate for gate against the Guppy kernel, including the 2-CX controlled-phase form and the 3-CX bit reversal — and compiled offline against the H2-2 device model at optimisation levels 0, 1, 2. Each compiled form is gated on a global-phase-free unitary oracle at 1e-9 before its gate count is allowed into the table below.

72/72 unitary-equivalent20/20 savings survive compilationtket_confirms_truncation_saving

At level 2 TKET roughly halves both circuits by merging the CX pairs into native ZZPhase rotations, so the absolute saving shrinks — but it never disappears: the worst-case retention is 50% of the source-level saving, and the largest surviving gap is 36 two-qubit gates. Truncation buys depth the compiler cannot recover on its own.

nKsource 2qTKET 2qsource savingTKET saving
4112363
4216521
62279126
63331263
64371421
845622126
85622563
86662721
1069339126
107994263
1081034421

Rows shown are the widest four bands per qubit count, at optimisation level 2, versus that n's full QFT. Compilation is fully offline: QuantinuumAPIOffline, no credentials, no HQCs.

Third engine: the Nexus cloud lanes

A reduced slice of the surface (n = 6, target = 1, 512 shots, seed 7) was executed on H2-1LE, H2-Emulator, Helios-1E-lite through Quantinuum Nexus and compared against the exact statevector oracle inside the 4·√(0.5/shots) = 0.125 envelope.

15/15 cells within envelope15 live jobs0 HQC billed
deviceK2qp idealp measured|Δ|verdict
H2-1LE1190.81120.81840.0072PASS
H2-1LE2270.95040.94340.007PASS
H2-1LE3330.9880.98440.0036PASS
H2-1LE4370.997610.0024PASS
H2-1LE539110PASS
H2-Emulator1190.81120.78520.026PASS
H2-Emulator2270.95040.94140.009PASS
H2-Emulator3330.9880.96680.0212PASS
H2-Emulator4370.99760.97850.0191PASS
H2-Emulator53910.99220.0078PASS
Helios-1E-lite1190.81120.79490.0163PASS
Helios-1E-lite2270.95040.91020.0402PASS
Helios-1E-lite3330.9880.9590.029PASS
Helios-1E-lite4370.99760.96680.0308PASS
Helios-1E-lite53910.9570.043PASS

Every job carries its own meter (device, job id, shots, seed, estimated and billed HQC) in the dump's nexus_leg block. These are emulator lanes, not hardware: no QPU shots were taken and nothing was billed.

Cross-platform summary

The same n = 6, target = 1, 512 shot slice was executed across multiple emulators and engines. Each row is checked against the same exact-oracle envelope 4·√(0.5/shots) = 0.125.

25/25 cells pass25 live jobs0 HQC billed5 engines
enginedeviceK2qp idealp measured|Δ|verdict
aeraer_simulator1190.81120.78320.0280PASS
aeraer_simulator2270.95040.94140.0090PASS
aeraer_simulator3330.98800.98830.0003PASS
aeraer_simulator4370.99761.00000.0024PASS
aeraer_simulator5391.00001.00000.0000PASS
h-seriesH2-1LE1190.81120.79880.0124PASS
h-seriesH2-1LE2270.95040.94340.0070PASS
h-seriesH2-1LE3330.98800.98630.0017PASS
h-seriesH2-1LE4370.99761.00000.0024PASS
h-seriesH2-1LE5391.00001.00000.0000PASS
h-seriesH2-Emulator1190.81120.79490.0163PASS
h-seriesH2-Emulator2270.95040.94730.0031PASS
h-seriesH2-Emulator3330.98800.97850.0095PASS
h-seriesH2-Emulator4370.99760.97850.0191PASS
h-seriesH2-Emulator5391.00000.98440.0156PASS
heliosHelios-1E-lite1190.81120.78520.0260PASS
heliosHelios-1E-lite2270.95040.94730.0031PASS
heliosHelios-1E-lite3330.98800.95510.0329PASS
heliosHelios-1E-lite4370.99760.97270.0249PASS
heliosHelios-1E-lite5391.00000.96880.0312PASS
qulacsQulacs1190.81120.82230.0111PASS
qulacsQulacs2270.95040.96480.0144PASS
qulacsQulacs3330.98800.99220.0042PASS
qulacsQulacs4370.99760.99800.0004PASS
qulacsQulacs5391.00001.00000.0000PASS

Engine families are the Quantinuum Nexus config classes used to submit each job (Aer, H2, Helios, Qulacs, Selene). Meters for estimated and billed HQC are recorded in the artifact for every live job.

Batch integrity: the Bell control

Five engines agreeing proves the engines are consistent, not that the batch decoded correctly. A known-fidelity |Φ+⟩ pair was submitted into every batch and accepted when the anti-correlated fraction stays inside 4·√(0.5/shots). A failed control fails its whole batch.

batch integrity PASS
deviceshotsanti-correlatedenvelopeverdict
H2-1LE5120 (0)0.125PASS
H2-Emulator5123 (0.0059)0.125PASS
Helios-1E-lite5122 (0.0039)0.125PASS
aer_simulator5120 (0)0.125PASS
Qulacs5120 (0)0.125PASS

Dequantization gate

DEQUANTIZED — a classical surrogate reproduces every engine row inside the envelope. G26 is a compiler and noise-resilience result, not a quantum-advantage claim.

Surrogate: exact statevector Born probabilities, multinomial-sampled at the same shot count and seed as the engine lanes. Scored against the same envelope 0.125.

Kp classicalp idealmax |Δ| vs enginesreproduced
10.8340.81120.0508yes
20.94340.95040.0214yes
30.98830.9880.0332yes
40.9980.99760.0253yes
5110.0312yes

Shot ladder

The same five K values re-run on H2-1LE at 128 / 512 / 2048 shots. A metric that stays flat while the envelope shrinks is shot-noise-limited, not an artefact of the 512-shot choice.

15/15 ladder cells pass
shotsKp idealp measured|Δ|envelopeverdict
12810.81120.85160.04040.25PASS
12820.95040.97660.02620.25PASS
12830.9880.98440.00360.25PASS
12840.997610.00240.25PASS
12851100.25PASS
51210.81120.82030.00910.125PASS
51220.95040.95310.00270.125PASS
51230.9880.99020.00220.125PASS
51240.997610.00240.125PASS
51251100.125PASS
204810.81120.80760.00360.0625PASS
204820.95040.95020.00020.0625PASS
204830.9880.99170.00370.0625PASS
204840.99760.99710.00050.0625PASS
204851100.0625PASS

Trust layer: L1 receipts (job ids, shots, seed, committed JSON) plus part of L2 (five independent engines and a per-batch Bell control). Not L3: nothing here is cryptographically verified.

What this does not claim

  • No hardware shots. Emulator only (Selene + Nexus emulator lanes) — L2 on the trust ladder, never L3.
  • The depolarizing model is a scaled stand-in for H-series noise, not a device-calibrated model.
  • k* is measured on this circuit family and target set; it is not proved for arbitrary inputs.

The earlier noise-resilience work at the AQFT noise proofs showed a single truncated circuit beating the full QFT on one instance; this gate turns that anecdote into a surface. The second-compiler check lives at G24 and the cloud emulator cross-check at G25.

Generated 2026-08-22T15:15:14Z from quantum/aqft_law/ · results committed at src/data/demos/aqft_crossover_law.json.
Arun Nadarasa · Refutation-first research notebook · Selene emulator runs, source open
Credit is aspirational until independently verified · © 2026