By: Gilad Kishony, Avi Elazari, Ron Cohen, and Lior Gazit
The fidelity of quantum computers is significantly limited by noise and decoherence. While the implementation of fault-tolerant quantum error correction (QEC) remains a long-term objective, specialized error mitigation protocols are essential for enhancing the performance of the quantum device.
This post summarizes our recent paper available on arXiv here: https://arxiv.org/abs/2605.28342
Methodology: Auxiliary-Based Post-Selection
One effective method involves monitoring auxiliary qubits. In many quantum programs, these qubits act as a temporary workspace. By design, they are supposed to return to their starting state (|0⟩) once their task is complete. If we measure them at the end and find them in a different state, it serves as a clear "red flag" that an error occurred during the calculation.
By applying a post-selection strategy, we can filter our results:
Better Data Quality (Fidelity): We simply throw away any results where the auxiliary qubits "misbehaved." This ensures that the remaining data is much cleaner and more accurate, though it does mean we need to run the experiment more times to make up for the discarded data.
Faster Runtimes: If the hardware supports mid-circuit measurements, we can stop a calculation the moment an error is detected. Instead of wasting time finishing a corrupted run, the machine can immediately reset and start the next attempt, saving overall processing time.

Figure 1 - In this quantum program, we observe that qubits 1 and 2 serve as auxiliaries, which are reused for two functional blocks of the model. The “assign” block is allocating two fresh qubits, while its following inverse is freeing them, knowing they are quantum free and should return to the zero state.
Putting It to the Test with Classiq
We tested this approach using Classiq’s platform, generating two implementations of the same simple arithmetic function (which are accessible via this link):
@qfunc
def main(z: Output[QNum]):
x = QNum()
y = QNum()
x |= 2
y |= 1
z |= (2 * x + y + max(3 * y, 2)) > 4Classiq automatically creates circuits with different width and depth by varying how auxiliaries are allocated. It also lets us pinpoint exactly where auxiliaries are expected to return to zero — both at intermediate points (when qubits are freed and reused) and at the end of the circuit.
Because Classiq automatically tracks qubit reuse and lifetime, it can systematically identify expected reset points — making auxiliary checking nearly effortless compared to manual circuit inspection
Classiq’s platform automatically synthesizes an efficient implementation for this circuit by reusing auxiliary qubits between sequential functional blocks. You can see it in our arithmetic model below:

Figure 2 - The generated quantum program of the arithmetic model, when optimizing for depth, results in a lot of auxiliary reuse. The circuit can be explored interactively at this link
Results
The figure below shows the results under a realistic noise model.
- X-axis: false positive rate (good shots wrongly discarded).
- Y-axis: false negative rate (bad shots that sneak through).
- Colors:
- Red: no auxiliary checks
- Yellow: check only at the end
- Green: check at all expected auxiliary resets
- Markers: different circuit implementations (width/depth).

Figure 3 - False positives correspond to discarding valid computation results, while false negatives are the noisy outcomes that slip through — and the latter typically cause more harm to overall fidelity. Reduced false negatives by ~10% while increasing false positives by only ~1%
Result: Adding auxiliary checks significantly reduces false negatives (improving output fidelity and lowering bias) at the cost of a modest rise in false positives (slightly higher variance)!
Why This Matters for Near-Term Quantum Computing
Checking auxiliary qubits is a practical, low-cost tool for error mitigation. It’s easy to implement, flexible in how aggressively you apply it, and it works alongside other techniques. It won’t catch every error or remove bias completely, but trading a few extra discarded shots for cleaner results can make a real difference in near-term quantum applications.
By: Gilad Kishony, Avi Elazari, Ron Cohen, and Lior Gazit
The fidelity of quantum computers is significantly limited by noise and decoherence. While the implementation of fault-tolerant quantum error correction (QEC) remains a long-term objective, specialized error mitigation protocols are essential for enhancing the performance of the quantum device.
This post summarizes our recent paper available on arXiv here: https://arxiv.org/abs/2605.28342
Methodology: Auxiliary-Based Post-Selection
One effective method involves monitoring auxiliary qubits. In many quantum programs, these qubits act as a temporary workspace. By design, they are supposed to return to their starting state (|0⟩) once their task is complete. If we measure them at the end and find them in a different state, it serves as a clear "red flag" that an error occurred during the calculation.
By applying a post-selection strategy, we can filter our results:
Better Data Quality (Fidelity): We simply throw away any results where the auxiliary qubits "misbehaved." This ensures that the remaining data is much cleaner and more accurate, though it does mean we need to run the experiment more times to make up for the discarded data.
Faster Runtimes: If the hardware supports mid-circuit measurements, we can stop a calculation the moment an error is detected. Instead of wasting time finishing a corrupted run, the machine can immediately reset and start the next attempt, saving overall processing time.

Figure 1 - In this quantum program, we observe that qubits 1 and 2 serve as auxiliaries, which are reused for two functional blocks of the model. The “assign” block is allocating two fresh qubits, while its following inverse is freeing them, knowing they are quantum free and should return to the zero state.
Putting It to the Test with Classiq
We tested this approach using Classiq’s platform, generating two implementations of the same simple arithmetic function (which are accessible via this link):
@qfunc
def main(z: Output[QNum]):
x = QNum()
y = QNum()
x |= 2
y |= 1
z |= (2 * x + y + max(3 * y, 2)) > 4Classiq automatically creates circuits with different width and depth by varying how auxiliaries are allocated. It also lets us pinpoint exactly where auxiliaries are expected to return to zero — both at intermediate points (when qubits are freed and reused) and at the end of the circuit.
Because Classiq automatically tracks qubit reuse and lifetime, it can systematically identify expected reset points — making auxiliary checking nearly effortless compared to manual circuit inspection
Classiq’s platform automatically synthesizes an efficient implementation for this circuit by reusing auxiliary qubits between sequential functional blocks. You can see it in our arithmetic model below:

Figure 2 - The generated quantum program of the arithmetic model, when optimizing for depth, results in a lot of auxiliary reuse. The circuit can be explored interactively at this link
Results
The figure below shows the results under a realistic noise model.
- X-axis: false positive rate (good shots wrongly discarded).
- Y-axis: false negative rate (bad shots that sneak through).
- Colors:
- Red: no auxiliary checks
- Yellow: check only at the end
- Green: check at all expected auxiliary resets
- Markers: different circuit implementations (width/depth).

Figure 3 - False positives correspond to discarding valid computation results, while false negatives are the noisy outcomes that slip through — and the latter typically cause more harm to overall fidelity. Reduced false negatives by ~10% while increasing false positives by only ~1%
Result: Adding auxiliary checks significantly reduces false negatives (improving output fidelity and lowering bias) at the cost of a modest rise in false positives (slightly higher variance)!
Why This Matters for Near-Term Quantum Computing
Checking auxiliary qubits is a practical, low-cost tool for error mitigation. It’s easy to implement, flexible in how aggressively you apply it, and it works alongside other techniques. It won’t catch every error or remove bias completely, but trading a few extra discarded shots for cleaner results can make a real difference in near-term quantum applications.