16 Commits

17 changed files with 2277 additions and 61 deletions

5
.gitmodules vendored
View File

@@ -1,3 +1,6 @@
[submodule "lib/cel-slides-template-2025"] [submodule "lib/cel-slides-template-2025"]
path = lib/cel-slides-template-2025 path = lib/cel-slides-template-2025
url = git@gitlab.kit.edu:kit/cel/misc/cel-slides-template-2025.git url = ssh://git@100.123.176.93:2222/an.tsouchlos/cel-slides-template-2025.git
[submodule "lib/cel-thesis"]
path = lib/cel-thesis
url = ssh://git@100.123.176.93:2222/an.tsouchlos/cel-thesis.git

9
.tmux_session.sh Executable file
View File

@@ -0,0 +1,9 @@
#!/bin/bash
SESSION=$1
tmux send-keys -t "$SESSION:1" "cd ~/workspace/private/ma-thesis/" Enter
tmux send-keys -t "$SESSION:1" "./.setup_local_env.sh" Enter
# tmux send-keys -t "$SESSION:1" "export TEXINPUTS=./lib/cel-slides-template-2025:\$TEXINPUTS" C-m
tmux send-keys -t "$SESSION:1" "trap './.clean_local_env.sh' EXIT" Enter
tmux send-keys -t "$SESSION:1" "nvim" Enter
tmux send-keys -t "$SESSION:1" "\\ll" Enter

View File

