3 Commits

View File

@@ -1,18 +1,42 @@
% TODO: Make all [H] -> [t]
\chapter{Fault Tolerant QEC}
\chapter{Fault-Tolerant Quantum Error Correction}
% Intro
An important challenge of \ac{qec} that was recognized early on is
the fact that the error correction machinery itself may introduce new
errors \cite[Sec.~III]{shor_scheme_1995}.
Specifically for stabilizer codes, errors may happen during the
syndrome extraction process, since it is implemented in quantum hardware itself.
We call the errors the \ac{qec} procedure is supposed to correct
\emph{input errors} and the errors introduced by the procedure itself
\emph{internal errors}.
In order to be \emph{fault-tolerant}, the procedure must be able to
address both types of errors.
In the previous chapter, we introduced the fundamental concepts of
classical and quantum error correction.
In this chapter, we shift our focus to some practical aspects of the
implementation of \ac{qec} systems.
% Fault tolerance as a general notion
The reason we turned to \ac{qec} in the first place is to allow us to
perform quantum computing despite the errors inherent to operations
using qubits.
While the use of error correcting codes may facilitate this, it also
introduces two new challenges \cite[Sec.~4]{gottesman_introduction_2009}:
\begin{itemize}
\item We must be able to perform operations on the encoded state
in such a way that we do not lose the protection against errors.
\item \ac{qec} systems are themselves partially implemented in
quantum hardware. In addition to the errors we have
originally introduced them for, these systems must
be able to acount for the fact they are implemented on noisy
hardware themselves.
\end{itemize}
In the literature, both of these points are viewed under the umbrella
of \emph{fault tolerance}.
We focus only on the second aspect in this work.
It was recognized early on as a challenge of \ac{qec} that the correction
machinery itself may introduce new faults \cite[Sec.~III]{shor_scheme_1995}.
Specifically for stabilizer codes, this can happen during the
syndrome extraction process.
We distinguish between the errors the QEC procedure is supposed to
correct, which we call \emph{input errors}, and
those introduced by the procedure itself, which we call \emph{internal errors}.
In order to be fault-tolerant, the procedure must be able to
address both.
% Definition of fault tolerance
@@ -33,7 +57,7 @@ indicating which errors occurred, with
\end{align*}
\autoref{fig:fault_tolerance_overview} illustrates the flow of errors.
Specifically for \ac{css} codes, a \ac{qec} procedure is deemed
\emph{fault-tolerant}, if \cite[Def.~4.2]{derks_designing_2025}
fault-tolerant, if \cite[Def.~4.2]{derks_designing_2025}
\begin{gather*}
\lVert \bm{e}_{\text{output},X} \rVert \le t \hspace{5mm}
\forall\, \bm{e}_\text{input}, \bm{e}_\text{internal} \in \{0,1\}^N:
@@ -51,9 +75,9 @@ errors the code is able to correct.
The vectors $\bm{e}_{\text{output},X}$ and $\bm{e}_{\text{output},Z}$
denote only $X$ and $Z$ errors respectively.
In order to deal with errors during the syndrome extraction that flip
single syndrome bits, multiple rounds of syndrome measurements must
be performed.
% TODO: Properly introduce d_min for QEC, specifically for CSS codes
In order to deal with internal errors that flip syndrome bits,
multiple rounds of syndrome measurements must be performed.
Typically, the number of syndrome extraction rounds is chosen as $d_\text{min}$.
% % This is the definition of a fault-tolerant QEC gadget
@@ -136,9 +160,22 @@ different error locations in the circuit.
We will illustrate the most widely used types of error models on the
example of the three-qubit repetition code for $X$ errors.
This code has stabilizers $Z_1Z_2$ and $Z_2Z_3$.
\autoref{fig:pure_syndrome_extraction} shows the respective
check matrix and syndrome extraction circuit.
This is a code with check matrix
\begin{align*}
\bm{H} =
\left[
\begin{array}{ccc|ccc}
0 & 0 & 0 & 0 & 0 & 0 \\
0 & 0 & 0 & 0 & 0 & 0 \\
0 & 0 & 0 & 1 & 1 & 0 \\
0 & 0 & 0 & 0 & 1 & 1
\end{array}
\right]
.
\end{align*}
We can see that it has stabilizers $Z_1Z_2$ and $Z_2Z_3$.
\autoref{fig:pure_syndrome_extraction} shows the corresponding
syndrome extraction circuit.
We refer to the qubits carrying the logical state
$\ket{\psi}_\text{L}$ as \emph{data qubits}.
Note that this is a concrete implementation using CNOT gates, as
@@ -147,16 +184,21 @@ opposed to the system-level view introduced in
We visualize the different types of noise models in
\autoref{fig:noise_model_types}.
% Bit-flip noise
%%%%%%%%%%%%%%%%
\subsection{Bit-Flip Noise}
\label{subsec:Bit-Flip Noise}
The simplest type of noise model is \emph{bit-flip} noise.
This corresponds to the classical \ac{bsc}, i.e., only $X$ errors on the
data qubits are possible \cite[Appendix~A]{gidney_new_2023}.
Note that we cannot use bit-flip noise to develop fault-tolerant
systems, as it doesnt't account for errors during the syndrome extraction.
This type of noise model is shown in \autoref{subfig:bit_flip}.
% Depolarizing channel
Note that we cannot use bit-flip noise to develop fault-tolerant
systems, as it doesnt't account for errors during the syndrome extraction.
%%%%%%%%%%%%%%%%
\subsection{Depolarizing Channel}
\label{subsec:Depolarizing Channel}
Extending bit-flip noise to consider $X,Z$ or $Y$ instead of just $X$
errors, we obtain the \emph{depolarizing channel}
@@ -165,10 +207,16 @@ errors, we obtain the \emph{depolarizing channel}
It is well-suited for modeling memory experiments, where data qubits
are stored idly for some period of time and errors accumulate due to
decoherence.
While the depolarizing channel is still not suited for the design and
simulation of fault-tolerant systems, it is already complex enough to
be used to gauge the suitability of a code for the \ac{qec} problem.
Bit-flip noise and the depolarizing channel are sometimes referred to
as \emph{code capacity noise models}.
% Phenomenological noise
%%%%%%%%%%%%%%%%
\subsection{Phenomenological Noise}
\label{subsec:Phenomenological Noise}
The \emph{phenomenological noise model} is the first type of noise model we
examine that accounts for faults during the syndrome extraction.
@@ -176,15 +224,22 @@ Here, we consider multiple rounds of syndrome measurements with a
depolarizing channel before each round.
Additionally, we allow for measurement errors by having $X$ error
locations right before each measurement \cite[Appendix~A]{gidney_new_2023}.
Note that it is enough to only consider $X$ errors at this point,
Note that it is enough to only consider $X$ errors at these points,
since that is the only type of error directly affecting the
measurement outcomes.
While not fully capturing all possible error mechanisms,
phenomenological noise is already expressive enough to be used for
the design of fault-tolerant circuitry \cite[Sec.~4.2]{derks_designing_2025}.
This model is depicted in \autoref{subfig:phenomenological}.
% Circuit-level noise
While not fully capturing all possible error mechanisms,
phenomenological noise is already a significant step beyond the code
capacity noise models.
Additionally, there are applications where the
consideration of phenomenological noise is enough.
It can, for example, be used for guiding the design of fault-tolerant
circuitry [DTTBE25, Sec. 4.2].
%%%%%%%%%%%%%%%%
\subsection{Circuit-Level Noise}
\label{subsec:Circuit-Level Noise}
The most general type of noise model is \emph{circuit-level noise}.
Here we not only consider noise inbetween syndrome extraction rounds
@@ -193,58 +248,27 @@ Specifically, we allow arbitrary $n$-qubit Pauli errors after each
$n$-qubit gate \cite[Def.~2.5]{derks_designing_2025}.
An $n$-qubit Pauli error is simply a series of correlated Pauli
errors on each related individual qubit.
This type of noise model is shown in \autoref{subfig:circuit_level}.
While phenomenological noise is useful for some design aspects of
fault tolerant circuitry, for simulations, circuit-level noise should
always be used \cite[Sec.~4.2]{derks_designing_2025}.
This type of noise model is shown in \autoref{subfig:circuit_level}.
% Practical simulation aspects
While these types of noise models give us some constraints on the
types and locations of errors, the question of how exactly to choose
their probabilities remains.
When performing simulations, we typically sweep a range of values of
the \emph{physical error rate} $p$, and there are different ways of
obtaining the noise model $\bm{p}$ from this physical error rate.
For the depolarizing channel in particular, we usually choose the
same error rate $p/3$ for $X$, $Z$, and $Y$ errors.
For circuit-level noise, various options exist, such as the \emph{SI1000}
(superconducting inspired) or the \emph{EM3} (entangling
measurements) models \cite[Sec.~2.1]{gidney_fault-tolerant_2021}.
These differ in the way they compute individual error probabilities
from the physical error rate.
In this work we only consider \emph{standard circuit-based depolarizing
noise}, as this is the standard approach in the literature.
We thus set the error probabilities of all error locations in the
circuit-level noise model to the same value, the physical error rate $p$.
Note that this introduces new challenges during the decoding process,
as the decoding complexity is increased considerably due to the many
error locations.
\begin{figure}[t]
\centering
\begin{minipage}{0.5\textwidth}
\begin{align*}
\bm{H} =
\left[
\begin{array}{ccc|ccc}
0 & 0 & 0 & 0 & 0 & 0 \\
0 & 0 & 0 & 0 & 0 & 0 \\
0 & 0 & 0 & 1 & 1 & 0 \\
0 & 0 & 0 & 0 & 1 & 1
\end{array}
\right]
\end{align*}
\end{minipage}%
\begin{minipage}{0.5\textwidth}
% tex-fmt: off
\begin{quantikz}%[row sep=4mm, column sep=4mm]
\lstick[3]{$\ket{\psi}_\text{L}$} & \ctrl{3} & & & & & \\
& & \ctrl{2} & \ctrl{3} & & & \\
& & & & \ctrl{2} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & \targ{} & \targ{} & & & \meter{} & \setwiretype{c} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & \targ{} & \targ{} & \meter{} & \setwiretype{c}
\end{quantikz}
% tex-fmt: on
\end{minipage}%
% tex-fmt: off
\begin{quantikz}%[row sep=4mm, column sep=4mm]
\lstick[3]{$\ket{\psi}_\text{L}$} & \ctrl{3} & & & & & \\
& & \ctrl{2} & \ctrl{3} & & & \\
& & & & \ctrl{2} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & \targ{} & \targ{} & & & \meter{} & \setwiretype{c} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & \targ{} & \targ{} & \meter{} & \setwiretype{c}
\end{quantikz}
% tex-fmt: on
\caption{
Syndrome extraction circuit for the three-qubit repetition
@@ -374,19 +398,35 @@ circuit-level noise model to the same value, the physical error rate $p$.
\section{Detector Error Models}
\label{sec:Detector Error Models}
\emph{Detector error models} constitue a standardized framework for
passing information about the circuit used for \ac{qec} to a decoder.
They are also useful in the design of fault-tolerant \ldots such as
fault-tolerant quantum computing schemes \cite[Sec.~1]{derks_designing_2025}.
% While alternate ways of considering fault tolerance exist, detector
% error models
% benefit from the fact that
\content{Benefits of this approach \cite[Sec.~4.2]{derks_designing_2025}}
\emph{Detector error models} (\acsp{dem}) constitue a standardized framework for
passing information about a circuit used for \ac{qec} to a decoder.
They are also useful as a theoretical tool to aid in the design of
fault-tolerant \ac{qec} schemes.
E.g., they can be used to easily determine whether a measurement
schedule is fault-tolerant \cite[Example~12]{derks_designing_2025}.
Other approaches of implementing fault tolerance exist, such as
flag error correction, which uses additional ancilla qubits to detect
potentially damaging high-weight errors \cite[Sec.~1]{chamberland_flag_2018}.
However, \acp{dem} offer some unique advantages
\cite[Sec.~4.2]{derks_designing_2025}:
\begin{itemize}
\item They distinguish between errors based on their effect on
the measurements, not based on their location in the circuit.
This allows for merging equivalent errors, which decreases
decoding complexity.
\item Errors on the data qubits and on the measurements are
treated in a unified manner. This leads to a more powerful
description of the overall circuit.
\end{itemize}
In this work, we only consider the process of decoding under the
\ac{dem} framework.
% Core idea
The goal we strive to achieve is to consider the possible error
locations in the syndrome extraction circuitry during decoding.
To achieve fault tolerance, the goal we strive towards is to
consider the internal errors in addition to the input errors during
the decoding process.
The core idea behind detector error models is to do this by defining
a new \emph{circuit code} that describes the circuit.
Each \ac{vn} of this new code corresponds to an error location in the
@@ -665,7 +705,7 @@ may wish to combine them in some way.
We call such combinations \emph{detectors}.
Formally, a detector is a parity constraint on a set of measurement
outcomes \cite[Def.~2.1]{derks_designing_2025}.
Chaning the perspective in this way does not change the theoretical
Changing the perspective in this way does not alter the theoretical
error correcting capabilities of the circuit, but it may change the
decoding performance when using a practical decoder.
\red{[Possibly a few more words on this (maybe a mathematical
@@ -829,6 +869,9 @@ identical to obtain this structure.
\subsection{Detector Error Models}
\label{subsec:Detector Error Models}
A \emph{detector error model} is the combination of the detector
error matric $\bm{H}$ and the noise model $\bm{p}$.
\content{Combination of detector error matrix and noise model}
\content{Contains all information necessary for decoding
\cite[Intro.]{derks_designing_2025}}
@@ -838,7 +881,25 @@ identical to obtain this structure.
\section{Practical Considerations}
\label{sec:Practical Considerations}
% Intro
% Practical simulation aspects
While these types of noise models give us some constraints on the
types and locations of errors, the question of how exactly to choose
their probabilities remains.
When performing simulations, we typically sweep a range of values of
the \emph{physical error rate} $p$, and there are different ways of
obtaining the noise model $\bm{p}$ from this physical error rate.
For the depolarizing channel in particular, we usually choose the
same error rate $p/3$ for $X$, $Z$, and $Y$ errors.
For circuit-level noise, various options exist, such as the \emph{SI1000}
(superconducting inspired) or the \emph{EM3} (entangling
measurements) models \cite[Sec.~2.1]{gidney_fault-tolerant_2021}.
These differ in the way they compute individual error probabilities
from the physical error rate.
In this work we only consider \emph{standard circuit-based depolarizing
noise}, as this is the standard approach in the literature.
We thus set the error probabilities of all error locations in the
circuit-level noise model to the same value, the physical error rate $p$.
\content{Intro}