Two small quantum checks: a raw 3-qubit fidelity witness, and a readout assignment on the same qubits

Plaintext article. SHA-256 9fb458418a45c5a4e56c31a624ca2a4945f52af75c78f5cbf6059b3335918aae (13585 bytes).

# Two small quantum checks: a raw 3-qubit fidelity witness, and a readout assignment on the same qubits

**Quantum Mind A.I. ยท 2026-11-02**

## In short

Quantum Mind A.I. ran two small checks on three qubits of IBM's 156-qubit ibm_fez processor, through IBM's Open Plan, on 2026-11-02. The qubits were 30, 29, and 38, one path, two jobs, one day. The fidelity witness passed its raw threshold: F_raw is about 0.91, with a 95% interval of about 0.83 to 0.98, and the lower bound above one half. The score is raw. It is not certified entanglement, and it is not error-mitigated. The readout check on the same qubits returned IMBALANCE, from qubit 29 alone: reading a 1 as a 0 is about 3.4 times likelier than the reverse, typical of a qubit relaxing during measurement. Those assignment matrices were not applied to the fidelity counts.

## How the fidelity witness works

The target state is an even split of 000 and 111, written (|000> + |111>)/sqrt(2). The preparation is an H on qubit 0, a CX from qubit 0 to qubit 1, and a CX from qubit 1 to qubit 2. Five circuits then measure that preparation. ZZZ has no extra rotation. XXX, XYY, YXY, and YYX add the basis rotations fixed before the run. Each circuit takes 1024 shots. The count key is c2 c1 c0, and c0 is qubit 0.

F_raw adds half the share of 000 and 111 shots to one eighth of a signed mix of four parity scores. A parity score is the even-bit shots minus the odd-bit shots, divided by 1024. The pass rule is a simultaneous Hoeffding interval, split across the five circuits. The interval is a simultaneous 95% sampling interval (0.05 split over 5 circuits). PASS means the lower bound is strictly above 1/2. The interval covers sampling error under the stated assumptions. It does not cover readout bias. For the true state fidelity, any value above 1/2 rules out every biseparable state. F_raw is computed from raw counts that include readout error, so it is not that fidelity, and this note does not claim genuine three-qubit entanglement.

## How the readout check works

Four circuits prepare 000, or a single X on one of the three qubits, and measure. The other qubits stay in 0. There is no H, no CX, and no fidelity-state preparation. Each qubit gets a 2 by 2 assignment matrix. P(1|0) is the share of shots that read 1 after that qubit was prepared in 0. P(0|1) is the share that read 0 after it was prepared in 1. Each of those six rates has a Clopper-Pearson interval at level 0.05/6. The flag is IMBALANCE if any qubit's two intervals are disjoint, and BALANCED otherwise. A shared endpoint would count as balanced. The average error does not add another test. These matrices must not be applied to the fidelity counts. IMBALANCE is not a device grade. The matrix is an effective assignment, not pure detector tomography, because the X column includes that X, the idle, and the readout.

## The fidelity witness, recorded

The fidelity run is on ibm_fez. Logical qubit 0 is physical 30, qubit 1 is 29, and qubit 2 is 38. The cap is 30 seconds. The fetch records 4 seconds. The run is 5 x 1024 shots, 5120 in total. The compiler settings are optimization level 1 and seed 20261102, with no dynamical decoupling and no twirling. Each of the five circuits matched the layout, the measure map, and the logical unitary.

Recorded to the displayed digits, F_raw is 0.90869, the interval is 0.8324 to 0.9850, and the radius is 0.0763. P000 is 0.5000, from 512 of 1024 shots. P111 is 0.4404, from 451 of 1024. The parity scores round to +0.8926, -0.8887, -0.8633, and -0.8633 on XXX, XYY, YXY, and YYX. The lower bound is above 1/2, so the verdict is PASS. The ideal parity scores are +1, -1, -1, and -1. A state-vector check of the preparation prints ideal fidelity 0.9999999999999996 and ideal_fidelity_is_1. That check is not the hardware score. The parser checks score an ideal count map as F_raw 1 and PASS, and a product count map as F_raw 0.25 and MISS. Those are not the hardware result.

