Fix notation

This commit is contained in:
2026-04-29 20:22:26 +02:00
parent 62b4d4838b
commit 76270695b9

View File

@@ -1,4 +1,3 @@
% TODO: Make all [H] -> [t]
\chapter{Fault-Tolerant Quantum Error Correction}
% Intro
@@ -40,11 +39,10 @@ address both.
% Definition of fault tolerance
% TODO: Different variable name for N?
We model the possible occurrence of errors during any processing
stage as different \emph{error locations} $E_i,~i\in \{1,\ldots,N\}$
in the circuit.
$N \in \mathbb{N}$ is the total number of error locations.
$N \in \mathbb{N}$ is the total number of considered error locations.
The \emph{circuit error vector} $\bm{e} \in \{0,1\}^N$ is a vector
indicating which errors occurred, with
\begin{align*}
@@ -151,8 +149,7 @@ Typically, the number of syndrome extraction rounds is chosen as $d_\text{min}$.
% Intro
We collect the probabilities of error at each location in the
\emph{noise model}, a vector $\bm{p} \in [0,1]^N$, where $N \in
\mathbb{N}$ is the number of possible error locations.
\emph{noise model}, a vector $\bm{p} \in [0,1]^N$.
There are different types of noise models, each allowing for
different error locations in the circuit.
@@ -442,32 +439,29 @@ circuit and each \ac{cn} corresponds to a syndrome measurement.
% Mathematical definition
We describe the circuit code using the \emph{measurement syndrome
matrix} matrix $\bm{\Omega} \in \mathbb{F}_2^{m\times N}$, with
matrix} matrix $\bm{\Omega} \in \mathbb{F}_2^{M\times N}$, with
\begin{align*}
\Omega_{j,i} =
\Omega_{\ell,i} =
\begin{cases}
1, & \text{Error $i$ flips measurement $j$}\\
1, & \text{Error $i$ flips measurement $\ell$}\\
0, & \text{otherwise}
\end{cases}
.%
,%
\end{align*}
This matrix thus defines this new code based on which error mechanism
flips which measurement, rather than the Pauli type and location of
each error \cite[Sec.~1.4.3]{higgott_practical_2024}.
where $M \in \mathbb{N}$ is the number of measurements.
To obtain $\bm{\Omega}$, we must propagate Pauli errors through the
circuit, tracking which measurements they affect
\cite[Sec.~2.4]{derks_designing_2025}.
% Example
% TODO: Fix syndrome dimension notation
We turn to our example of the three-qubit repetition code to
illustrate the construction of the syndrome measurement matrix.
We begin by extending our check matrix in \autoref{eq:rep_code_H}
to represent three rounds of syndrome extraction.
Each round yields an additional set of syndrome bits,
and we combine them by stacking them in a new vector
$\bm{s} \in \mathbb{F}_2^{n_\text{rounds}\cdot(n-k)}$.
$\bm{s} \in \mathbb{F}_2^{R(n-k)}$.
We thus have to replicate the rows of $\bm{\Omega}$, once for each
additional syndrome measurement, to obtain
\begin{align*}
@@ -501,7 +495,7 @@ We thus have
% Expand to phenomenological
We now whish to expand the error model to phenomenological noise, though
We now wish to expand the error model to phenomenological noise, though
only considering $X$ errors in this case.
We introduce new error locations at the appropriate positions,
arriving at the circuit depicted in
@@ -774,10 +768,10 @@ independent detectors \cite[Sec.~2.2]{derks_designing_2025}.
% The detector matrix
% TODO: Fix the notation mess
We describe the relationship between measurements and detectors using
the \emph{detector matrix} $\bm{D} \in \mathbb{F}_2^{d\times m}$
\cite[Def.~2.2]{derks_designing_2025}.
the \emph{detector matrix} $\bm{D} \in \mathbb{F}_2^{D\times M}$
\cite[Def.~2.2]{derks_designing_2025}, with $~D\in \mathbb{N}$
denoting the number of detectors.
Similar to the way a \ac{pcm} associates bits with parity checks, the
detector matrix links measurements and detectors.
Each column corresponds to a measurement, while each rows corresponds
@@ -811,7 +805,7 @@ measurements relate to the detectors (through $\bm{D}$).
For decoding, we are interested in the effect of the errors on the
detectors directly.
We thus construct the \emph{detector error matrix} $\bm{H} \in
\mathbb{F}_2^{d\times N}$ \cite[Def.~2.9]{derks_designing_2025} as
\mathbb{F}_2^{D\times N}$ \cite[Def.~2.9]{derks_designing_2025} as
\begin{align*}
\bm{H} := \bm{D}\bm{\Omega}
.%
@@ -852,9 +846,6 @@ It may, however, change the decoding performance when using a practical decoder.
% How to choose the detectors
% TODO: Fix notation (n used for both number of measurements and
% measurements themselves)
% TODO: Properly define the ranges i and r belong to
What constitutes a good set of detectors is difficult to assess
without performing explicit decoding simulations, since it ultimately
depends on the decoder employed.
@@ -866,26 +857,29 @@ at a later stage.
To the measurement results from each syndrome extraction round we
can add the results from the previous round, as illustrated in
\autoref{fig:detectors_from_measurements_general}.
Concretely, we denote the outcome of the
$i$-th measurement in round $r$ by $m_i^{(r)} \in \mathbb{F}_2$ and define
We thus have $D=n-k$.
Concretely, we denote the outcome of
measurement $\ell \in \{1,\ldots,n-k\}$ in round $r \in \{1,\ldots,R\}$ by
$m_\ell^{(r)} \in \mathbb{F}_2$
and define
\begin{gather*}
\bm{m}^{(r)} :=
\begin{pmatrix}
m_1^{(r)} \\
\vdots \\
m_m^{(r)}
m_{n-k}^{(r)}
\end{pmatrix}
.%
\end{gather*}
Similarly, we denote the the $i$-th detector in round $r$ by
$d_i^{(r)} \in \mathbb{F}_2$ and define
Similarly, we denote the outcome of detector $j\in\{1,\ldots,D\}$ in
round $r$ by $d_j^{(r)} \in \mathbb{F}_2$ and define
\begin{gather}
\label{eq:measurement_combination}
\bm{d}^{(r)} =
\begin{pmatrix}
d_1^{(r)} \\
\vdots \\
d_m^{(r)}
d_D^{(r)}
\end{pmatrix}
:= \bm{m}^{(r)} + \bm{m}^{(r-1)}
,%
@@ -1011,10 +1005,10 @@ It contains all information necessary for the decoding process.
\section{Practical Considerations}
\label{sec:Practical Considerations}
The previous sections give \red{[theoretical overview of noise models
and DEMs]}.
In order to apply them successfully in practice, we must consider a
few further aspects.
The previous sections give an overview over available noise models
and the function of \acp{dem}.
In order to successfully apply these concepts in practice, we must
consider a few further aspects.
%%%%%%%%%%%%%%%%
\subsection{Choice of Noise Model}
@@ -1037,7 +1031,8 @@ 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$.
circuit-level noise model to the same value, the physical error rate
$p_\text{phys}$.
%%%%%%%%%%%%%%%%
\subsection{Per-Round Logical Error Rate}
@@ -1056,18 +1051,18 @@ use the \emph{per-round-\ac{ler}}.
The simplest way of calculating the per-round \ac{ler} is by modeling
each round as an independent experiment.
For each experiment, an error might occur with a certain probability
$p_\text{round}$.
$p_\text{e,round}$.
The overall probability of error is then
\begin{align}
\hspace{-12mm}
p_\text{total} &= 1 - (1 - p_\text{round})^{n_\text{rounds}} \nonumber\\
p_\text{e,total} &= 1 - (1 - p_\text{e,round})^{R} \nonumber\\
\label{eq:per_round_ler}
\implies \hspace{3mm} p_\text{round} &=
1 - (1 - p_\text{total})^{1 / n_\text{rounds}}
\implies \hspace{3mm} p_\text{e,round} &=
1 - (1 - p_\text{e,total})^{1 / R}
.%
\hspace{12mm}
\end{align}
We approximate $p_\text{total}$ using a Monte Carlo simulation and
We approximate $p_\text{e,total}$ using a Monte Carlo simulation and
compute the per-round-\ac{ler} using \autoref{eq:per_round_ler}.
This is a common approach taken in the literature
\cite{gong_toward_2024}\cite{wang_fully_2025}.
@@ -1077,7 +1072,7 @@ Another common approach \cite{chen_exponential_2021}%
exponential decay for the decoder's \emph{logical fidelity}
\cite[Eq.~2]{bausch_learning_2024}
\begin{align*}
F_\text{total} = (F_\text{round})^{n_\text{rounds}}
F_\text{total} = (F_\text{round})^{R}
.%
\end{align*}
The logical fidelity is a measure of the quality of a logical state
@@ -1085,9 +1080,9 @@ The logical fidelity is a measure of the quality of a logical state
As it is related to the error rate through $F = 1 - 2p$, we obtain
\cite[Eq.~4]{bausch_learning_2024}
\begin{align}
(1 - 2p_\text{total}) &= (1 - 2p_\text{round})^{n_\text{rounds}} \nonumber\\
\implies \hspace{15mm} p_\text{total} &= \frac{1}{2}
\left[ 1 - (1 - 2p_\text{round})^{1/n_\text{rounds}} \right]
(1 - 2p_\text{e,total}) &= (1 - 2p_\text{e,round})^{R} \nonumber\\
\implies \hspace{15mm} p_\text{e,round} &= \frac{1}{2}
\left[ 1 - (1 - 2p_\text{e,total})^{1/R} \right]
.%
\end{align}
@@ -1116,18 +1111,17 @@ first introduced.
One capability of stim, and \acp{dem} in general, that we didn't go
into detail about in this chapter is the merging of error mechanisms.
Since \acp{dem} differentiate errors based on their effect on the
measurements and not on their type and location, it is natural to
group errors that have the same effect.
measurements and not on their Pauli type and location
\cite[Sec.~1.4.3]{higgott_practical_2024}, it is natural to group
errors that have the same effect.
This slightly lowers the computational complexity of decoding, as the
number of resulting \acp{vn} is reduced.
While stim is a useful tool for circuit simulation, it doesn't
include many utilities for building syndrome extraction circuitry automatically.
The user has to define most, if not, all of the circuit manually,
The user has to define most, if not all, of the circuit manually,
depending on the code in question.
This is somewhat natural, as stim is meant first and foremost as a
simulator, and circuit generation is contigent upon the \ac{qec}
scheme in question.
\content{Introduce logical error rate}