0
$\begingroup$

The following code is a simple repetition code (for two qubits and one ancilla) for detecting Z errors:

eps = 0.1

circuit = stim.Circuit()
circuit.append("RX", [0,1,2])

circuit.append("DEPOLARIZE2", [0,2], eps)
circuit.append("CNOT", [2,0])
circuit.append("CNOT", [2,1])

circuit.append("MRX", [2])
circuit.append("DETECTOR", [stim.target_rec(-1)])


circuit.append("CNOT", [2,0])
circuit.append("CNOT", [2,1])

circuit.append("MRX", [2])
circuit.append("DETECTOR", [stim.target_rec(-2),stim.target_rec(-1)])

enter image description here

Errors on detections are different from the ones I expect to get from a transferring depolarzing2 to z2_error model [e---->(12/15 * e)]. In other words, I would expect to get error 4*e/15 for each detection D0, D1, and {D0D1}. I am wondering what I am missing.

$\endgroup$
4
  • $\begingroup$ Does this answer your question? quantumcomputing.stackexchange.com/questions/38535/… $\endgroup$ Commented Jun 12 at 22:28
  • $\begingroup$ Yes, that is exactly what I was asking for. I now understand general prospects, but in that example (when removing X error, only having depolarizing ones) I expect D0 D1 to be the same as depolarizing channel is symmetric. but you put different errors for them: error(0.08) D0 error(0.16) D1. So now I am confused about that. $\endgroup$
    – reza
    Commented Jun 13 at 16:01
  • $\begingroup$ probably just a typo $\endgroup$ Commented Jun 13 at 16:58
  • $\begingroup$ Ah, ok. Thanks again for the clarification. $\endgroup$
    – reza
    Commented Jun 13 at 21:33

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.