遇见数据集

A fair-baseline test of engineered decoherence-free pair codes on a 156-qubit IBM Heron-family processor (ibm_fez)

收藏
Zenodo2026-10-30 更新2026-11-05 收录
官方服务:

资源简介:

Companion to the earlier record on naturally decoherence-free qubit pairs on ibm_kingston (doi:10.5281/zenodo.23720521). That record found no natural protection. This one tests whether the protection can be engineered with pulses, as reported by Quiroz et al. (2024). Author: Amit Brahmbhatt · ORCID 0009-0003-5882-8476 Date of experiments: 28 October 2026 (US Pacific time). Calibration screen 20:14; run 1 submitted 22:19; run 2 submitted 23:16 Hardware: ibm_fez (156 qubits, IBM Heron family) via IBM Quantum (open plan). Published calibration was also read for ibm_kingston and ibm_marrakesh QPU time used: 62 s in total, as reported by IBM: run 1 20 s (job dbhdet9q260s73bv2qng), run 2 42 s (job dbhe9a9t9uhs73ca2qv0). The calibration screen uses no QPU time Software: calib_check.py (calibration screen), dd_ceiling_test.py v0.1 (run 1), and dfs_dd_scan.py v0.1 (run 2), which is the script published with the Kingston record, run unchanged. Python 3.11, Qiskit 2.4.2, qiskit-ibm-runtime 0.47.0, NumPy 2.2.6, SciPy 1.15.2, Qiskit Aer 0.17.2 Plain-language summary. Quantum computers lose information because their qubits are disturbed by noise. A decoherence-free code stores one qubit's worth of information across two qubits, arranged so that noise hitting both of them the same way cancels out. Our earlier record showed that IBM's chips do not provide this for free, because the noise on neighbouring qubits is not shared. A 2024 study reported that the protection can be created with carefully timed control pulses, and that the result beat single qubits by up to 23%. We tested that idea with a fair comparison: the two-qubit code against the better of its own two qubits, given the best pulse sequence we could find, with every measurement counted. First, IBM's published calibration data were used, without using the quantum computer, to find the pairs where a code had the best chance. A short test on the most promising pairs showed that on 4 of 8, a code still had room to win. A second test settled it: on all 4 of those pairs, the code kept 2.6 to 5.6 times less information than its better qubit on its own. The noise left over after the pulses still strikes each qubit independently, and a two-qubit code cannot cancel independent noise. Along the way we found that IBM's calibration data badly undersell some qubits. Of the qubits that kept almost nothing over 100 microseconds under the standard measurement (at most 7%), 10 of 12 kept 16–52% when given rapid pulses. Technical summary. We tested engineered (dynamically generated) decoherence-free pair codes on ibm_fez against a fair single-qubit baseline: the better of the code's own two qubits, with the best of several decoupling sequences, its partner idle in |0⟩, and every shot counted. A free screen of IBM's calibration for three 156-qubit processors found that about half of all neighbour pairs pass a necessary condition, H > max(T2), where H is the code's coherence time if all dephasing were removed (the harmonic mean of the two T1s). Run 1 (20 s) measured, at t = 100 µs, each qubit's coherence under five idle treatments (free, echo, XY4, XY8, KDD) and its T1 survival, which sets the code's ceiling sqrt(P1a·P1b). On 4 of 8 candidate pairs the ceiling exceeded every single-qubit option by at least 3 sd (cross-fitted to remove selection bias). The pre-specified reading was CODE_HAS_ROOM_ON_SOME_PAIRS. Dense sequences with pulses about 1 µs apart (XY8, KDD) raised 10 of the 12 candidate qubits that echo left at or below 0.07 to 0.16–0.52; the other 2 (q134 and q46) stayed at or below 0.05. Run 2 (42 s) used the published dfs_dd_scan.py v0.1, unchanged, on those 4 pairs: both qubits in the code state, with 100 synchronised XY4 pulses that keep the state inside the |01⟩/|10⟩ code. This is a best case for any engineered version, with no encoding gates. A prediction was recorded before submission: the strict test would fail on all four pairs. It did, by −15.8 to −13.5 sd against the pre-specified best single qubit, and by −14.2 to −5.1 sd against each pair's own better qubit. The code's coherence was close to the product of its two qubits' coherences, and the decoupling created no correlation. The noise left after decoupling is independent from qubit to qubit, so on these qubits a pair code cannot beat its better qubit. Post-selection does not change this, because the remaining error is dephasing inside the code space, which post-selection cannot detect (argued, not measured). 1. Question The earlier record (doi:10.5281/zenodo.23749911, final version) searched nine qubits of ibm_kingston on three nights for naturally protected pairs and found none: correlated phase noise between neighbours was consistent with zero. Quiroz et al. [1] reported that the needed symmetry can be created with decoupling sequences, giving up to 23% higher fidelity than physical qubits under decoupling alone. This record asks whether that holds on a current processor against a fair baseline. What the 23% measures (our reading of [1]). Hardware: IBM Falcon processors from 2022 (Manila, 5 qubits; Montreal, 27 qubits). On Manila, T2 (26–71 µs) was far below T1 (121–200 µs), the regime where a pair code has the most room. Pulses: logical rotations built from about four CNOTs each (about 1.5 µs per rotation; one cycle of the two-qubit sequence took about 15 µs). Metric: fidelity averaged over a short time window (about 12–43 µs) and 20 input states. Baseline: XY4 on one physical qubit with its neighbours idle. In the multi-qubit comparisons, XY4 ran on every other physical qubit and the rest evolved freely. Post-selection: every encoded result is post-selected and the discarded shots are not counted against it. The physical baseline is not post-selected. Size of the effect: the 23% is the largest value, 23.6%, for the three-qubit code against physical decoupling on Montreal over one cycle (about 12 µs). For a single logical qubit on Manila, the two-qubit code gained 7.25% over XY4 in the long-time limit. None of this makes [1] wrong. It is a different comparison from the one asked here: does an engineered pair code beat the better of its own two qubits, given good decoupling, with every shot counted? 2. The calibration screen used before each run 2.1 Principle A |01⟩/|10⟩ code loses its coherence whenever either qubit relaxes, however well its dephasing is removed. Its coherence time is therefore at most H = 2 / (1/T1a + 1/T1b), the harmonic mean of the two T1s, and its coherence after time t at most sqrt(P1a(t)·P1b(t)), where P1(t) is the probability that a qubit prepared in |1⟩ is still in |1⟩. One qubit with a single refocusing pulse already reaches T2 (Hahn echo, as IBM reports it). Counting every shot, a pair can only beat its better qubit if R = H / max(T2a, T2b) > 1. This is necessary, not sufficient: better decoupling can push a single qubit well above its echo T2, up to 2·T1, and H ≤ max(T1) < 2·max(T1). The screen needs only the published calibration and uses no QPU time (calib_check.py). 2.2 Chip-wide screen Calibration read at 20:14 US Pacific time on 28 October for the three processors available to the author. Pairs whose qubits were flagged non-operational are excluded. "Usable" means two-qubit gate error below 0.5% and readout error below 3% on both qubits. ibm_kingston ibm_fez ibm_marrakesh Median T1 / T2 (µs) 235 / 150 143 / 99 146 / 82 Median dephasing share, 1 − T2/(2·T1) 0.62 0.62 0.69 Neighbour pairs with R > 1 87 of 174 97 of 174 100 of 170 … with R > 1.5 38 32 50 … with R > 1 and usable 63 61 44 Best single-qubit T2 (µs) 579 (q1) 279 (q88) 321 (q2) Largest pair H (µs) 355 255 326 Pairs with H above the chip's best T2 0 0 1 Pairs that pass are mostly pairs of qubits with poor T2. A code could beat its own two qubits there, but almost never the chip's best qubit. The nine-qubit Kingston chain of the earlier record fails the screen on 7 of its 8 neighbour pairs, consistent with the earlier result. ibm_fez was chosen for the runs because its queue was short and it had many passing pairs. 2.3 Pair selection at submission (run 1) The run-1 script re-read the calibration when it was submitted (last updated 21:55 US Pacific time) and chose pairs by a rule fixed in the script before any data were taken. Both qubits operational; readout error below 3%; T1 at least 60 µs; two-qubit gate error below 0.5%. Candidates: R ≥ 1.3, highest R first. Controls: R ≤ 0.8, highest H first. A pair was accepted only if neither qubit touched a qubit already chosen. The calibration is saved with the run, and the build of this description checks that the rule reproduces the same ten pairs from it. Pair Role R H (µs) T1 (µs) T2 (µs) 2-qubit gate error q91–q98 candidate 6.21 122 111 / 136 20 / 15 0.22% q8–q9 candidate 4.97 204 163 / 273 41 / 17 0.16% q139–q155 candidate 4.80 138 107 / 194 29 / 15 0.28% q81–q82 candidate 4.19 125 150 / 106 22 / 30 0.22% q77–q85 candidate 3.24 124 114 / 137 38 / 29 0.26% q133–q134 candidate 3.14 131 142 / 122 42 / 35 0.26% q46–q47 candidate 2.94 158 192 / 134 11 / 54 0.31% q34–q35 candidate 2.24 157 124 / 213 70 / 44 0.21% q74–q75 control 0.68 149 118 / 201 126 / 219 0.22% q140–q141 control 0.66 144 136 / 154 218 / 90 0.14% 2.4 Run 2 and the limits of calibration Run 2 did not use the calibration to choose pairs. It used the pairs that run 1 had measured as "code has room", because run 1 had shown that the calibration was not reliable enough for this purpose: T1 measured in the job differed from the calibration value read at submission by up to a factor of 2.0 (q140 136 → 69 µs, q47 134 → 74 µs, q35 213 → 123 µs, q134 122 → 71 µs). For this reason run 1 measured each pair's ceiling itself instead of computing it from the calibration. The echo T2 that IBM reports said nothing about what decoupling could achieve: dense sequences gave the highest coherence on 15 of 16 candidate qubits (Section 3.3). dfs_dd_scan.py v0.1 does not record the calibration with the run. Its dry run and submission check only the circuit structure and timing. 3. Run 1: can a single qubit beat the best any pair code could do? 3.1 Design Pairs: 8 candidates and 2 controls, chosen as in Section 2.3. Measured on each qubit at t = 100 µs, with its partner idle in |0⟩: T1 survival P1(t), which gives the code's ceiling sqrt(P1a·P1b). Coherence of |+⟩ under five idle treatments: free; echo (one X pulse); XY4 ×8 (32 pulses, 3.1 µs apart); XY8 ×12 (96 pulses, about 1 µs apart) [2]; KDD ×5 (100 pulses, Knill composite pulses, robust to pulse errors) [3]. Readout: X and Y bases, so a precessing state still counts, each with and without a final X before readout to cancel asymmetric readout error. A t = 0 reference sets the scale. Layouts: first qubits of all pairs together, then second qubits. Pairs never touch. Size: 52 circuits, 52,000 shots, in random order on the device. 3.2 Pre-specified test and validation For each pair, D = ln Cbest − ln(ceiling), where Cbest is the best of ten options (two qubits × five treatments). Choosing the best on the same data would favour the single qubit, so the choice was cross-fitted: picked on even-numbered shots and estimated on odd ones, then the reverse, and averaged. Standard errors came from a bootstrap over shots that repeats the selection. D ≥ +3 sd: the single qubit wins, and no pair code can win on that pair at t. D ≤ −3 sd: the code has room, which is necessary but not sufficient for a real code to win. Anything in between is undecided. Before the run the script was validated without the QPU: A self-test with simulated noise: slow noise that decoupling removes (expect "single qubit wins") and white noise that it cannot remove (expect "code has room"). Repeated runs with mixed noise, readout asymmetry and pulse errors gave 34 verdicts, none with the wrong sign. The bias from choosing the best option was removed, and the error bars were conservative. A check that the transpiled pulse train on every qubit is exactly the intended operation. End-to-end runs of all circuits on IBM's noise models for Fez, Kingston and Marrakesh (Qiskit Aer), where the right answer is known. Measured T1 survival and coherence matched the model on all 60 qubits, and every verdict had the right sign. Outputs are in selftests/. 3.3 Results Pair Role Code ceiling Best single qubit (choice) D z Verdict q91–q98 candidate 0.561 0.387 (q91 KDD / q98 XY8) −0.370 ± 0.083 −4.5 code has room q8–q9 candidate 0.596 0.287 (q9 KDD) −0.732 ± 0.122 −6.0 code has room q139–q155 candidate 0.445 0.524 (q155 KDD) +0.162 ± 0.058 +2.8 undecided q81–q82 candidate 0.381 0.236 (q82 KDD / q82 XY8) −0.478 ± 0.146 −3.3 code has room q77–q85 candidate 0.476 0.377 (q85 KDD / q85 XY8) −0.232 ± 0.067 −3.5 code has room q133–q134 candidate 0.279 0.291 (q133 KDD) +0.044 ± 0.111 +0.4 undecided q46–q47 candidate 0.346 0.164 (q47 KDD / q47 XY8) −0.750 ± 0.260 −2.9 undecided q34–q35 candidate 0.413 0.404 (q34 KDD) −0.023 ± 0.118 −0.2 undecided q74–q75 control 0.463 0.505 (q75 KDD / q75 XY8) +0.087 ± 0.068 +1.3 undecided q140–q141 control 0.313 0.450 (q141 XY8) +0.365 ± 0.094 +3.9 single qubit wins Candidates: 4 code has room, 4 undecided, 0 single qubit wins. Controls: 1 single qubit wins, 1 undecided, none with room, as expected. Pre-specified reading: CODE_HAS_ROOM_ON_SOME_PAIRS. Coherence of each qubit at 100 µs (calibration values from the snapshot read at submission): Qubit Role Calibration T1 / T2 (µs) Measured T1 (µs) Free Echo XY4 ×8 XY8 ×12 KDD ×5 Best / T1 limit q91 candidate 111 / 20 178 0.03 ≤ 0.03 0.09 0.31 0.39 0.52 q98 candidate 136 / 15 167 ≤ 0.03 ≤ 0.03 0.10 0.39 0.35 0.53 q8 candidate 163 / 41 194 0.07 0.08 0.15 0.20 0.20 0.26 q9 candidate 273 / 17 193 ≤ 0.03 ≤ 0.03 0.11 0.24 0.29 0.37 q139 candidate 107 / 29 100 ≤ 0.03 0.07 0.04 0.14 0.16 0.27 q155 candidate 194 / 15 163 ≤ 0.03 ≤ 0.03 0.18 0.45 0.52 0.71 q81 candidate 150 / 22 109 ≤ 0.03 0.04 0.06 0.22 0.25 0.40 q82 candidate 106 / 30 99 ≤ 0.03 0.06 0.13 0.25 0.26 0.43 q77 candidate 114 / 38 127 0.14 0.15 0.20 0.18 0.19 0.30 q85 candidate 137 / 29 144 ≤ 0.03 0.06 0.15 0.40 0.41 0.58 q133 candidate 142 / 42 87 ≤ 0.03 0.03 0.23 0.28 0.29 0.52 q134 candidate 122 / 35 71 ≤ 0.03 ≤ 0.03 ≤ 0.03 ≤ 0.03 0.04 0.09 q46 candidate 192 / 11 131 ≤ 0.03 ≤ 0.03 ≤ 0.03 0.05 0.05 0.08 q47 candidate 134 / 54 74 0.11 0.16 0.05 0.19 0.17 0.37 q34 candidate 124 / 70 105 0.16 0.19 0.24 0.33 0.40 0.65 q35 candidate 213 / 44 123 0.06 ≤ 0.03 0.12 0.29 0.17 0.43 q74 control 118 / 126 118 0.35 0.41 0.44 0.39 0.47 0.72 q75 control 201 / 219 144 0.19 0.45 0.45 0.52 0.53 0.75 q140 control 136 / 218 69 0.20 0.36 0.30 0.39 0.32 0.79 q141 control 154 / 90 114 0.32 0.34 0.36 0.45 0.42 0.70 Dense decoupling rescues qubits that the calibration lists as poor. Echo leaves almost nothing on most candidate qubits; XY8 and KDD, with pulses about 1 µs apart, keep up to 0.52. XY4 with pulses 3.1 µs apart helps much less, so the dominant noise changes over a few microseconds. The last column is the best coherence divided by the qubit's own T1 limit, sqrt(P1). Values well below 1 mean dephasing that the sequences did not remove. That is the room the code would need to exploit. One control qubit (q141) showed a transient readout asymmetry of about 12% between the two readout masks. Averaging the masks cancels this to first order, and its pair is a control. 3.4 What "room" means After decoupling, what limits the single qubits is dephasing, not T1. A pair code can use that room only if the remaining dephasing is shared by its two qubits. If it is independent, the code's coherence under the same pulses on both qubits is about the product Ca·Cb, which is always below the better qubit. Run 2 measures this directly. Before it was submitted, the project notes (NOTES.md, included) recorded the prediction that its strict test would fail on all four pairs, unless more than about half of the remaining dephasing were common to both qubits. 4. Run 2: the pair code itself, under the same pulses 4.1 Design Script: dfs_dd_scan.py v0.1, published with the Kingston record and run unchanged, with --pairs 91-98,8-9,81-82,77-85 --cycles 25: XY4 ×25, 100 pulses 1 µs apart. Pair coherence: both qubits of each pair start in |+⟩. The |01⟩/|10⟩ coherence is read exactly from two-qubit correlations (identity of the v1.6 analysis). It equals the coherence an encoded code state would keep, minus encoding and decoding errors. It is therefore an upper bound on a version built with two-qubit gates. Conditions: sync applies the pulses to both qubits at the same moments. X on both qubits swaps |01⟩ and |10⟩, so the state stays in the code while each qubit's slow phase noise is refocused, the role played by the logical pulses in [1]. stag shifts the second qubit's pulses by half a spacing. Each qubit is also measured alone, with the same pulses and its neighbours idle in |0⟩. Pre-specified strict test: pair coherence under sync minus the best single qubit under the same pulses must be at least +3 sd. The script compares every pair with the best single qubit of the whole run (here q85). Size: 88 circuits, 114,400 shots. 4.2 Results Pair Code, sync Code, stag Product of the two qubits alone Better qubit alone z vs better qubit Strict test z q91–q98 0.073 ± 0.018 0.122 ± 0.016 0.086 0.359 ± 0.018 (q98) −11.1 −14.8 q8–q9 0.088 ± 0.020 0.077 ± 0.018 0.038 0.227 ± 0.019 (q9) −5.1 −13.5 q81–q82 0.079 ± 0.016 0.091 ± 0.019 0.081 0.309 ± 0.017 (q82) −9.8 −15.8 q77–q85 0.080 ± 0.019 0.060 ± 0.019 0.073 0.447 ± 0.017 (q85) −14.2 −14.2 The prediction held. The strict test fails on all 4 pairs. The code also loses clearly to each pair's own better qubit (z from −14.2 to −5.1; this per-pair comparison was not pre-specified). The better qubit keeps 2.6 to 5.6 times more coherence. The code's coherence is close to the product of its two qubits' coherences, as expected when the remaining noise is independent. No correlation was created by the decoupling. Under sync, the correlation term was −0.03 ± 0.17, +0.39 ± 0.28, +0.25 ± 0.17, +0.20 ± 0.22 (script reading NO_CREATED_CORRELATION). The script also reports the code's gain over the product of the two qubits' coherences measured inside the pair layout. Under sync it was ×0.84, ×2.32, ×0.97, ×1.09 (largest z +2.7). Matching the better qubit would need roughly ×4, ×6, ×4, ×6 relative to the product of the two qubits measured alone. Under free evolution almost no coherence survives at 100 µs. The script flags those pair results as low signal, and their very large ratios carry no information. 5. Conclusions A free calibration screen (R = H / max T2) is a quick way to find where a pair code could possibly win. On these three processors about half of all neighbour pairs pass it, almost all of them pairs of qubits with poor T2. On 4 of 8 such pairs on ibm_fez, the T1 ceiling of a pair code was higher than the best of five single-qubit treatments. T1 alone does not rule the code out there. The room cannot be used. With the pair code's dephasing refocused by the same pulses, the code kept 2.6 to 5.6 times less coherence than its better qubit, because the remaining noise is independent on each qubit. A two-qubit gate implementation could only do worse. On these qubits, engineered decoherence-free pair codes give no advantage over the better qubit with good decoupling. Calibration T2 badly undersells qubits whose noise changes over microseconds. Dense decoupling (pulses about 1 µs apart) raised 10 of 12 such qubits from at most 0.07 to 0.16–0.52 coherence at 100 µs. T1 measured in the job also differed from the calibration read at submission by up to a factor of 2.0. Together with the earlier record: on the IBM Heron-family processors tested, neither a natural nor an engineered two-qubit decoherence-free code beat a single qubit with good decoupling, once the comparison was fair. A pair code needs noise that its qubits share, and these processors are built so that each qubit's noise is its own. 6. Limitations One processor (ibm_fez), one night, one storage time (100 µs). With independent noise the product argument holds at any storage time, but this was measured only at 100 µs. Only the two-qubit |01⟩/|10⟩ code was tested. The three-qubit, SWAP-based code of [1] was not. Post-selection was not measured here. The argument that it cannot help rests on the remaining error being dephasing inside the code space. Only 4 pairs were tested in run 2. Pairs with genuinely shared noise may exist elsewhere on these chips; none have been found so far. The single-qubit baseline used five sequences. Better ones would only strengthen the conclusion. 7. Files and reproduction See README.md in the archive for the file list and data format. No QPU time is needed to reproduce the analysis: python dd_ceiling_test.py --selftest python dd_ceiling_test.py --fake FakeFez --aer python dd_ceiling_test.py --analyze runs/20261028_221946_ibm_fez python dfs_dd_scan.py --analyze runs/20261028_231608_ibm_fez_dd python calib_check.py --from-dir calibration/calib_20261028_201359 python build_description.py The last command recomputes every number in this description from the raw shots and calibration snapshots, and stops if any differs from the saved analyses. References G. Quiroz, B. Pokharel, J. Boen, L. Tewala, V. Tripathi, D. Williams, L.-A. Wu, P. Titum, K. Schultz, D. A. Lidar, "Dynamically generated decoherence-free subspaces and subsystems on superconducting qubits", Rep. Prog. Phys. 87, 097601 (2024); arXiv:2402.07278. T. Gullion, D. B. Baker, M. S. Conradi, "New, compensated Carr-Purcell sequences", J. Magn. Reson. 89, 479 (1990). A. M. Souza, G. A. Álvarez, D. Suter, "Robust dynamical decoupling for quantum computing and quantum memory", Phys. Rev. Lett. 106, 240501 (2011). D. Kielpinski et al., "A decoherence-free quantum memory using trapped ions", Science 291, 1013 (2001). Related record Amit Brahmbhatt (2026). A gate-free search for naturally decoherence-free qubit pairs on a 156-qubit IBM Heron-family processor. Zenodo. All versions: doi:10.5281/zenodo.23720521; final version 3.0: doi:10.5281/zenodo.23749911. The QPU time of that project was 161 s, so the two records together used 223 s. AI assistance The literature reading, calibration screen, test design, analysis code, simulations and this description were developed in collaboration with Claude (Anthropic; Claude Opus 5.5, used through Claude Code), under the author's direction. The author selected the hardware, ran all jobs on IBM Quantum, and reviewed the results. Acknowledgement We acknowledge the use of IBM Quantum services for this work. The views expressed are those of the author and do not reflect the official policy or position of IBM or the IBM Quantum team. How to cite Amit Brahmbhatt (2026). A fair-baseline test of engineered decoherence-free pair codes on a 156-qubit IBM Heron-family processor (ibm_fez) [Data set]. Zenodo. Please use the DOI shown on this record's page.

提供机构:
Zenodo
创建时间:
2026-10-30
二维码
社区交流群
二维码
科研交流群
商业服务