Page Content

Tutorials

Quantum Error Correcting Codes (QECC)

Quantum Error Correcting Codes (QECC) are intended to safeguard quantum information against different kinds of errors that may impact qubits. The errors present a greater diversity and complexity compared to the bit-flip errors typically seen in classical computing.

A key challenge in quantum error correction lies in the fact that quantum systems are vulnerable to a continuous range of errors. In contrast to classical bits, which are restricted to a state of either 0 or 1 and are generally influenced by discrete bit-flips, qubits have the ability to exist in a superposition of ∣0⟩ and ∣1⟩, with their state being modifiable through any arbitrary quantum operation.

Quantum error-correcting codes encode a number of “logical qubits” into a larger number of “physical qubits,” in such a way that errors on some number of its qubits can be corrected. The first and simplest is Peter Shor’s 9-qubit code which encodes 1 logical qubit into 9 physical qubits, and can correct an error on any one of the 9 physical qubits. Here are the codewords for the two logical basis states:

∣0L​⟩ = 1/ √ 8 (|000⟩ + |111⟩) ⊗ (|000⟩ + |111⟩) ⊗ (|000⟩ + |111⟩)

∣1L​⟩ = 1/ √ 8 (|000⟩ − |111⟩) ⊗ (|000⟩ − |111⟩) ⊗ (|000⟩− |111⟩)

Similar to classical error-correcting codes, QECC introduce redundancy to protect information. However, due to the no-cloning theorem, quantum information cannot be simply copied. Instead, QECC use entanglement across multiple physical qubits to encode a single logical qubit. This entanglement allows for errors to be detected through indirect measurements without collapsing the encoded quantum state.

Types of Errors Handled by QECC

Yet an important observation is that any random error on a single qubit can be represented as a linear combination of the Pauli operators along with the identity operator. The Pauli operators show the essential categories of single-qubit errors:

Bit-flip errors (X errors): Bit-flip errors (X errors) occur when a qubit switches from |0⟩ to |1⟩ or the other way around. Bit flip errors, called to as σx-errors, happen as they change the qubit states to the point where σx|0⟩=|1⟩ and σx|1⟩=|0⟩. This error resembles a traditional bit flip error.

Phase-flip errors (Z errors): Phase-flip errors (Z errors) arise when a qubit undergoes a change in its phase. They are referred to as σz-errors, as they correspond to the qubit states σz|0⟩=|0⟩ and σz|1⟩=−|1⟩. This kind of error lacks a classical counterpart.

Combined bit-and-phase-flip errors (Y errors): Combined bit-and-phase-flip errors (Y errors) can be viewed as a mixture of X and Z errors.

Any general single-qubit error can be expressed as a linear combination of I, X, Y, and Z, which is why quantum error-correcting codes are usually crafted to address these Pauli errors. A QECC that can address bit-flips, phase-flips, and their combination is capable of effectively correcting any arbitrary single-qubit error, thanks to the principles of linearity in quantum mechanics.

Multiple-qubit errors: Errors can impact several qubits at the same time. The framework of QECC typically emphasizes the correction of a specific number of independent single-qubit errors. However, it can be adapted to address correlated errors or multiple errors occurring within a defined range, particularly when dealing with larger codes. For example, certain distance-3 quantum error correcting codes, such as the Steane code, have the capability to correct any single qubit errors and even specific double errors.

Depolarizing noise: Depolarizing noise refers to a prevalent error model in which a qubit experiences X, Y, or Z errors with equal likelihood. QECC is designed to safeguard against such noise.

Biased noise: In certain quantum hardware, specific types of errors may occur more frequently than others. Z errors can occur more frequently than X errors in superconducting qubits. Efforts are currently underway to create codes specifically designed for these biased noise models.

Amplitude and Phase Damping: These represent additional error models that illustrate the ways in which qubits can lose energy or coherence as time progresses. The main emphasis of numerous QECC is on rectifying bit and phase flips, yet the foundational concepts can be modified to tackle these kinds of errors too.

QECC mainly concentrates on addressing the discrete Pauli errors, including bit-flip, phase-flip, and their combinations, as any arbitrary single-qubit error can be broken down into these essential types. Advanced QECC and fault-tolerant techniques tackle intricate error scenarios that involve multiple qubits and errors that arise during quantum operations. The objective is to minimize the effects of these physical errors and attain dependable quantum computation.

The Procedure of Quantum Error Correcting Codes (QECC)

The operation of QECC involves a series of steps:

Encoding: Using a particular quantum code, a logical qubit in a state α∣0⟩+β∣1⟩ is encoded into a state of several physical qubits. The encoding selection affects the capacity of the code to identify and fix mistakes. In the three-qubit bit-flip code, for instance, a logical ∣0⟩ might be encoded as ∣0⟩ to ∣000⟩ and a logical ∣1⟩ to ∣111⟩.

Syndrome Measurement: Following possible physical qubit failures, ancilla qubits are used to retrieve information about the flaws without directly gauging the encoded logical state. We term this information the error syndrome. The symptom indicates which error—that of a bit flip on which qubit—has happened. Parity checks between the qubits in the three-qubit bit-flip code, for example, can expose which qubit a bit flip has occurred on and if one has happened overall.

Error Correction (Recovery): A particular unitary operation is performed on the physical qubits depending on the observed error syndrome to fix the detected error and produce the encoded logical qubit back in its intended state. Usually then, the ancilla qubits are reset.

What is code distance in quantum error correction code?

The code distance (d) of a quantum error-correcting code is the minimum number of qubits that must be changed (i.e., affected by an error) to transform one valid codeword into another.
Mathematical Representation:
An [n, k, d] quantum code encodes k logical qubits into n physical qubits, where:
n = Total number of physical qubits.
k = Number of logical qubits.
d = Minimum Hamming weight of an error that causes a logical error.
Error Correction Ability:
A code can detect up to (d – 1) errors.
A code can correct up to (d – 1)/2 errors.

Example
: a [[5,1,3]] quantum code (such as the 5-qubit code) has a distance of 3, meaning it can correct one error and detect two errors​

What are the stabilizers in quantum error correction code?

Stabilizer codes are a large class of QEC codes that define a protected subspace using stabilizer generators. The stabilizer formalism is used in powerful quantum error correction codes like the Steane Code and Surface Code.
How Stabilizers Work:
A stabilizer group S is an Abelian subgroup of the Pauli group Pn={I,X,Y,Z}⊗n
A quantum state ∣ψ⟩ is in the code space if it remains unchanged under the action of all stabilizer generators Mi:

Mi ∣ψ⟩=∣ψ⟩,              ∀Mi∈S

Errors that anti-commute with some stabilizers change the measurement results, allowing error detection.

Example: Stabilizers in the [5,1,3] Code For the 5-qubit code, the stabilizers are:
M1=XZZXI, M2=IXZZX, M3=XIXZZ, M4=ZXIXZ.
These stabilizers detect and correct errors while preserving quantum information​

Index