← What’s Lost with a Look
One-neighbour revival, 22 October 2026
On ibm_phoenix an untouched qubit’s coherence came back after it had gone, when its neighbours sat in superposition (deciding runs). This run gives each untouched qubit exactly one designated neighbour in superposition (every other neighbour idle in 0), reads that neighbour at the end, and asks: does the coherence return on the schedule IBM’s calibrated coupling predicts, how much returns, and is it held in the correlation with the neighbour while it is gone? Plan, circuits and analysis pushed before any job. Results, read by the committed analysis, are below.
plan · zz.py · analyze_zz.py · synth_zz.py · synthetic tests: planted 0.5 1 2, planted 1.0 3, no coupling 11 12 13 14 15 16 · plan SHA-256 · code SHA-256
Results, read by the analysis (full output), after review by an outside referee
Jobs: ibm_phoenix dbcuopni0auc7394d6e0 (20 and 21 triples), ibm_fez dbcura0c77vs73873bo0 (32 triples). One change to the committed analysis, made after the data: its parser of IBM’s coupling names (zz_<a><b>, two qubit numbers run together) stopped on three phoenix names that admit two readings (zz_111, zz_1011, zz_010). The fix treats a pair and its reverse as one edge and rejects any split that gives a qubit number a leading zero; it changes the mapping of exactly those three names, every edge on both chips gets exactly one value, and the fez output is byte-identical before and after. as committed · as run · SHA-256.
- On ibm_fez (32 triples) the beat is fitted as a scale times IBM’s calibrated static ZZ for the pair: s = 0.916 [0.869, 0.983] and 0.981 [0.938, 1.005] for the two neighbours. The fit reads low by construction on fez: a simulation on fez’s own triples, calibration and time grid with the scale set to 1 returns 0.875 to 0.908 (three seeds, output), so both fez values are consistent with 1. The freely fitted beat tracks the calibrated value pair by pair (log-log slope 1.08 [0.94, 1.25]).
- On ibm_phoenix (20 and 21 triples) the scale is s = 0.514 [0.456, 0.673] and 0.420 [0.303, 0.558], below 1 and, for the first, consistent with 0.5; the two processors differ by +0.40 [+0.28, +0.52]. Whether phoenix’s calibrated value is stated under a different convention is not known from these data; the pre-registered flat-beat run later found the beat does not scale with the calibrated value (slope 0.19 against 1), which a single convention factor would not produce. A free fit pair by pair, made by the referee after the data, puts the beat near 12.5 kHz (interquartile 11 to 14) for pairs IBM calibrates anywhere from 10 to 57 kHz (rank correlation with the calibrated value 0.15); a 12.5 kHz beat returns every 80 µs, where the come-back in the deciding runs sat (58–78 µs). This is a measurement, not a pre-registered one; it is not in the paper (the pre-registered flat-beat run, on the same question, is), and no cause is claimed.
- Where the coherence is while it is gone. At the dip, the untouched qubit keeps 0.16 (phoenix) and 0.32 (fez) of its reference coherence over all shots, and 0.84 and 0.80 when the shots are split by the neighbour’s final reading: it is held in the correlation with the neighbour. Static ZZ with a relaxing neighbour produces the same in simulation. On phoenix the two copies disagree on the size (+0.74, +0.60), so that reading is cannot tell.
- How much comes back. With one neighbour, the return height is inside what static ZZ with a relaxing neighbour allows on phoenix (−0.004). On fez it first read above (+0.19), but in 16 of 26 triples the reference coherence had reached the measurement floor by the revival time, where a coherence magnitude is biased upward; with the reference above 0.15 (10 triples, chosen after the data) it is +0.07 [−0.02, +0.17], consistent with the fez simulation at a scale of 1 (medians +0.042 to +0.070, interval ends −0.017 to +0.137 over three seeds, output). No return beyond static ZZ is claimed.
- Echo and two neighbours. The echo lowers coherence at the dip by 3.6 % (phoenix) and 7.6 % (fez), both inside their static-ZZ simulated ranges; two neighbours in superposition combine as a product, as static ZZ also gives. The plan’s simulated ranges used phoenix-like parameters; the fez ranges come from a fez simulation the referee built after the data (synth_fez.py; at a scale of 1 its fit returns 0.875 to 0.908).
Outside referee’s recomputation and free fits: lib.py and the t*.py scripts in referee/. The flat-beat run’s committed reading (slope 0.19 [0.01, 0.38]) is used in the paper; see the flat-beat page.
The neighbour-in-1 arm, read for its phase (defined after the data)
The run’s arm with neighbour B1 in 1 was first read only for coherence. Its phase gives the frequency shift of the untouched qubit when the neighbour goes from 0 to 1, which is the zz itself, with no beat fit. The reading was written and pushed before the quantity was read (analyze_o1_shift.py); the version keeping only shots where the neighbour stayed put was defined after the first reading. ibm_phoenix: median shift 12.8 kHz, 0.49 [0.41, 0.60] of the calibrated value, log-log slope 0.10 [0.01, 0.22]. ibm_fez: 1.08 [0.97, 1.12] of the calibrated value (its slope 0.64 misses the known-good rule in this version). first reading · neighbour kept in 1. The pre-registered test of the same question is the flat-beat run.