Recorded ZZZ counts: 000:512 001:15 010:4 011:10 100:11 101:11 110:10 111:451.

Recorded XXX counts: 000:255 001:18 010:13 011:236 100:16 101:241 110:237 111:8.

Recorded XYY counts: 000:17 001:223 010:240 011:11 100:260 101:20 110:9 111:244.

Recorded YXY counts: 000:18 001:243 010:222 011:12 100:245 101:18 110:22 111:244.

Recorded YYX counts: 000:24 001:239 010:248 011:16 100:229 101:15 110:15 111:238.

## The readout check, recorded

The readout run is paired with the fidelity run: the same three qubits and the same calibration identity, as a separate job. The cap is 60 seconds. The fetch records 6 seconds. The run is 4 x 4096 shots, 16384 in total. The compiler settings match the fidelity job. Each of the four circuits matched the layout, the measure map, and the logical unitary.

Displayed to 4 decimals, the six rates and their intervals are these. Qubit 30: P(1|0) is 0.0159, interval 0.0112 to 0.0218, and P(0|1) is 0.0134, interval 0.0092 to 0.0189. The intervals overlap. Qubit 29: P(1|0) is 0.0051, interval 0.0027 to 0.0089, and P(0|1) is 0.0173, interval 0.0124 to 0.0235. The intervals are disjoint. Reading 0 after a prepared 1 is about 3.4 times as common as reading 1 after a prepared 0. Qubit 38: P(1|0) is 0.0161, interval 0.0114 to 0.0220, and P(0|1) is 0.0159, interval 0.0112 to 0.0218. The intervals overlap. The measured averages round to 1.46%, 1.12%, and 1.60%. The verdict is IMBALANCE, from qubit 29 alone.

Recorded Z000 counts: 000:3947 001:64 010:19 011:0 100:63 101:1 110:2 111:0.

Recorded Z100 counts: 000:54 001:3945 010:0 011:18 100:1 101:78 110:0 111:0.

Recorded Z010 counts: 000:69 001:0 010:3878 011:66 100:2 101:0 110:81 111:0.

Recorded Z001 counts: 000:62 001:3 010:0 011:0 100:3937 101:67 110:27 111:0.

The single-X circuits also record a crosstalk note, the share of 1s on each qubit that was prepared in 0. That note does not set the flag. On Z100 the shares are 0.00439453125 and 0.019287109375. On Z010 they are 0.01611328125 and 0.020263671875. On Z001 they are 0.01708984375 and 0.006591796875.

## Exploratory note

Label: EXPLORATORY. This comparison was not a pre-registered test, and it sets neither flag. The calibration table on this path lists readout error 0.00732421875, 0.044921875, and 0.01416015625 for qubits 30, 29, and 38. Rounded, that is 0.0073, 0.0449, and 0.0142. The measured averages are 0.0146484375, 0.01123046875, and 0.0159912109375. Rounded, that is 0.0146, 0.0112, and 0.0160. The table value on qubit 29 is about four times the measured average (exactly 4.0 in these counts). The measured average on qubit 30 is about twice the table value (exactly 2.0 in these counts).

A second exploratory reading, also not a pre-registered test: the fidelity counts have more 000 than 111, 0.5000 versus 0.4404, and qubit 29 reads 0 after a prepared 1 more often than it reads 1 after a prepared 0. Readout alone would account for about 5 of the 61-shot gap, so most of it is not a readout effect. This reading is not a pass rule, and the readout matrices were not applied to the fidelity counts.

## Time on the device

IBM reported 10 seconds of quantum time for the two jobs (4, 6). The caps were 30 seconds and 60 seconds. The planning extrapolations were 5 seconds and 16 seconds. Those extrapolations are not the reported usage. Both pre-submit reads record 581 seconds remaining. That 581 is the pre-submit field.

## Limits

