Consider an $[n, k, d]$ classical code. This code can correct up to $d-1$ erasures. For example, if we have the code that maps $0\rightarrow 00$ and $1\rightarrow 11$, this code has distance $2$. Indeed, if we observe a symbol $0X$ where $X$ is an erased bit, then the decoder will output $0$.

In the quantum case, this seems like a problem. A typical encoding uses CNOT gates to entangle the logical qubit with redundant qubits. Let's assume a two-qubit quantum code although adding more qubits doesn't really help. We have that

$$\sqrt{\alpha}\vert 0\rangle + \sqrt{1-\alpha}\vert 1\rangle \rightarrow \sqrt{\alpha}\vert 00\rangle + \sqrt{1-\alpha}\vert 11\rangle$$

An erasure error should be thought of as partial tracing the second register. This leaves us with the state

$$\alpha\vert 0\rangle\langle 0\vert + (1-\alpha)\vert 1\rangle\langle 1\vert$$

This state no longer has coherence. If $\alpha = \frac{1}{2}$, we have gone from a $\vert +\rangle$ state to a maximally mixed state after the erasure error.

So how do quantum error correction protocols deal with this?

EDIT based on comment:

I see that the above code doesn't work, nor does any repetition code alone. The general principle is that an error on a physical qubit should be thought of as a physical channel $\mathcal{E}$ with Kraus operators $\{E_i\}$. In the case of qubits, one then writes the Kraus operators in the Pauli basis (see Nielsen and Chuang (10.14))

$$E_i=e_{i 0} I+e_{i 1} X+e_{i 2} Z+e_{i 3} XZ$$

For the partial trace, the Kraus operators are $E_i=\langle i|$ where the bra is on the register we are tracing out. It's not clear to me how the Pauli decomposition works since the dimension of the Kraus operator is $2\times 1$ while the linear combination of Pauli matrices gives us a $2\times 2$ matrix.

My question is still - how are erasures dealt with in QEC?

  • 1
    $\begingroup$ The problem you're having is the distance of your example code: it is only distance 1 with respect to $Z$ errors. Thus, as you've found, it cannot cope with any erasure errors. $\endgroup$
    – DaftWullie
    Commented Dec 19, 2023 at 11:57
  • $\begingroup$ Hey, thanks! That's a good point - I should not have used a repetition code. But even if I didn't, I'm not sure how the error correction formalism deals with erasures. I've updated the question to reflect this. Thanks! $\endgroup$ Commented Dec 19, 2023 at 13:34

1 Answer 1


You should think of error correction as the process of measuring syndromes (i.e. determining the $\pm 1$ values of stabilisers, which is the case I'll exclusively focus on) and then following a lookup table to see what correction to make.

For a non-degenerate distance-3 code, for example, under normal circumstances, you are promised that in your lookup table, for every possible syndrome there is at most one weight one error corresponding to it. So, under the assumption that errors are low probability, that's the one you correct.

In the case of erasure errors, you know where the erasures have happened, so you replace those qubits with some other state, such as the maximally mixed state. Then you measure the syndrome. Now when you look in your lookup table, the same promise tells you that for a given syndrome there is at most one error that only acts on the erased qubits. That is the one that you choose to fix.

  • $\begingroup$ Thank you! Just to clarify one point: I should model an erasure error as a depolarizing channel (with probability $p = \frac{1}{4}$ for the case of no error, $X$ error, $Y$ error and $Z$ error) acting on that qubit and not a partial trace channel? This allows me to decompose the Kraus operators of that channel in the Pauli basis which I didn't know how to do for the partial trace channel. Is that right? $\endgroup$ Commented Dec 19, 2023 at 17:12
  • $\begingroup$ That's certainly one option. Another option is to partial trace, and then replace those traced out qubits with qubits prepared in any state you want (maybe the all 0 state is easier to work with for the sake of calculations?). $\endgroup$
    – DaftWullie
    Commented Dec 20, 2023 at 7:29
  • $\begingroup$ Thanks, and sorry if this is a dumb question or I am missing something trivial but with the partial trace (or partial trace and replace with the 0 state) operation, it seems like the Kraus operators dimensions aren't $2\times 2$. How does one write that in the Pauli basis? My understanding is that one must first express the Kraus operators of the error-causing channel in the Pauli basis, then do the syndrome measurement which detects if there are Pauli errors. $\endgroup$ Commented Dec 20, 2023 at 12:09
  • $\begingroup$ The syndrome measurement projects everything into a Pauli basis. That means that the maths is easier if you know the Pauli decomposition already, but you don't need to. Instead, you do the syndrome measurement and it automatically projects you into the appropriate (tensor product of) Pauli basis $\endgroup$
    – DaftWullie
    Commented Dec 20, 2023 at 14:49
  • 1
    $\begingroup$ @user1936752 No that's not correct. If you followed that protocol assuming you don't know where the errors happen, it would be true. But the protocol really does deal with $2t$ erasure errors. Look at the smallest distance 2 quantum error correcting code, $[[4,1,2]]$. It has 3 stabilisers, so there are $2^3=8$ different syndromes. If you work it through, the errors $I$, $X$, $Y$ and $Z$ on a single (specified) qubit all have distinct syndromes, so all can be corrected, meaning you can recover from a single loss. $\endgroup$
    – DaftWullie
    Commented Apr 3 at 7:28

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.