Add edge annotations to workflow overview figure

This commit is contained in:
2026-04-17 23:05:31 +02:00
parent 2aa4bdc1b5
commit 6afa41ae0a

View File

@@ -55,7 +55,7 @@
\usepackage{algorithm}
\title{Fault Tolerant Quantum Error Correction}
\subtitle{Master's Thesis Midterm Presentation}
\subtitle{Master's Thesis Final Presentation}
\author[ Andreas]{Andreas Tsouchlos}
\date[]{}
@@ -537,16 +537,16 @@
\coordinate (temp) at ($(enc)!0.5!(dec) + (-85mm,0)$);
\node[block] (ler) at (temp) {LER calculation};
\node (inp) at ($(enc) + (-140mm,0)$) {$\ket{\psi}_\text{L}$};
\node (inp) at ($(enc) + (-140mm,0)$) {$\ket{\varphi}$};
\node (out) at ($(dec) + (-140mm,0)$)
{$\ket{\hat{\psi}}_\text{L}$};
{$\ket{\hat{\varphi}}_\text{L}$};
\draw[-{Latex}] (inp) -- (enc);
\draw[-{Latex}] (enc) -- (cha);
\draw[-{Latex}] (cha) -- (syn);
\draw[-{Latex}] (syn) -- (sde);
\draw[-{Latex}] (sde) -- (rev);
\draw[-{Latex}] (rev) -- (dec);
\draw[-{Latex}] (enc) -- (cha) node[midway, above] {$\ket{\psi}$};
\draw[-{Latex}] (cha) -- (syn) node[midway, above] {$\mathcal{E}\ket{\psi}$};
\draw[-{Latex}] (syn) -- (sde) node[midway, right] {$\bm{s}$};
\draw[-{Latex}] (sde) -- (rev) node[midway, above] {$\hat{\mathcal{E}}$};
\draw[-{Latex}] (rev) -- (dec) node[midway, above] {$\ket{\hat{\psi}}$};
\draw[-{Latex}] (dec) -- (out);
\draw[-{Latex}] (cha) -- (rev);
@@ -558,7 +558,7 @@
}
\end{figure}
\vspace*{10mm}
\vspace*{8mm}
\visible<2->{
\begin{minipage}{0.35\textwidth}
@@ -687,276 +687,276 @@
\subsection{Detector Error Models}
\label{subsec:Detector Error Models}
\begin{frame}[fragile]
\frametitle{The Measurement Syndrome Matrix I}
\vspace*{-18mm}
\begin{itemize}
\item \schlagwort{Measurement syndrome matrix} $\bm{\Omega}$ \\
contains error patterns \citereferencemanual{DTB$^+$25}
\item Example: 3-qubit repetition code
\end{itemize}
\vspace*{-25mm}
\centering
\only<1>{
\begin{minipage}{0.4\textwidth}
\centering
\vspace*{40mm}
\begin{tikzpicture}
\node{$%
\bm{\Omega} =
\left(
\begin{array}{ccc}
1 & 1 & 0 \\
0 & 1 & 1 \\
1 & 1 & 0 \\
0 & 1 & 1 \\
1 & 1 & 0 \\
0 & 1 & 1
\end{array}
\right)$
};
\draw [
line width=1pt,
decorate,
decoration={brace,mirror,amplitude=3mm,raise=5mm}
]
(2.5,1.2) -- (2.5,2.85)
node[midway,right,xshift=10mm]{$\text{SE}_1$};
\draw [
line width=1pt,
decorate,
decoration={brace,mirror,amplitude=3mm,raise=5mm}
]
(2.5,-0.75) -- (2.5,0.9)
node[midway,right,xshift=10mm]{$\text{SE}_2$};
\draw [
line width=1pt,
decorate,
decoration={brace,mirror,amplitude=3mm,raise=5mm}
]
(2.5,-2.7) -- (2.5,-1.1)
node[midway,right,xshift=10mm]{$\text{SE}_3$};
\end{tikzpicture}
\vspace*{-10mm}
\begin{gather*}
\bm{s} \in \text{span} \mleft\{ \bm{\Omega} \mright\}
\end{gather*}
\end{minipage}%
\begin{minipage}{0.6\textwidth}
\begin{figure}[H]
\newcommand{\preperr}[1]{
\gate[style={fill=orange!20}]{\scriptstyle ##1}
}
\centering
\begin{quantikz}[
row sep=4mm, column sep=4mm,
wire types={q,q,q,q,q,n,n,n,n},
execute at end picture={
\draw [
line width=1pt,
decorate,
decoration={brace,amplitude=3mm,raise=9mm}
]
(\tikzcdmatrixname-4-19.north east)
--
(\tikzcdmatrixname-5-19.south east)
node[midway,right,xshift=14mm]{$\text{SE}_1$};
\draw [
line width=1pt,
decorate,
decoration={brace,amplitude=3mm,raise=9mm}
]
(\tikzcdmatrixname-6-19.north east)
--
(\tikzcdmatrixname-7-19.south east)
node[midway,right,xshift=14mm]{$\text{SE}_2$};
\draw [
line width=1pt,
decorate,
decoration={brace,amplitude=3mm,raise=9mm}
]
(\tikzcdmatrixname-8-19.north east)
--
(\tikzcdmatrixname-9-19.south east)
node[midway,right,xshift=14mm]{$\text{SE}_3$};
}
]
% tex-fmt: off
& \preperr{E_0} & \ctrl{3} & & & & & & \ctrl{5} & & & & & & \ctrl{7} & & & & & \\
\lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & & & \ctrl{6} & \ctrl{7} & & & \\
& \preperr{E_2} & & & & \ctrl{2} & & & & & & \ctrl{4} & & & & & & \ctrl{6} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & & & & & & & \meter{} & \setwiretype{c} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \meter{} & \setwiretype{c} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & & & & & & & \meter{} & \setwiretype{c} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \meter{} & \setwiretype{c} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \targ{} & \targ{} & & & \meter{} & \setwiretype{c} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{} & \setwiretype{c}
% tex-fmt: on
\end{quantikz}
\end{figure}
\end{minipage}
}
\only<2>{
\begin{minipage}{0.4\textwidth}
\centering
\vspace*{40mm}
\begin{tikzpicture}
\node{$%
\bm{\Omega} =
\left(
\begin{array}{>{\columncolor{red!20}}ccc}
1 & 1 & 0 \\
0 & 1 & 1 \\
1 & 1 & 0 \\
0 & 1 & 1 \\
1 & 1 & 0 \\
0 & 1 & 1
\end{array}
\right)$
};
\draw [
line width=1pt,
decorate,
decoration={brace,mirror,amplitude=3mm,raise=5mm}
]
(2.5,1.2) -- (2.5,2.85)
node[midway,right,xshift=10mm]{$\text{SE}_1$};
\draw [
line width=1pt,
decorate,
decoration={brace,mirror,amplitude=3mm,raise=5mm}
]
(2.5,-0.75) -- (2.5,0.9)
node[midway,right,xshift=10mm]{$\text{SE}_2$};
\draw [
line width=1pt,
decorate,
decoration={brace,mirror,amplitude=3mm,raise=5mm}
]
(2.5,-2.7) -- (2.5,-1.1)
node[midway,right,xshift=10mm]{$\text{SE}_3$};
\end{tikzpicture}
\vspace*{-10mm}
\begin{gather*}
\bm{s} \in \text{span} \mleft\{ \bm{\Omega} \mright\}
\end{gather*}
\end{minipage}%
\begin{minipage}{0.6\textwidth}
\begin{figure}[H]
\newcommand{\preperr}[1]{
\gate[style={fill=orange!20}]{\scriptstyle ##1}
}
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
\newcommand{\noise}{
\gate[style={noisy}]{\text{\small X}}%
\setwiretype{n}%
\wire[l][1]{q}
}
\newcommand{\redwire}[1]{
\wire[r][##1][style={draw=red, line width=2pt}]{q}
}
\newcommand{\redtarg}{
\targ[style={draw=red}]{}%
\setwiretype{n}%
\wire[l][1]{q}
}
\newcommand{\redctrl}[1]{
\ctrl[style={draw=red,fill=red,line width=2pt}]{##1}
}
\newcommand{\redmeter}{\meter[style={draw=red,fill=red!20}]{}}
\tikzset{
noisy/.style={
starburst,
starburst point height=2mm,
fill=red!25, draw=red!85!black,
line width=2pt,
inner xsep=-2pt, inner ysep=-2pt
},
}
\centering
\begin{quantikz}[
row sep=4mm, column sep=4mm,
wire types={q,q,q,q,q,n,n,n,n},
execute at end picture={
\draw [
line width=1pt,
decorate,
decoration={brace,amplitude=3mm,raise=9mm}
]
(\tikzcdmatrixname-4-19.north east)
--
(\tikzcdmatrixname-5-19.south east)
node[midway,right,xshift=14mm]{$\text{SE}_1$};
\draw [
line width=1pt,
decorate,
decoration={brace,amplitude=3mm,raise=9mm}
]
(\tikzcdmatrixname-6-19.north east)
--
(\tikzcdmatrixname-7-19.south east)
node[midway,right,xshift=14mm]{$\text{SE}_2$};
\draw [
line width=1pt,
decorate,
decoration={brace,amplitude=3mm,raise=9mm}
]
(\tikzcdmatrixname-8-19.north east)
--
(\tikzcdmatrixname-9-19.south east)
node[midway,right,xshift=14mm]{$\text{SE}_3$};
}
]
% tex-fmt: off
& \noise\redwire{18} & \redctrl{3} & & & & & & \redctrl{5} & & & & & & \redctrl{7} & & & & & \\
\lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & & & \ctrl{6} & \ctrl{7} & & & \\
& \preperr{E_2} & & & & \ctrl{2} & & & & & & \ctrl{4} & & & & & & \ctrl{6} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \redtarg{}\redwire{16} & \targ{} & & & & & & & & & & & & & & & \redmeter\wire[r][1][style={draw=red,double, line width=2pt}]{q} & \setwiretype{n} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \meter{} & \setwiretype{c} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \redtarg\redwire{10} & \targ{} & & & & & & & & & \redmeter\wire[r][1][style={draw=red,double, line width=2pt}]{q} & \setwiretype{n} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \meter{} & \setwiretype{c} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \redtarg\redwire{4} & \targ{} & & & \redmeter\wire[r][1][style={draw=red,double, line width=2pt}]{q} & \setwiretype{n} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{} & \setwiretype{c}
% tex-fmt: on
\end{quantikz}
\end{figure}
\end{minipage}
}
\vspace*{8mm}
\addreferencesmanual
{DTB$^+$25}{
P.- J. H. S. Derks et al., ``Designing fault-tolerant
circuits using detector error models,'' \emph{Quantum}, 2025.
}
\stopreferencesmanual
\end{frame}
% \begin{frame}[fragile]
% \frametitle{The Measurement Syndrome Matrix I}
%
% \vspace*{-18mm}
%
% \begin{itemize}
% \item \schlagwort{Measurement syndrome matrix} $\bm{\Omega}$ \\
% contains error patterns \citereferencemanual{DTB$^+$25}
% \item Example: 3-qubit repetition code
% \end{itemize}
%
% \vspace*{-25mm}
%
% \centering
% \only<1>{
% \begin{minipage}{0.4\textwidth}
% \centering
%
% \vspace*{40mm}
% \begin{tikzpicture}
% \node{$%
% \bm{\Omega} =
% \left(
% \begin{array}{ccc}
% 1 & 1 & 0 \\
% 0 & 1 & 1 \\
% 1 & 1 & 0 \\
% 0 & 1 & 1 \\
% 1 & 1 & 0 \\
% 0 & 1 & 1
% \end{array}
% \right)$
% };
%
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,mirror,amplitude=3mm,raise=5mm}
% ]
% (2.5,1.2) -- (2.5,2.85)
% node[midway,right,xshift=10mm]{$\text{SE}_1$};
%
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,mirror,amplitude=3mm,raise=5mm}
% ]
% (2.5,-0.75) -- (2.5,0.9)
% node[midway,right,xshift=10mm]{$\text{SE}_2$};
%
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,mirror,amplitude=3mm,raise=5mm}
% ]
% (2.5,-2.7) -- (2.5,-1.1)
% node[midway,right,xshift=10mm]{$\text{SE}_3$};
% \end{tikzpicture}
%
% \vspace*{-10mm}
%
% \begin{gather*}
% \bm{s} \in \text{span} \mleft\{ \bm{\Omega} \mright\}
% \end{gather*}
% \end{minipage}%
% \begin{minipage}{0.6\textwidth}
% \begin{figure}[H]
% \newcommand{\preperr}[1]{
% \gate[style={fill=orange!20}]{\scriptstyle ##1}
% }
%
% \centering
%
% \begin{quantikz}[
% row sep=4mm, column sep=4mm,
% wire types={q,q,q,q,q,n,n,n,n},
% execute at end picture={
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,amplitude=3mm,raise=9mm}
% ]
% (\tikzcdmatrixname-4-19.north east)
% --
% (\tikzcdmatrixname-5-19.south east)
% node[midway,right,xshift=14mm]{$\text{SE}_1$};
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,amplitude=3mm,raise=9mm}
% ]
% (\tikzcdmatrixname-6-19.north east)
% --
% (\tikzcdmatrixname-7-19.south east)
% node[midway,right,xshift=14mm]{$\text{SE}_2$};
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,amplitude=3mm,raise=9mm}
% ]
% (\tikzcdmatrixname-8-19.north east)
% --
% (\tikzcdmatrixname-9-19.south east)
% node[midway,right,xshift=14mm]{$\text{SE}_3$};
% }
% ]
% % tex-fmt: off
% & \preperr{E_0} & \ctrl{3} & & & & & & \ctrl{5} & & & & & & \ctrl{7} & & & & & \\
% \lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & & & \ctrl{6} & \ctrl{7} & & & \\
% & \preperr{E_2} & & & & \ctrl{2} & & & & & & \ctrl{4} & & & & & & \ctrl{6} & & \\
% \lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & & & & & & & \meter{} & \setwiretype{c} \\
% \lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \meter{} & \setwiretype{c} \\
% & & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & & & & & & & \meter{} & \setwiretype{c} \\
% & & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \meter{} & \setwiretype{c} \\
% & & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \targ{} & \targ{} & & & \meter{} & \setwiretype{c} \\
% & & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{} & \setwiretype{c}
% % tex-fmt: on
% \end{quantikz}
% \end{figure}
% \end{minipage}
% }
% \only<2>{
% \begin{minipage}{0.4\textwidth}
% \centering
%
% \vspace*{40mm}
% \begin{tikzpicture}
% \node{$%
% \bm{\Omega} =
% \left(
% \begin{array}{>{\columncolor{red!20}}ccc}
% 1 & 1 & 0 \\
% 0 & 1 & 1 \\
% 1 & 1 & 0 \\
% 0 & 1 & 1 \\
% 1 & 1 & 0 \\
% 0 & 1 & 1
% \end{array}
% \right)$
% };
%
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,mirror,amplitude=3mm,raise=5mm}
% ]
% (2.5,1.2) -- (2.5,2.85)
% node[midway,right,xshift=10mm]{$\text{SE}_1$};
%
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,mirror,amplitude=3mm,raise=5mm}
% ]
% (2.5,-0.75) -- (2.5,0.9)
% node[midway,right,xshift=10mm]{$\text{SE}_2$};
%
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,mirror,amplitude=3mm,raise=5mm}
% ]
% (2.5,-2.7) -- (2.5,-1.1)
% node[midway,right,xshift=10mm]{$\text{SE}_3$};
% \end{tikzpicture}
%
% \vspace*{-10mm}
%
% \begin{gather*}
% \bm{s} \in \text{span} \mleft\{ \bm{\Omega} \mright\}
% \end{gather*}
% \end{minipage}%
% \begin{minipage}{0.6\textwidth}
% \begin{figure}[H]
% \newcommand{\preperr}[1]{
% \gate[style={fill=orange!20}]{\scriptstyle ##1}
% }
% \newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
%
% \newcommand{\noise}{
% \gate[style={noisy}]{\text{\small X}}%
% \setwiretype{n}%
% \wire[l][1]{q}
% }
% \newcommand{\redwire}[1]{
% \wire[r][##1][style={draw=red, line width=2pt}]{q}
% }
% \newcommand{\redtarg}{
% \targ[style={draw=red}]{}%
% \setwiretype{n}%
% \wire[l][1]{q}
% }
% \newcommand{\redctrl}[1]{
% \ctrl[style={draw=red,fill=red,line width=2pt}]{##1}
% }
% \newcommand{\redmeter}{\meter[style={draw=red,fill=red!20}]{}}
%
% \tikzset{
% noisy/.style={
% starburst,
% starburst point height=2mm,
% fill=red!25, draw=red!85!black,
% line width=2pt,
% inner xsep=-2pt, inner ysep=-2pt
% },
% }
%
% \centering
%
% \begin{quantikz}[
% row sep=4mm, column sep=4mm,
% wire types={q,q,q,q,q,n,n,n,n},
% execute at end picture={
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,amplitude=3mm,raise=9mm}
% ]
% (\tikzcdmatrixname-4-19.north east)
% --
% (\tikzcdmatrixname-5-19.south east)
% node[midway,right,xshift=14mm]{$\text{SE}_1$};
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,amplitude=3mm,raise=9mm}
% ]
% (\tikzcdmatrixname-6-19.north east)
% --
% (\tikzcdmatrixname-7-19.south east)
% node[midway,right,xshift=14mm]{$\text{SE}_2$};
% \draw [
% line width=1pt,
% decorate,
% decoration={brace,amplitude=3mm,raise=9mm}
% ]
% (\tikzcdmatrixname-8-19.north east)
% --
% (\tikzcdmatrixname-9-19.south east)
% node[midway,right,xshift=14mm]{$\text{SE}_3$};
% }
% ]
% % tex-fmt: off
% & \noise\redwire{18} & \redctrl{3} & & & & & & \redctrl{5} & & & & & & \redctrl{7} & & & & & \\
% \lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & & & \ctrl{6} & \ctrl{7} & & & \\
% & \preperr{E_2} & & & & \ctrl{2} & & & & & & \ctrl{4} & & & & & & \ctrl{6} & & \\
% \lstick{$\ket{0}_{\text{A}_1}$} & & \redtarg{}\redwire{16} & \targ{} & & & & & & & & & & & & & & & \redmeter\wire[r][1][style={draw=red,double, line width=2pt}]{q} & \setwiretype{n} \\
% \lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \meter{} & \setwiretype{c} \\
% & & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \redtarg\redwire{10} & \targ{} & & & & & & & & & \redmeter\wire[r][1][style={draw=red,double, line width=2pt}]{q} & \setwiretype{n} \\
% & & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \meter{} & \setwiretype{c} \\
% & & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \redtarg\redwire{4} & \targ{} & & & \redmeter\wire[r][1][style={draw=red,double, line width=2pt}]{q} & \setwiretype{n} \\
% & & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{} & \setwiretype{c}
% % tex-fmt: on
% \end{quantikz}
% \end{figure}
% \end{minipage}
% }
%
% \vspace*{8mm}
%
% \addreferencesmanual
% {DTB$^+$25}{
% P.- J. H. S. Derks et al., ``Designing fault-tolerant
% circuits using detector error models,'' \emph{Quantum}, 2025.
% }
% \stopreferencesmanual
% \end{frame}
\begin{frame}[fragile]
\frametitle{The Measurement Syndrome Matrix II}
\frametitle{The Measurement Syndrome Matrix}
\vspace*{-18mm}
@@ -1909,7 +1909,7 @@
\vspace*{-5mm}
\begin{itemize}
\item Pass \ac{cn} to \ac{vn} messages
\item Pass \ac{cn} to \ac{vn} messages to next window
\end{itemize}
\end{frame}
@@ -2927,6 +2927,7 @@
\item \Ac{spa} + \ac{gd} decoder
\item Parameters
\begin{itemize}
\item $T = 1$
\item $n_\text{iterations} = 32$
\item $F = 1$
\end{itemize}