@@ -4,7 +4,8 @@ DOCUMENTS := $(patsubst src/%/main.tex,build/%.pdf,$(wildcard src/*/main.tex))
all: $(DOCUMENTS) all: $(DOCUMENTS)
build/%.pdf: src/%/main.tex build/prepared build/%.pdf: src/%/main.tex build/prepared
latexmk $< TEXINPUTS=./lib/cel-slides-template-2025:$(dir $<):$$TEXINPUTS \
latexmk -outdir=build/$* $<
mv build/main.pdf $@ mv build/main.pdf $@
build/prepared: build/prepared:

1
lib/cel-thesis Submodule

Submodule lib/cel-thesis added at f783ba56a1

View File

@@ -64,8 +64,7 @@
\Ac{qec} is a field of research combining quantum mechanics and \Ac{qec} is a field of research combining quantum mechanics and
``classical'' communications engineering. ``classical'' communications engineering.
This chapter provides the relevant theoretical background on both of This chapter provides the relevant theoretical background on both of
these topics and subsequently, building on top of this, introduces the these topics and subsequently introduces the the fundamentals of \ac{qec}.
the fundamentals of \ac{qec}.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% TODO: Is Quantum Information Theory the correct title here? Would someth % TODO: Is Quantum Information Theory the correct title here? Would someth

View File

@@ -156,6 +156,11 @@
long=spatially-coupled low-density parity-check long=spatially-coupled low-density parity-check
} }
\DeclareAcronym{ler}{
short=LER,
long=logical error rate,
}
% %
% %
% Document body % Document body
@@ -401,7 +406,7 @@
\citereferencemanual{NC10} \citereferencemanual{NC10}
} }
\visible<3>{ \visible<3>{
\item Superposition $\rightarrow$ multiple solutions to the \item Superposition $\rightarrow$ Multiple solutions to the
decoding problem decoding problem
(\schlagwort{quantum degeneracy}) (\schlagwort{quantum degeneracy})
\citereferencemanual{RWB$^+$20}} \citereferencemanual{RWB$^+$20}}
@@ -520,7 +525,7 @@
\begin{subfigure}{0.15\textwidth} \begin{subfigure}{0.15\textwidth}
\centering \centering
\begin{align*} \begin{align*}
\bm{H} \bm{y}^\text{T} = \bm{s} \bm{H} \bm{y}^\text{T} = \bm{H} \bm{e}^\text{T} = \bm{s}
\end{align*} \end{align*}
\vspace*{-5mm} \vspace*{-5mm}
\end{subfigure} \end{subfigure}
@@ -1568,6 +1573,7 @@
\citereferencemanual{HP23} \citereferencemanual{HP23}
\citereferencemanual{GCR24} \citereferencemanual{GCR24}
\end{itemize} \end{itemize}
\visible<2>{
\item Degraded \ac{bp} performance addressed with \item Degraded \ac{bp} performance addressed with
modification or extension modification or extension
\begin{itemize} \begin{itemize}
@@ -1580,6 +1586,7 @@
\item Ensemble decoding \item Ensemble decoding
\citereferencemanual{KSW$^+$25} \citereferencemanual{KSW$^+$25}
\end{itemize} \end{itemize}
}
\end{itemize} \end{itemize}
\vspace*{15mm} \vspace*{15mm}
@@ -1737,7 +1744,7 @@
\begin{frame} \begin{frame}
\frametitle{Future Work} \frametitle{Future Work}
\vspace*{-12mm} \vspace*{-15mm}
\begin{itemize} \begin{itemize}
\item Completed work \item Completed work
@@ -1745,6 +1752,7 @@
\item Review literature on fault-tolerant \ac{qec} \item Review literature on fault-tolerant \ac{qec}
using \acp{dem} using \acp{dem}
\item Identify research gap \item Identify research gap
\item Familiarize with software toolboxes
\end{itemize} \end{itemize}
\vspace*{7mm} \vspace*{7mm}
\item Research gap \item Research gap
@@ -1787,32 +1795,166 @@
% TODO: Organize sections properly % TODO: Organize sections properly
%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%
\section{Simulation Methodology} \section{Remarks on Evaluation}
\label{sec:Simulation Methodology} \label{sec:Remarks on Evaluation}
%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%
\subsection{The Code and Other Parameters} \subsection{Figures of Merit}
\label{subsec:The Code and Other Parameters} \label{subsec:Figures of Merit}
\begin{frame} \begin{frame}
\frametitle{Noise Models and Figures of Merit} \frametitle{Performance Evaluation}
% - Gong et al. don't actually analyze the latency ->
% Benchmarking against other methods would be interesting
% \item For circuit-level noise, use same
% \schlagwort{physical error rate} for all error
% locations \citereferencemanual{FSG09}
\vspace*{-15mm}
\begin{minipage}{0.35\textwidth}
\only<1>{
\begin{itemize} \begin{itemize}
\item \red{For circuit-level noise, often, all error probabilities \item Independent variables
are set to the same value for simulations \begin{itemize}
\citereferencemanual{FSG09}} \item Physical error rate
\item \red{There are other approaches (e.g., SDMB noise, SI noise) \item CNOT infidelity
\citereferencemanual{DTB$^+$25}} \item Total qubit count
\item \ldots
\end{itemize}
\end{itemize}
}
\only<2->{
\begin{itemize}
\item Independent variables
\begin{itemize}
\item \textbf{Physical error rate}
\item CNOT infidelity
\item \textbf{Total qubit count}
\item \ldots
\end{itemize}
\end{itemize}
}
\end{minipage}%
\begin{minipage}{0.65\textwidth}
\begin{itemize}
\only<1>{
\item Noise models
\begin{itemize}
\item Standard circuit-based depolarizing noise
\citereferencemanual{FSG09}
\item Superconductor inspired (SI1000)
\citereferencemanual{GNF$^+$21}
\item Entangling Measurements (EM3)
\citereferencemanual{GNF$^+$21}
\item \ldots
\end{itemize}
}
\only<2->{
\item Noise models
\begin{itemize}
\item \textbf{Standard circuit-based depolarizing noise}
\citereferencemanual{FSG09}
\item Superconductor inspired (SI1000)
\citereferencemanual{GNF$^+$21}
\item Entangling Measurements (EM3)
\citereferencemanual{GNF$^+$21}
\item \ldots
\end{itemize}
}
\end{itemize}
\end{minipage}
\vspace{5mm}
\visible<3->{
\begin{itemize}
\item Degeneracy, information stored in correlations
$\rightarrow$ Consider \schlagwort{\acl{ler}} (LER)
\end{itemize}
}
\visible<4->{
\begin{itemize}
\item Types of benchmarking plots
\end{itemize} \end{itemize}
\vspace*{10mm} \vspace*{5mm}
\begin{itemize} \begin{figure}[H]
\item \red{Footprint plots} \centering
\item \red{Other figure of merit (Look into ECCentric?)} \begin{subfigure}{0.35\textwidth}
\end{itemize} \centering
\begin{tikzpicture}
\begin{axis}[
domain=-5:5,
width=7cm,
height=5.5cm,
xticklabels=\empty,
yticklabels=\empty,
xlabel={Physical error rate},
xlabel style={yshift=5mm},
ylabel={LER},
ylabel style={yshift=-5mm},
grid,
]
\vspace*{15mm} \addplot+[
mark=none,
kit-red,
line width=2pt,
]
table[row sep=crcr] {
x y \\
1.134800559068837 0.5575221183357257 \\
2.0632737437615223 0.9764009116710485 \\
2.861072612292603 1.7787608707489788 \\
3.7551580964997053 2.8407080379684153 \\
4.264098875196703 3.513274267363004 \\
4.573589936760932 3.9911505302955272 \\
4.903713970055305 4.268436552233389 \\
};
\end{axis}
\end{tikzpicture}
\end{subfigure}%
\begin{subfigure}{0.35\textwidth}
\centering
\begin{tikzpicture}
\begin{axis}[
domain=-5:5,
width=7cm,
height=5.5cm,
xticklabels=\empty,
yticklabels=\empty,
xlabel={Total qubit count},
xlabel style={yshift=5mm},
ylabel={LER},
ylabel style={yshift=-5mm},
grid,
]
\addplot+[
mark=none,
kit-blue,
line width=2pt,
]
table[row sep=crcr] {
x y \\
1.147643096789246 3.8430493581808607 \\
1.7245658892318043 2.762331811591747 \\
2.3573205843145306 2.3587443650766753 \\
2.9156332708646624 1.560537992857378 \\
3.6352360073136527 1.0403588210329737 \\
4.392060012189421 0.7130042787942606 \\
};
\end{axis}
\end{tikzpicture}
\end{subfigure}
\end{figure}
}
\vspace*{4mm}
\addreferencesmanual \addreferencesmanual
{FSG09}{ {FSG09}{
@@ -1820,30 +1962,44 @@
``High-threshold universal quantum computation on the surface ``High-threshold universal quantum computation on the surface
code,'' \emph{Physical Review}, 2009. code,'' \emph{Physical Review}, 2009.
} }
{DTB$^+$25}{ {GNF$^+$21}{
P.- J. H. S. Derks et al., ``Designing fault-tolerant C. Gidney et al., ``A Fault-Tolerant Honeycomb Memory'',
circuits using detector error models,'' \emph{Quantum}, 2025. \emph{Quantum}, 2021.
} }
\stopreferencesmanual \stopreferencesmanual
\end{frame} \end{frame}
%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%
\subsection{Proposed Methodology} \subsection{Conclusion and Outlook}
\label{subsec:Proposed Methodology} \label{subsec:Conclusion and Outlook}
\begin{frame} \begin{frame}
\frametitle{Conclusion} \frametitle{Conclusion and Outlook}
\vspace*{-15mm} \vspace*{-10mm}
\begin{minipage}[c]{0.65\textwidth} \begin{minipage}[c]{0.65\textwidth}
\begin{itemize} \begin{itemize}
\item \red{Noise model} \item Problem setting
\item \red{Memory or stability experiment} \begin{itemize}
\item \red{Figure of merit: Footprint plot} \item Research area: Decoder design for \acp{dem}
\item \red{Comparison with BB code also simulated by under circuit-level noise
\citereferencemanual{GCR24}} \item Research gap: Consideration of \acp{dem} as
\item \red{Comparison with surface code} \ac{scldpc} codes
\end{itemize}
\vspace*{5mm}
\item Future work
\begin{itemize}
\item Modify existing decoder to pass soft information
\item Test different \ac{bp} variations
\item \ldots
\end{itemize}
\vspace*{5mm}
\item Parameters
\begin{itemize}
\item Use standard depolarizing noise for comparability
\item Compare performance with other \ac{bb} code decoders
\end{itemize}
\end{itemize} \end{itemize}
\end{minipage}% \end{minipage}%
\begin{minipage}[c]{0.35\textwidth} \begin{minipage}[c]{0.35\textwidth}
@@ -1852,9 +2008,13 @@
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\begin{tikzpicture}[every node/.style={scale=10}] \vspace*{-25mm}
\node at (0, 0) \begin{tikzpicture}
\node[scale=10] at (0, 0)
{\textcolor{kit-blue}{{\fontfamily{phv}\selectfont ?}}}; {\textcolor{kit-blue}{{\fontfamily{phv}\selectfont ?}}};
\node[align=center] at (0,-5) {Thank you for your
attention! \\ Any questions?};
\end{tikzpicture} \end{tikzpicture}
\end{figure} \end{figure}
\end{minipage} \end{minipage}
@@ -1868,7 +2028,7 @@
\begin{frame} \begin{frame}
\frametitle{System Level Overview} \frametitle{System Level Overview}
\vspace*{-15mm} \vspace*{-10mm}
\begin{figure}[H] \begin{figure}[H]
\centering \centering
@@ -1933,7 +2093,7 @@
\end{subfigure} \end{subfigure}
\end{figure} \end{figure}
% \vspace*{-2mm} \vspace*{5mm}
\addreferencesmanual \addreferencesmanual
{ZZC$^+$23}{ {ZZC$^+$23}{
@@ -1952,11 +2112,30 @@
\begin{frame} \begin{frame}
\frametitle{Guided Decimation Guessing Decoding} \frametitle{Guided Decimation Guessing Decoding}
\begin{minipage}{0.57\textwidth}
\begin{itemize} \begin{itemize}
\item \red{Explain paper} \item BP guided decimation (BPGD) \\
$\rightarrow$ Iteratively fix most reliable variable node (VN)
\vspace*{10mm}
\item \schlagwort{Guided decimation guessing} (GDG)
\citereferencemanual{GCR24}
\begin{itemize}
\item Choose VN with \schlagwort{lowest}
log-likelihood ratio
\item Choose VN to fix based on \schlagwort{LLR history}
\item Explore both VN values in parallel
(\schlagwort{guessing})
\end{itemize} \end{itemize}
\end{itemize}
\end{minipage}%
\begin{minipage}{0.43\textwidth}
\begin{figure}[H]
\centering
\includegraphics[scale=1.3]{res/gdg.pdf}
\end{figure}
\end{minipage}%
\vspace*{25mm} \vspace*{30mm}
\addreferencesmanual \addreferencesmanual
{GCR24}{ {GCR24}{
@@ -1967,6 +2146,52 @@
\stopreferencesmanual \stopreferencesmanual
\end{frame} \end{frame}
\begin{frame}
\frametitle{The Quantum Error Correcting Landscape}
\vspace*{-10mm}
\begin{itemize}
\item Taxonomy of main QEC code families \citereferencemanual{SPG$^+$25}
\end{itemize}
\vspace*{2mm}
\begin{figure}[H]
\centering
\includegraphics[scale=2.5]{res/taxonomy.pdf}
\end{figure}
\begin{itemize}
\item Surface code is the industry standard for
experimental implementations, but has poor encoding
efficiency \citereferencemanual{BCG$^+$24}
\item \Ac{qldpc} codes particularly interesting because of
\begin{itemize}
\item Constant overhead scaling \citereferencemanual{Got14}
\item Linear distance scaling \citereferencemanual{BCG$^+$24}
\end{itemize}
\end{itemize}
\vspace*{15mm}
\addreferencesmanual
{SPG$^+$25}{
A. Swierkowska et al., ``ECCentric: An Empirical
Analysis of Quantum Error Correction Codes'',
\emph{arXiv:2511.01062v1}, 2025.
}
{BCG$^+$24}{
S. Bravyi et al., ``High-threshold and low-overhead
fault-tolerant quantum memory,'' \emph{Nature}, 2024.
}
{Got14}{
D. Gottesman, ``Fault-Tolerant Quantum Computation with
Constant Overhead'', \emph{arXiv:1310.2984}, 2014.
}
\stopreferencesendmanual
\end{frame}
% TODO: Is this really necessary? % TODO: Is this really necessary?
% \begin{frame} % \begin{frame}
% \frametitle{The Quantum Error Correction Landscape} % \frametitle{The Quantum Error Correction Landscape}

Binary file not shown.

Binary file not shown.

29
src/thesis/acronyms.tex Normal file
View File

@@ -0,0 +1,29 @@
\DeclareAcronym{qec}{
short=QEC,
long=quantum error correction
}
\DeclareAcronym{bp}{
short=BP,
long=belief propagation
}
\DeclareAcronym{sc}{
short=SC,
long=spatially coupled
}
\DeclareAcronym{ldpc}{
short=LDPC,
long=low-density parity-check
}
\DeclareAcronym{ml}{
short=ML,
long=maximum likelihood
}
\DeclareAcronym{pcm}{
short=PCM,
long=parity-check matrix
}

1461
src/thesis/bibliography.bib Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
\chapter{Introduction}

View File

@@ -0,0 +1,370 @@
\chapter{Fundamentals}
\label{ch:Fundamentals}
\Ac{qec} is a field of research combining ``classical''
communications engineering and quantum information science.
This chapter provides the relevant theoretical background on both of
these topics and subsequently introduces the the fundamentals of \ac{qec}.
% TODO: Is an explanation of BP with guided decimation needed in this chapter?
% TODO: Is an explanation of OSD needed chapter?
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Classical Error Correction}
\label{sec:Classical Error Correction}
% TODO: Maybe rephrase: The core concept is not the realization, its's the
% thing itself
The core concept underpinning error correcting codes is the
realization that a finite amount of redundancy, introduced
deliberately and systematically to information before its
tranmission, can be utilized to reduce the error rate of a
communications system considerably.
This idea has been expanded upon significantly since it was first
brought forward by Claude Shannon in 1948 \cite{shannon_mathematical_1948}.
In this section, we explore the concepts of ``classical'' (as in non-quantum)
error correction that are central to this work.
We start by looking at different ways of encoding information,
first considering binary linear block codes in general and then \ac{ldpc} and
\ac{sc}-\ac{ldpc} codes.
Finally, we pivot to the decoding process, specifically the \ac{bp}
algorithm.
% TODO: Use subsubsections?
\subsection{Binary Linear Block Codes}
%
% Codewords, n, k, rate
%
% TODO: Do I need a specific reference for the expanded Hilbert space thing?
One particularly important class of coding schemes is that of binary
linear block codes.
The information to be protected takes the form of a sequence of of
binary symbols, which is split into separate blocks.
Each block is encoded, transmitted, and decoded separately.
The encoding step introduces redundancy by mapping input messages
$\bm{u} \in \mathbb{F}_2^k$ of length $k \in \mathbb{N}$ (called the
\textit{information length}) onto \textit{codewords} $\bm{x} \in
\mathbb{F}_2^n$ of length $n \in \mathbb{N}$ (called the
\textit{block length}) with $n > k$.
A measure of the amount of introduced redundancy is the \textit{code
rate} $R = k/n$.
We call the set of all codewords $\mathcal{C}$ the \textit{code}
\cite[Sec. 3.1]{ryan_channel_2009}.
%
% d_min and the [] Notation
%
During the encoding process, a mapping from $\mathbb{F}_2^k$
onto $\mathcal{C} \subset \mathbb{F}_2^n$ takes place.
The input messages are mapped onto an expanded vector space, where
they are ``further appart'', giving rise to the error correcting
properties of the code.
This notion of the distance between two codewords $\bm{x}_1$ and
$\bm{x}_2$ can be expressed using the \textit{Hamming distance} $d(\bm{x}_1,
\bm{x}_2)$, which is defined as the number of positions in which they differ.
We define the \textit{minimum distance} of a code $\mathcal{C}$ as
\begin{align*}
d_\text{min} = \min \left\{ d(\bm{x}_1, \bm{x}_2) : \bm{x}_1,
\bm{x}_2 \in \mathcal{C}, \bm{x}_1 \neq \bm{x}_2 \right\}
.
\end{align*}
We can signify that a binary linear block code has information length
$k$, block length $n$ and minimum distance $d_\text{min}$ using the
notation $[n,k,d_\text{dmin}]$ \cite[Sec. 1.3]{macwilliams_theory_1977}.
%
% Parity checks, H, and the syndrome
%
A particularly elegant way of describing the subspace $C$ of
$\mathbb{F}_2^n$ that the codewords make up is the notion of
\textit{parity checks}.
Since $\lvert \mathcal{C} \rvert = 2^k$ and $\lvert \mathbb{F}_2^n
\rvert = 2^n$, we could introduce $n-k$ conditions to constrain the
additional degrees of freedom.
These conditions, called parity checks, take the form of equations
over $\mathbb{F}_2^n$, linking the individual positions of each codeword.
We can arrange the coefficients of these equations in the
\textit{parity-check matrix} (\acs{pcm}) $\bm{H} \in
\mathbb{F}_2^{(n-k) \times n}$ and equivalently define the code as
\cite[Sec. 3.1]{ryan_channel_2009}
\begin{align*}
\mathcal{C} = \left\{ \bm{x} \in \mathbb{F}_2^n :
\bm{H}\bm{x}^\text{T} = \bm{0} \right\}
.%
\end{align*}
The \textit{syndrome} $\bm{s} = \bm{H} \bm{v}^\text{T}$ describes
which parity checks a candidate codeword $\bm{v} \in \mathbb{F}_2^n$ violates.
The representation using the \ac{pcm} has the benefit of providing a
description of the code, the memory complexity of which doesn't grow
exponentially with $n$, in contrast to keeping track of all codewords directly.
%
% The decoding problem
%
Figure \ref{fig:Diagram of a transmission system} visualizes the
entire communication process \cite[Sec. 1.1]{ryan_channel_2009}.
An input message $\bm{u}\in \mathbb{F}_2^k$ is mapped onto a codeword $\bm{x}
\in \mathbb{F}_2^n$. This is passed on to a modulator, which
interacts with the physical channel.
A demodulator processes the received message and forwards the result
$\bm{y} \in \mathbb{R}^n$ to a decoder.
Finally, the decoder is responsible for obtaining an estimate
$\hat{\bm{u}} \in \mathbb{F}_2^k$ of the original input message from the
received message.
This is done by first finding an estimate $\hat{\bm{x}}$ of the sent
codeword and undoing the encoding.
The decoding problem that we generally attempt to solve thus consists
in finding the best estimate $\hat{\bm{x}}$ given $\bm{y}$.
One approach is to use the \ac{ml} criterion \cite[Sec.
1.4]{ryan_channel_2009}
\begin{align*}
\hat{\bm{u}}_\text{ML} = \arg\max_{\bm{x} \in \mathcal{C}}
P(\bm{Y} = \bm{y} \vert \bm{X} = \bm{x})
.
\end{align*}
Finally, we differentiate between \textit{soft decision} decoding, where
$\bm{y} \in \mathbb{R}^n$, and \textit{hard decision} decoding, where
$\bm{y} \in \mathbb{F}_2^n$ \cite[Sec. 1.5.1.3]{ryan_channel_2009}.
%
\begin{figure}[h]
\centering
\tikzset{
box/.style={
rectangle, draw=black, minimum width=17mm, minimum height=8mm,
},
}
\begin{tikzpicture}
[
node distance = 2mm and 7mm,
]
\node (in) {};
\node[box, right=of in] (enc) {Encoder};
\node[box, minimum width=25mm, right=of enc] (mod) {Modulator};
\node[box, below right=of mod] (cha) {Channel};
\node[box, minimum width=25mm, below left=of cha] (dem) {Demodulator};
\node[box, left=of dem] (dec) {Decoder};
\node[left=of dec] (out) {};
\draw[-{latex}] (in) -- (enc) node[midway, above] {$\bm{u}$};
\draw[-{latex}] (enc) -- (mod) node[midway, above] {$\bm{x}$};
\draw[-{latex}] (mod) -| (cha);
\draw[-{latex}] (cha) |- (dem);
\draw[-{latex}] (dem) -- (dec) node[midway, above] {$\bm{y}$};
\draw[-{latex}] (dec) -- (out) node[midway, above] {$\hat{\bm{u}}$};
\end{tikzpicture}
\caption{Overview of a transmission system.}
\label{fig:Diagram of a transmission system}
\end{figure}
%
%
% Hard vs. soft information
%
\subsection{Low-Density Parity-Check Codes}
\red{
\begin{itemize}
\item Use \cite[Ch. 5]{ryan_channel_2009} as a reference
\item Core concept (Large $n$ with manageable complexity)
\item Tanner graphs, VNs and CNs
\end{itemize}
}
\subsection{Spatially-Coupled LDPC Codes}
\red{
\begin{itemize}
\item Core idea
\item Mathematical description (H)
\end{itemize}
}
\subsection{Belief Propagation}
\red{
\begin{itemize}
\item Core idea
\item BP for SC-LDPC codes
\end{itemize}
}
\section{Quantum Mechanics and Quantum Information Science}
\label{sec:Quantum Mechanics and Quantum Information Science}
% TODO: Should the brief intro to QC be made later on or here?
%%%%%%%%%%%%%%%%
\subsection{Core Concepts and Notation}
\label{subsec:Notation}
\ldots can be very elegantly expressed using the language of
linear algebra.
\todo{Mention that we model the state of a quantum mechanical system
as a vector}
The so called Bra-ket or Dirac notation is especially appropriate,
having been proposed by Paul Dirac in 1939 for the express purpose
of simplifying quantum mechanical notation \cite{dirac_new_1939}.
Two new symbols are defined, \emph{bra}s $\bra{\cdot}$ and
\emph{ket}s $\ket{\cdot}$.
Kets denote ordinary vectors, while bras denote their Hermitian conjugates.
For example, two vectors specified by the labels $a$ and $b$
respectively are written as $\ket{a}$ and $\ket{b}$.
Their inner product is $\braket{a\vert b}$.
\red{\textbf{Tensor product}}
\red{\ldots
\todo{Introduce determinate state or use a different word?}
Take for example two systems with the determinate states $\ket{0}$
and $\ket{1}$. In general, the state of each can be written as the
superposition%
%
\begin{align*}
\alpha \ket{0} + \beta \ket{1}
.%
\end{align*}
%
Combining these two sytems into one, the overall state becomes%
%
\begin{align*}
&\mleft( \alpha_1 \ket{0} + \beta_1 \ket{1} \mright) \otimes
\mleft( \alpha_2 \ket{0} + \beta_2 \ket{1} \mright) \\
= &\alpha_1 \alpha_2 \ket{0} \ket{0}
+ \alpha_1 \alpha_2 \ket{0} \ket{1}
+ \beta_1 \alpha_2 \ket{1} \ket{0}
+ \beta_1 \beta_2 \ket{1} \ket{1}
% =: &\alpha_{00} \ket{00}
% + \alpha_{01} \ket{01}
% + \alpha_{10} \ket{10}
% + \alpha_{11} \ket{11}
.%
\end{align*}%
%
\ldots When not ambiguous in the context, the tensor product
symbol may be omitted, e.g.,
\begin{align*}
\ket{0} \otimes \ket{0} = \ket{0}\ket{0}
.%
\end{align*}
}
As we will see, the core concept that gives quantum computing its
power is entanglement. When two quantum mechanical systems are
entangled, measuring the state of one will collapse that of the other.
Take for example two subsystems with the overall state
%
\begin{align*}
\ket{\psi} = \frac{1}{\sqrt{2}} \mleft( \ket{0}\ket{0} +
\ket{1}\ket{1} \mright)
.%
\end{align*}
%
If we measure the first subsystem as being in $\ket{0}$, we can
be certain that a measurement of the second subsystem will also yield $\ket{0}$.
Introducing a new notation for entangled states, we can write%
%
\begin{align*}
\ket{\psi} = \frac{1}{\sqrt{2}} \left( \ket{00} + \ket{11} \right)
.%
\end{align*}
%
\subsection{Projective Measurements}
\label{subsec:Projective Measurements}
% TODO: Write
%%%%%%%%%%%%%%%%
\subsection{Quantum Gates}
\label{subsec:Quantum Gates}
\red{
\textbf{Content:}
\begin{itemize}
\item Bra-ket notation
\item The tensor product
\item Projective measurements (the related operators,
eigenvalues/eigenspaces, etc.)
\begin{itemize}
\item First explain what an operator is
\end{itemize}
\item Abstract intro to QC: Use gates to process qubit
states, similar to classical case
\item X, Z, Y operators/gates
\item Hadamard gate (+ X and Z are the same thing in differt bases)
\item Notation of operators on multi-qubit states
\item The Pauli, Clifford and Magic groups
\end{itemize}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Quantum Error Correction}
\label{sec:Quantum Error Correction}
\red{
\textbf{Content:}
\begin{itemize}
\item General context
\begin{itemize}
\item Why we want QC
\item Why we need QEC (correcting errors due to noisy gates)
\item Main challenges of QEC compared to classical
error correction
\end{itemize}
\item Stabilizer codes
\begin{itemize}
\item Definition of a stabilizer code
\item The stabilizer its generators (note somewhere
that the generators have to commute to be able to
be measured without disturbing each other)
\item syndrome extraction circuit
\item Stabilizer codes are effectively the QM
% TODO: Actually binary linear codes or just linear codes?
equivalent of binary linear codes (e.g.,
expressible via check matrix)
\end{itemize}
\item Digitization of errors
\item CSS codes
\item Color codes?
\item Surface codes?
\item Fault tolerant error correction (gates with which we do
error correction are also noisy)
\begin{itemize}
\item Transversal operations
\item \dots
\end{itemize}
\item Circuit level noise
\item Detector error model
\begin{itemize}
\item Columns of the check matrix represent different
possible error patterns $\rightarrow$ Check matrix
doesn't quite correspond to the codewords we used
initially anymore, but some similar structure ist
still there (compare with syndrome)
\end{itemize}
\end{itemize}
\textbf{General Notes:}
\begin{itemize}
\item Give a brief overview of the history of QEC
\item Note (and research if this is actually correct) that QC
was developed on an abstract level before thinking of
what hardware to use
\item Note that there are other codes than stabilizer codes
(and research and give some examples), but only
stabilizer codes are considered in this work
\item Degeneracy
\item The QEC decoding problem (considering degeneracy)
\end{itemize}
}
\subsection{Stabilizer Codes}
\subsection{CSS Codes}
\subsection{Quantum Low-Density Parity-Check Codes}

View File

@@ -0,0 +1,13 @@
\chapter{Fault Tolerant QEC}
\section{Fault Tolerance}
\section{Noise Models}
\subsection{Depolarizing Channel}
\subsection{Phenomenological Noise}
\subsection{Circuit-Level Noise}
\section{Detector Error Models}
\subsection{Measurement Syndrome Matrix}
\subsection{Detector Error Matrix}
\subsection{Detector Error Models}
\section{Practical Considerations}
\subsection{Practical Methodology}
\subsection{Stim}

View File

@@ -0,0 +1,5 @@
\chapter{Decoding under Detector Error Models}
\section{Sliding-Window Decoding}
\section{Treating Detector Error Matrices like SC-LDPC Codes}
\section{Soft-Information Aware Sliding-Window Decoding}
\section{Numerical Results and Analysis}

View File

@@ -0,0 +1 @@
\chapter{Conclusion and Outlook}

98
src/thesis/main.tex Normal file
View File

@@ -0,0 +1,98 @@
\documentclass{lib/cel-thesis/cel-thesis}
\usepackage[a4paper,left=3cm,right=3cm,top=2.5cm,bottom=2.5cm]{geometry}
\usepackage{float}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{mleftright}
\usepackage{bm}
\usepackage{tikz}
\usepackage{xcolor}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{acro}
\usepackage{braket}
% \usepackage[
% backend=biber,
% style=ieee,
% sorting=nty,
% ]{biblatex}
\usepackage{todonotes}
\usetikzlibrary{calc, positioning, arrows}
%
%
% Custom commands
%
%
\newcommand{\red}[1]{\textcolor{red}{#1}}
%
%
% Acronyms
%
%
\input{acronyms.tex}
\usepackage{babelbib}
\setlanguage
\usepackage{caption}
\usepackage{bm}
\usepackage{subcaption}
\usepackage{todonotes} % great for draft annotations
\DeclareCaptionLabelFormat{bf-nodot}{\textbf{#1}~\textbf{#2}}
\captionsetup{labelformat=bf-nodot,labelsep=colon}
%
%
% Content
%
%
\thesisTitle{Fault Tolerant Quantum Error Correction}
\thesisType{Master's Thesis}
\thesisAuthor{Andreas Tsouchlos}
\thesisAdvisor{Prof. Dr.-Ing. Laurent Schmalen}
\thesisHeadOfInstitute{Prof. Dr.-Ing. Laurent Schmalen}
% \thesisHeadOfInstitute{Prof. Dr.-Ing. Peter Rost}
%\thesisHeadOfInstitute{Prof. Dr.-Ing. Peter Rost\\Prof. Dr.-Ing.
% Laurent Schmalen}
\thesisSupervisor{Jonathan Mandelbaum}
\thesisStartDate{01.11.2025}
\thesisEndDate{04.05.2026}
\thesisSignatureDate{Signature date}
\thesisLanguage{english}
\begin{document}
\pagenumbering{roman} % all the preliminaries should be counted roman style
\maketitle
\newpage
% \include{chapters/abstract}
\cleardoublepage
\pagenumbering{arabic}
\tableofcontents
\cleardoublepage
\input{chapters/1_introduction.tex}
\input{chapters/2_fundamentals.tex}
\input{chapters/3_fault_tolerant_qec.tex}
\input{chapters/4_decoding_under_dems.tex}
\input{chapters/5_conclusion_and_outlook.tex}
% \appendix
% \listoffigures
% \listoftables
% \include{abbreviations}
\bibliography{lib/cel-thesis/IEEEabrv,bibliography}
\end{document}