ParityHandle#
- class ParityHandle(instruction)[source]#
A lightweight handle representing the result of a parity computation in quantum circuits.
ParityHandle objects are returned by
qrisp.QuantumCircuit.parity()and serve as keys in the detector and observable maps produced byto_stim(). They enable tracking of parity check results throughout circuit manipulation pipelines.- Attributes:
- instructionInstruction
The
Instructionobject containing theParityOperationthat sits in the circuit’s data list (qc.data).
Examples
ParityHandles are typically created via
qrisp.QuantumCircuit.parity():>>> from qrisp import QuantumCircuit >>> qc = QuantumCircuit(2, 2) >>> qc.h(0) >>> qc.cx(0, 1) >>> qc.measure([0, 1], [0, 1]) >>> handle = qc.parity([qc.clbits[0], qc.clbits[1]], expectation=0) >>> handle.clbits [Clbit(cb_2), Clbit(cb_3)] >>> handle.expectation 0
Use handles as keys in Stim conversion maps:
>>> stim_circuit, meas_map, det_map = qc.to_stim( ... return_measurement_map=True, ... return_detector_map=True ... ) >>> det_map[handle] # Get the Stim detector index 0