QEC Structure
Abstract¶
A high level overview of underlying structure of quantum error correcting codes.
A quantum error correcting code works by first encoding a -dimensional logical state into a subspace of some -dimensional Hilbert space. It is then assumed that an error from some pre-determined set of errors occurs on this state. A measurement can then be designed which is able to reveal which of these errors has occurred, without any information about the logical state being discovered.
To illustrate this idea, an error correcting code able to correct a single error is first designed,before being extended to multiple errors.
Single Error Code¶
An error correcting code is defined by first establishing a set of code words. These are typically a set of orthogonal pure states , such that . The code space, , is then the subspace of the full Hilbert space, , spanned by the set of code words,
The logical state is then some state encoded within this code space, . We define to be the projector onto the code space,
If some unitary error, , acts on the logical state, the state will be mapped to the space spanned by acting on the code words,
where we have defined this subspace to be , and the projector onto the space is
The goal of the simplest imaginable error correcting code is then to (a) determine which of the channels or has been applied to the logical state without (b) disturbing the logical state and hence destroying the encoded information.
Criteria (a) can be considered as an example of quantum channel discrimination, where the logical state is the reference state, with the added constraint of criteria (b).
Error Correction as Quantum Channel Discrimination
In the task of quantum channel discrimination one considers two parties, Alice and a referee. The referee has some reference state, , and a predetermined set of quantum channels . Both the reference state and the set of quantum channels are known to Alice.
The referee chooses an index and then applies the channel to the reference state. The referee then sends the state to Alice. Alice makes a measurement on the state with the intention of identify the channel the referee applied. The ultimate output of the measurement will therefore be some index , such that if Alice has succeed in the task and if she has failed.

A schematic of a quantum channel discrimination task. R and A are the referee and Alice respectively. The referee applies a channel from a predetermined set to the reference state and then sends it to Alice. Alice performs a measurement on the state and aims to identify which channel the referee applied.
With some added constraints, error correction can be reframed as a quantum channel discrimination task. The reference state is no-longer a predetermined state but rather an arbitrary state within some predetermined subspace. The referee is then the noise, with it being assumed that the noise is restricted to some likely set of possible channels. Finally, Alice is the decoder of the error correction protocol aiming to identify which error has occurred.
The major addition to quantum error correction is the need for the logical information encoded into the subspace to not be disturbed by the measurement made by Alice (the decoder). Practically, this means a restriction on the measurements Alice is allowed to perform.
See the Quantum State Discrimination page for more details on this task
It is a well known result in quantum information theory that for two quantum states to be deterministically distinguishable they must be orthogonal. Here, we are not concerned with specific states, but rather arbitary states encoded into subspaces. However, the result instead just applies to the subspaces. Hence, it is only possible to deterministically determine if or has been applied to the logical state if
meaning that for any arbitrary state , it is the case that .
If this first condition is met it is always the case that one can find a projector , such that
where is the projector onto the reminder of the Hilbert space not covered by and . This will defined a subspace orthogonal to both and and is simply given by . From here, one can then defined an observable
that can be seen to fulfil both criteria (a) and (b). It fulfils (a) as if has been applied (no error) then
meaning one gets the outcome with certainty. If instead has been applied then
meaning one gets the outcome with certainty. The observable therefore allows one to determine which error has occurred with certainty. It fulfils (b) as the
meaning the states remain unchanged after the measurements.
The error correcting code can be summarised as follows: if the errors that can occur are and the code space is , then measure the observable and if the outcome is do nothing, if it is apply .
Multiple Errors¶
The logic above can be easily expanded to multiple errors. Assume the set of possible errors is , where . Each error must then map the code space to an orthogonal subspace such that
Correctable Errors¶
A set of unitary errors , such that all elements of the set
are pairwise orthogonal, can therefore be corrected by measuring the non-degenerate operator
Given an initial logical state , if one gets the measurement outcome they known they have the state . Hence, by applying the unitary they return the logical state without disturbing the encoded information.
Uncorrectable Errors¶
Now, imagine there exists another unitary error , such that
This means that both the errors and map the code space to the same subspace. If one now measures and gets the outcome , they will not be able to tell if the error or has occurred. They will be able to detect the presence of an error, but not necessarily correct it.
Instead, imagine there exists another error that maps the logical space to a subspace that is partly supported in and partly support in . A measurement of will project the state into either the subspace or the . This will alter the logical information in a way that is not recoverable based only the output eigenvalue from measuring . Hence, such errors are not correctable, unless there exists some unitary such that and . If so, when the measurement of gives the outcome , can be applied.
Example
Consider the two qubit repetition code, which has code space
An arbitrary single qubit is therefore encoded as
It can be seen that a single qubit error on either physical qubit would take the logical state to the same state
Therefore, whilst different errors, they can both be corrected via the same unitary. Namely, both can be correct by applying .
Conclusion¶
To design an error correcting code for a set of errors, one must be able to find a code space which is mapped to orthogonal subspaces under the action of each error. By measuring the non-degenerate operator with eigenspaces of these orthogonal subspaces, these errors can be corrected.