The fidelity result is a raw score. No readout mitigation, post-selection, discarded shots, or adaptive shots were applied. PASS means the sampling lower bound is strictly above 1/2. It is not certified entanglement, and it is not a device certificate. The interval does not cover readout bias. F_raw is computed from raw counts that include readout error, so it is not the true state fidelity. The readout matrices were not applied to the fidelity counts. IMBALANCE is not a device grade. The table-versus-measured gap is exploratory. Each check used three qubits of a 156-qubit processor, on one path, on one day.

## Figures

The ZZZ histogram is figures/ghz-zzz.svg. The four parity scores are figures/ghz-correlators.svg. The assignment rates and intervals are figures/lh18-rates.svg. The exploratory table-versus-measured bars are figures/lh18-gap.svg. build_figures.py draws every chart from the result JSON alone and does not rescale the fidelity counts.

## Provenance

Recorded to the displayed digits, F_raw is 0.90869, its interval is 0.8324 to 0.9850, the radius is 0.0763, the populations are 0.5000 and 0.4404, and the parity scores are +0.8926, -0.8887, -0.8633, and -0.8633. The readout rates are shown to 4 decimals and the measured averages as 1.46%, 1.12%, and 1.60%. In short, F_raw is about 0.91 and the interval is about 0.83 to 0.98. Every exact value is below.

### Sources

1. Input copy manifest sha256 fdbb3d65a3417515ea48e0d09057123eef93cc4051d84a59b732b329d38068b6.
2. Fidelity files sha256 17eafaddc642dd3046479211d201aeb889816ba1ad368cf5fd6ea717771716a9, 399da385efea2aa0413245c0eae174bac66063f0e4e9897fe91296ccc525e23f, and 6abc820366c246c72487a18faeeff9d9116da4eb1ef22d6b34f6df3e51a5ec61.
3. Readout files sha256 a90f79862ef60e0d09b53e3c4a542c171a01198d107d180b84d82ea342ac80e0, c89029dcf464702eb1ece05ea357a5c9022481c7452cac4266402c4a0c8e006b, and df8de3d3b7b3d97772b28ddafa91d0c98711bf0d1ebe79269ac0dcdda585ae64.
4. Fidelity prereg sha256 3b7d2b7be6c060a109fc3fcb124bf6766c9f48803f8282a9f32d04165b77baf5. Its checker sha256 is 3ffaac44c6cdadad07b6476ffacc9169390b66d5af4ff0f723aff051f5a1002f, and its sim output sha256 is 20f8370445d03ca309045f5826be5036d43663fa732d2df7aec117a47011fb2d.
5. Readout prereg sha256 536e43d50fddf97a6adb2e66a728e1d53ea2c5eacb0446ef59d869cefde417c7. Its checker sha256 is afb8b936feba3e7867fca432569ae63fd6cb92c3c075db2eeaa5ae9683f3b637, and its ideal output sha256 is 6e810b759a32aea280209a180f0864e50b689cfe90b762d343b8fd8d175506af.
6. Jobs on ibm_fez, plan open. Fidelity dbk8qp0nceqs73aldvkg, usage_seconds 4, cap 30, shots 5 x 1024. Readout dbk8qv9kdqps73920930, usage_seconds 6, cap 60, shots 4 x 4096, pairing PAIRED. Reported total 4 + 6 = 10 seconds. Both pre-submit reads record qualified true and limit_reached false, with 581 seconds remaining.
7. Path q0 30, q1 29, q2 38. Calibration sha256 1963d87d7eb8b6812d539b18994e08de2a7870dd5266f85ec703954e91425590. Selection-table sha256 cdb7b051eda56488dde446d711f691218f045d68eefc66eb381a5203d23e1b92. Fidelity identity sha256 97e4c60e65f05e2a1c9ce644cde9bdfb6b79b2cad4d3ae99a64701860e9379df. Readout identity sha256 f7dce6185871de1596c738aa7f51313ed52cf32d986bdad32a4ed33553814e35. Calibration last_update 2026-11-02 07:58:24-05:00.
8. An independent recompute from the raw counts agrees: F_raw 0.90869, interval [0.8324, 0.9850], PASS, IMBALANCE, and the readout matrices were not applied to the fidelity counts.

### Exact values

Fidelity. P000 0.5, equal to 512/1024. P111 0.4404296875, equal to 451/1024. E_XXX 0.892578125. E_XYY -0.888671875. E_YXY -0.86328125. E_YYX -0.86328125. F_raw 0.90869140625. t_pop 0.025431619229980145. t_E 0.10172647691992058. radius 0.07629485768994043, equal to t_pop + 4 * (1/8) * t_E. The prereg prints those three widths as 0.025431619230, 0.101726476920, and 0.076294857690. Twice t_pop prints as 0.050863238 at 9 decimals, and the radius prints as 0.076294858 at 9 decimals. interval_unclipped 0.8323965485600595 and 0.9849862639399405. interval_display is the same pair. Verdict PASS.

The witness is F_raw = (P000 + P111) / 2 + (1/8) (E_XXX - E_XYY - E_YXY - E_YYX).

Readout matrices, columns prepared 0 then 1 and rows measured 0 then 1, stored as p00, p01, p10, p11. Qubit 30: 0.984130859375, 0.013427734375, 0.015869140625, 0.986572265625. Qubit 29: 0.994873046875, 0.017333984375, 0.005126953125, 0.982666015625. Qubit 38: 0.98388671875, 0.015869140625, 0.01611328125, 0.984130859375. Measured averages e 0.0146484375, 0.01123046875, 0.0159912109375.

Intervals, P(1|0) then P(0|1). Qubit 30: 0.011185506871766317 to 0.02176504243317584, and 0.009153599737003346 to 0.018923276139962086. Qubit 29: 0.0026605674426880364 to 0.008858311660776719, and 0.012420274579991966 to 0.02345479674203249. Qubit 38: 0.011390555453464367 to 0.022047399856561956, and 0.011185506871766317 to 0.02176504243317584. Only the qubit 29 pair is disjoint. Verdict IMBALANCE.

Calibration-table readout 0.00732421875, 0.044921875, 0.01416015625. In these counts, 4 * 0.01123046875 = 0.044921875, and 2 * 0.00732421875 = 0.0146484375. The stored CZ pair on the edge from qubit 30 to qubit 29 is 0.0014545941964203835 and 6.8e-08. The stored CZ pair on the edge from qubit 29 to qubit 38 is 0.0015123833269772569 and 6.8e-08. The stored sx and x pairs are 0.00018520087504429291 and 2.4e-08 on qubit 30, 0.00020378183057909838 and 2.4e-08 on qubit 29, and 0.00023257899602786999 and 2.4e-08 on qubit 38. Each stored measure pair appends 1.66e-06 to the table readout above.

Fidelity QASM sha256 values, in circuit order: 03f23c67315ef73f2378d36c3b8f5f418f41543fc1f7252f47b8cb971c768d03, 6780ffb3d61d56d43d780c049e526ecd7cbb75b32b9212f49b6615006acaaf06, b9ff7fd182104578d9666b641c2a84e74b73e33233bdbdd4039eac8c9a87ace3, 1ecdf5f810a3749e9f8b1da15d1804929056796828b2b925f48f3633dc8697fe, 50d9d17f03151c60ffe97fbfc1b22b22c81ecb6f359fe271f5bb6d16bc5953de. Readout QASM sha256 values, in circuit order: b2984d981f72840988f0ae95f941bba047a9e4b1b68e9f91d73110af5c7eb357, e3cf8ee8e179d056405c3298835c34282d334f9832281efe8ebef8e3a2bee9d9, eb88787195cc01be702bbf75f99954aa7893acc349da1afca3c469efb0ee498b, 6e2a4691fac10ded6bd853551ce7325c066792b3e1350eebbdb02b4589f3eef4.

Figures

The ZZZ histogram is figures/ghz-zzz.svg.
The ZZZ histogram is figures/ghz-zzz.svg.
The four parity scores are figures/ghz-correlators.svg.
The four parity scores are figures/ghz-correlators.svg.
The assignment rates and intervals are figures/lh18-rates.svg.
The assignment rates and intervals are figures/lh18-rates.svg.
The exploratory table-versus-measured bars are figures/lh18-gap.svg.
The exploratory table-versus-measured bars are figures/lh18-gap.svg.