Finish measurement syndrome matrix slides, create first detector error matrix slide

This commit is contained in:
Andreas Tsouchlos 2026-02-01 14:58:15 +01:00
parent d95b5aca11
commit d59b2e68d9

View File

@ -27,7 +27,7 @@
\usetikzlibrary{spy, external, intersections, positioning} \usetikzlibrary{spy, external, intersections, positioning}
% \ifdefined\ishandout\else % \ifdefined\ishandout\else
% \tikzexternalize \tikzexternalize
% \fi % \fi
\usepackage{pgfplots} \usepackage{pgfplots}
@ -406,7 +406,7 @@
\begin{frame} \begin{frame}
\frametitle{Fault Tolerance} \frametitle{Fault Tolerance}
\vspace*{-20mm} \vspace*{-10mm}
\begin{itemize} \begin{itemize}
\item The quantum gates we use for syndrome extraction are \item The quantum gates we use for syndrome extraction are
@ -422,24 +422,24 @@
\item We generally perform multiple rounds of syndrome extraction \item We generally perform multiple rounds of syndrome extraction
\end{itemize} \end{itemize}
\vspace*{1mm} % \vspace*{1mm}
%
% \begin{figure}[H]
% \centering
% % tex-fmt: off
% \begin{quantikz}[row sep=2mm, column sep=4mm, wire types={q,q,q,q,q,n,n}]
% & \ctrl{3} & & & & & & \ctrl{5} & & & & \\
% \lstick{$\ket{\psi}$} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & \setwiretype{n}\ldots \\
% & & & & \ctrl{2} & & & & & & \ctrl{4} & \\
% \lstick{$\ket{0}_{\text{A}_1}$} & \targ{} & \targ{} & & & & & & & & & \meter{} \\
% \lstick{$\ket{0}_{\text{A}_2}$} & & & \targ{} & \targ{} & & & & & & & \meter{} \\
% & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & \meter{} \\
% & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{}
% \end{quantikz}
% % tex-fmt: on
% \end{figure}
\begin{figure}[H] \vspace*{25mm}
\centering
% tex-fmt: off
\begin{quantikz}[row sep=2mm, column sep=4mm, wire types={q,q,q,q,q,n,n}]
& \ctrl{3} & & & & & & \ctrl{5} & & & & \\
\lstick{$\ket{\psi}$} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & \setwiretype{n}\ldots \\
& & & & \ctrl{2} & & & & & & \ctrl{4} & \\
\lstick{$\ket{0}_{\text{A}_1}$} & \targ{} & \targ{} & & & & & & & & & \meter{} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & \targ{} & \targ{} & & & & & & & \meter{} \\
& & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & \meter{} \\
& & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{}
\end{quantikz}
% tex-fmt: on
\end{figure}
\vspace*{1mm}
\addreferences \addreferences
{roffe_quantum_2019} {roffe_quantum_2019}
@ -452,26 +452,30 @@
\label{subsec:Detector Error Models} \label{subsec:Detector Error Models}
\begin{frame}[fragile] \begin{frame}[fragile]
\frametitle{The Detector Error Model} \frametitle{The Measurement Syndrome Matrix I}
\vspace*{-10mm} \vspace*{-18mm}
\begin{itemize} \begin{itemize}
\item \red{Introduce the concept of a detector (it may be \item Each column of the \emph{measurement syndrome matrix}
better to do this on the next slide, and in doing so $\bm{\Omega}$ corresponds to a measurement pattern an
explain that the syndrome results are XORed together)} error produces \citereference{derks_designing_2025}
\item Example: 3-qubit repetition code for X errors, \item Example: 3-qubit repetition code \\
phenomenological noise model, two rounds of syndrome extraction (Only bit flips on data qubits)
\end{itemize} \end{itemize}
\vspace*{-28mm}
\centering \centering
\only<1>{ \only<1>{
\begin{minipage}{0.3\textwidth} \begin{minipage}{0.4\textwidth}
\centering \centering
\begin{align*} \begin{align*}
\bm{H} = \bm{\Omega} =
\left( \left(
\begin{array}{ccc} \begin{array}{ccc}
1 & 1 & 0 \\
0 & 1 & 1 \\
1 & 1 & 0 \\ 1 & 1 & 0 \\
0 & 1 & 1 \\ 0 & 1 & 1 \\
1 & 1 & 0 \\ 1 & 1 & 0 \\
@ -479,34 +483,40 @@
\end{array}\right) \end{array}\right)
\end{align*} \end{align*}
\end{minipage}% \end{minipage}%
\begin{minipage}{0.7\textwidth} \begin{minipage}{0.6\textwidth}
\begin{figure}[H] \begin{figure}[H]
\newcommand{\preperr}{\gate[style={fill=orange!20}]{\phantom{1}}} \newcommand{\preperr}[1]{
\gate[style={fill=orange!20}]{\scriptstyle ##1}
}
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}} \newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
\centering \centering
% tex-fmt: off % tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n}] \begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n,n,n}]
& \preperr & \ctrl{3} & & & & & & \ctrl{5} & & & & \\ & \preperr{E_0} & \ctrl{3} & & & & & & \ctrl{5} & & & & & & \ctrl{7} & & & & \\
\lstick{$\ket{\psi}$} & \preperr & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & \\ \lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & & & \ctrl{6} & \ctrl{7} & & \\
& \preperr & & & & \ctrl{2} & & & & & & \ctrl{4} & \\ & \preperr{E_2} & & & & \ctrl{2} & & & & & & \ctrl{4} & & & & & & \ctrl{6} & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & \meter{} \\ \lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & & & & & & & \meter{} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & \meter{} \\ \lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & \meter{} \\ & & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & & & & & & & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{} & & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \meter{} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \targ{} & \targ{} & & & \meter{} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{}
\end{quantikz} \end{quantikz}
% tex-fmt: on % tex-fmt: on
\end{figure} \end{figure}
\end{minipage} \end{minipage}
} }
\only<2>{ \only<2>{
\begin{minipage}{0.3\textwidth} \begin{minipage}{0.4\textwidth}
\centering \centering
\begin{align*} \begin{align*}
\bm{H} = \bm{\Omega} =
\left( \left(
\begin{array}{>{\columncolor{red!20}}ccc} \begin{array}{>{\columncolor{red!20}}ccc}
1 & 1 & 0 \\
0 & 1 & 1 \\
1 & 1 & 0 \\ 1 & 1 & 0 \\
0 & 1 & 1 \\ 0 & 1 & 1 \\
1 & 1 & 0 \\ 1 & 1 & 0 \\
@ -514,20 +524,30 @@
\end{array}\right) \end{array}\right)
\end{align*} \end{align*}
\end{minipage}% \end{minipage}%
\begin{minipage}{0.7\textwidth} \begin{minipage}{0.6\textwidth}
\begin{figure}[H] \begin{figure}[H]
\newcommand{\preperr}[1]{\gate[style={fill=orange!20}]{##1}} \newcommand{\preperr}[1]{
\gate[style={fill=orange!20}]{\scriptstyle ##1}
}
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}} \newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
\newcommand{\noise}{ \newcommand{\noise}{
\gate[style={noisy}]{\text{\small X}}\setwiretype{n} \gate[style={noisy}]{\text{\small X}}%
\setwiretype{n}%
\wire[l][1]{q}
} }
\newcommand{\redwire}[1]{ \newcommand{\redwire}[1]{
\wire[r][##1][style={draw=red, line width=2pt}]{q} \wire[r][##1][style={draw=red, line width=2pt}]{q}
} }
\newcommand{\redtarg}{\targ[style={draw=red}]{}\setwiretype{n}} \newcommand{\redtarg}{
\targ[style={draw=red}]{}%
\setwiretype{n}%
\wire[l][1]{q}
}
\newcommand{\redctrl}[1]{ \newcommand{\redctrl}[1]{
\ctrl[style={draw=red,fill=red,line width=2pt}]{##1} \ctrl[style={draw=red,fill=red,line width=2pt}]{##1}
} }
\newcommand{\redmeter}{\meter[style={draw=red,fill=red!20}]{}}
\tikzset{ \tikzset{
noisy/.style={ noisy/.style={
@ -542,55 +562,269 @@
\centering \centering
% tex-fmt: off % tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n}] \begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n,n,n}]
& \noise\redwire{11}\wire[l][1]{q} & \redctrl{3} & & & & & & \redctrl{5} & & & & \\ & \noise\redwire{17} & \redctrl{3} & & & & & & \redctrl{5} & & & & & & \redctrl{7} & & & & \\
\lstick{$\ket{\psi}$} & \preperr{\phantom{1}} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & \\ \lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & & & & \ctrl{4} & \ctrl{5} & & & & & \ctrl{6} & \ctrl{7} & & \\
& \preperr{\phantom{1}} & & & & \ctrl{2} & & & & & & \ctrl{4} & \\ & \preperr{E_2} & & & & \ctrl{2} & & & & & & \ctrl{4} & & & & & & \ctrl{6} & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \redtarg\redwire{10}\wire[l][1]{q} & \targ{} & & & & & & & & & \meter[style={draw=red,fill=red!20}]{} \\ \lstick{$\ket{0}_{\text{A}_1}$} & & \redtarg{}\redwire{16} & \targ{} & & & & & & & & & & & & & & & \redmeter \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & \meter{} \\ \lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \redtarg{}\redwire{4}\wire[l][1]{q} & \targ{} & & & \meter[style={draw=red,fill=red!20}]{} \\ & & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \redtarg\redwire{10} & \targ{} & & & & & & & & & \redmeter \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{} & & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \meter{} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \redtarg\redwire{4} & \targ{} & & & \redmeter \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{}
\end{quantikz}
% tex-fmt: on
\end{figure}
\end{minipage}
}
\vspace*{2mm}
\addreferences
{derks_designing_2025}
\stopreferences
\end{frame}
\begin{frame}[fragile]
\frametitle{The Measurement Syndrome Matrix II}
\vspace*{-18mm}
\begin{itemize}
\item Each column of the \emph{measurement syndrome matrix}
$\bm{\Omega}$ corresponds to a measurement pattern an
error produces \citereference{derks_designing_2025}
\item
Example: 3-qubit repetition code \\
(Phenomenological noise \citereference{derks_designing_2025})
\end{itemize}
\vspace*{-28mm}
\centering
\only<1>{
\begin{minipage}{0.4\textwidth}
\centering
\scalebox{0.85}{
\parbox{.5\linewidth}{%
\begin{align*}
\bm{\Omega} =
\left(
\begin{array}{ccccccccccccccc}
1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0
& 0 & 0 & 0 & 0 & 0 \\
0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0
& 0 & 0 & 0 & 0 & 0 \\
1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 1 & 0
& 0 & 0 & 0 & 0 & 0 \\
0 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 1
& 0 & 0 & 0 & 0 & 0 \\
1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0
& 1 & 1 & 0 & 1 & 0 \\
0 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0
& 0 & 1 & 1 & 0 & 1
\end{array}\right)
\end{align*}
}
}
\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=2.5mm,
fill=red!25, draw=red!85!black,
line width=2pt,
inner xsep=-2pt, inner ysep=-2pt
},
}
\centering
% tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n,n,n}]
& \preperr{E_0} & \ctrl{3} & & & & \preperr{E_5} & & \ctrl{5} & & & & \preperr{E_{10}} & & \ctrl{7} & & & & & \\
\lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & \preperr{E_6} & & & \ctrl{4} & \ctrl{5} & & \preperr{E_{11}} & & & \ctrl{6} & \ctrl{7} & & & \\
& \preperr{E_2} & & & & \ctrl{2} & \preperr{E_7} & & & & & \ctrl{4} & \preperr{E_{12}} & & & & & \ctrl{6} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & & & & & & & \preperr{E_3} & \meter{} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \preperr{E_4} & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & & & & & & & \preperr{E_8} & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \preperr{E_9} & \meter{} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \targ{} & \targ{} & & & \preperr{E_{13}} & \meter{} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \preperr{E_{14}} & \meter{}
\end{quantikz}
% tex-fmt: on
\end{figure}
\end{minipage}
}
\only<2>{
\begin{minipage}{0.4\textwidth}
\centering
\newcommand{\pz}{\phantom{0}}
\scalebox{0.85}{
\parbox{.5\linewidth}{%
\begin{align*}
\bm{\Omega} =
\left(
\begin{array}{
ccccc%
>{\columncolor{red!20}}c%
ccccccccc
}
1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0
& 0 & 0 & 0 & 0 & 0 \\
0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0
& 0 & 0 & 0 & 0 & 0 \\
1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 1 & 0
& 0 & 0 & 0 & 0 & 0 \\
0 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 1
& 0 & 0 & 0 & 0 & 0 \\
1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0
& 1 & 1 & 0 & 1 & 0 \\
0 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0
& 0 & 1 & 1 & 0 & 1
\end{array}\right)
\end{align*}
}
}
\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=2.5mm,
fill=red!25, draw=red!85!black,
line width=2pt,
inner xsep=-2pt, inner ysep=-2pt
},
}
\centering
% tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n,n,n}]
& \preperr{E_0} & \ctrl{3} & & & & \noise\redwire{13} & & \redctrl{5} & & & & \preperr{E_{10}} & & \redctrl{7} & & & & & \\
\lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & \preperr{E_6} & & & \ctrl{4} & \ctrl{5} & & \preperr{E_{11}} & & & \ctrl{6} & \ctrl{7} & & & \\
& \preperr{E_2} & & & & \ctrl{2} & \preperr{E_7} & & & & & \ctrl{4} & \preperr{E_{12}} & & & & & \ctrl{6} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & & & & & & & \preperr{E_3} & \meter{} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \preperr{E_4} & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \redtarg\redwire{11} & \targ{} & & & & & & & & & \preperr{E_8} & \redmeter \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & & & & & & & \preperr{E_9} & \meter{} \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \redtarg\redwire{5} & \targ{} & & & \preperr{E_{13}} & \redmeter \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \preperr{E_{14}} & \meter{}
\end{quantikz} \end{quantikz}
% tex-fmt: on % tex-fmt: on
\end{figure} \end{figure}
\end{minipage} \end{minipage}
} }
\only<3>{ \only<3>{
\begin{minipage}{0.3\textwidth} \begin{minipage}{0.4\textwidth}
\centering \centering
\newcommand{\pz}{\phantom{0}}
\scalebox{0.85}{
\parbox{.5\linewidth}{%
\begin{align*} \begin{align*}
\bm{H} = \bm{\Omega} =
\left( \left(
\begin{array}{ccc>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c} \begin{array}{
1 & 1 & 0 & \phantom{0}& \phantom{0}& cccccc%
\phantom{0}& \phantom{0}& \phantom{0}& >{\columncolor{red!20}}c%
\phantom{0}& \phantom{0} \\ cccccccc
0 & 1 & 1 & \phantom{0}& \phantom{0}& }
\phantom{0}& \phantom{0}& \phantom{0}& 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0
\phantom{0}& \phantom{0} \\ & 0 & 0 & 0 & 0 & 0 \\
1 & 1 & 0 & \phantom{0}& \phantom{0}& 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0
\phantom{0}& \phantom{0}& \phantom{0}& & 0 & 0 & 0 & 0 & 0 \\
\phantom{0}& \phantom{0} \\ 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 1 & 0
0 & 1 & 1 & \phantom{0}& \phantom{0}& & 0 & 0 & 0 & 0 & 0 \\
\phantom{0}& \phantom{0}& \phantom{0}& 0 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 1
\phantom{0}& \phantom{0} & 0 & 0 & 0 & 0 & 0 \\
1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0
& 1 & 1 & 0 & 1 & 0 \\
0 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0
& 0 & 1 & 1 & 0 & 1
\end{array}\right) \end{array}\right)
\end{align*} \end{align*}
}
}
\end{minipage}% \end{minipage}%
\begin{minipage}{0.7\textwidth} \begin{minipage}{0.6\textwidth}
\begin{figure}[H] \begin{figure}[H]
\newcommand{\preperr}[1]{\gate[style={fill=orange!20}]{##1}} \newcommand{\preperr}[1]{
\gate[style={fill=orange!20}]{\scriptstyle ##1}
}
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}} \newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
\newcommand{\noise}{ \newcommand{\noise}{
\gate[style={noisy}]{\text{\small X}}\setwiretype{n} \gate[style={noisy}]{\text{\small X}}%
\setwiretype{n}%
\wire[l][1]{q}
} }
\newcommand{\redwire}[1]{ \newcommand{\redwire}[1]{
\wire[r][##1][style={draw=red, line width=2pt}]{q} \wire[r][##1][style={draw=red, line width=2pt}]{q}
} }
\newcommand{\redtarg}{\targ[style={draw=red}]{}\setwiretype{n}} \newcommand{\redtarg}{
\targ[style={draw=red}]{}%
\setwiretype{n}%
\wire[l][1]{q}
}
\newcommand{\redctrl}[1]{ \newcommand{\redctrl}[1]{
\ctrl[style={draw=red,fill=red,line width=2pt}]{##1} \ctrl[style={draw=red,fill=red,line width=2pt}]{##1}
} }
\newcommand{\redmeter}{\meter[style={draw=red,fill=red!20}]{}}
\tikzset{ \tikzset{
noisy/.style={ noisy/.style={
@ -605,192 +839,93 @@
\centering \centering
% tex-fmt: off % tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n}] \begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n,n,n}]
& \preperr{\phantom{1}} & \ctrl{3} & & & & \preperr{\phantom{1}} & & \ctrl{5} & & & & & \\ & \preperr{E_0} & \ctrl{3} & & & & \preperr{E_5} & & \ctrl{5} & & & & \preperr{E_{10}} & & \ctrl{7} & & & & & \\
\lstick{$\ket{\psi}$} & \preperr{\phantom{1}} & & \ctrl{2} & \ctrl{3} & & \preperr{\phantom{1}} & & & \ctrl{4} & \ctrl{5} & & & \\ \lstick{$\ket{\psi}$} & \preperr{E_1} & & \ctrl{2} & \ctrl{3} & & \noise\redwire{13} & & & \redctrl{4} & \redctrl{5} & & \preperr{E_{11}} & & & \redctrl{6} & \redctrl{7} & & & \\
& \preperr{\phantom{1}} & & & & \ctrl{2} & \preperr{\phantom{1}} & & & & & \ctrl{4} & & \\ & \preperr{E_2} & & & & \ctrl{2} & \preperr{E_7} & & & & & \ctrl{4} & \preperr{E_{12}} & & & & & \ctrl{6} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & \preperr{\phantom{1}} & \meter{} \\ \lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & & & & & & & \preperr{E_3} & \meter{} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & \preperr{\phantom{1}} & \meter{} \\ \lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \preperr{E_4} & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & \preperr{\phantom{1}} & \meter{} \\ & & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \redtarg\redwire{10} & & & & & & & & & \preperr{E_8} & \redmeter \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & \preperr{\phantom{1}} & \meter{} & & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \redtarg\redwire{9} & \targ{} & & & & & & & \preperr{E_9} & \redmeter \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \targ{} & \redtarg\redwire{4} & & & \preperr{E_{13}} & \redmeter \\
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \redtarg\redwire{3} & \targ{} & \preperr{E_{14}} & \redmeter
\end{quantikz} \end{quantikz}
% tex-fmt: on % tex-fmt: on
\end{figure} \end{figure}
\end{minipage} \end{minipage}
} }
\only<4>{
\begin{minipage}{0.3\textwidth} \vspace*{2mm}
\centering
\begin{align*} \addreferences
\bm{H} = {derks_designing_2025}
\left( \stopreferences
\begin{array}{ccc>{\columncolor{red!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c} \end{frame}
1 & 1 & 0 & 0 & \phantom{0}& \phantom{0}&
\phantom{0}& \phantom{0}& \phantom{0}& \phantom{0} \\ % TODO: Journal not showing for derks_designing_2025
0 & 1 & 1 & 0 & \phantom{0}& \phantom{0}& \begin{frame}
\phantom{0}& \phantom{0}& \phantom{0}& \phantom{0} \\ \frametitle{The Detector Error Matrix I}
1 & 1 & 0 & 1 & \phantom{0}& \phantom{0}&
\phantom{0}& \phantom{0}& \phantom{0}& \phantom{0} \\ \vspace*{-17mm}
0 & 1 & 1 & 0 & \phantom{0}& \phantom{0}&
\phantom{0}& \phantom{0}& \phantom{0}& \phantom{0} \begin{itemize}
\end{array}\right) \item A detector is a parity constraint on a set of
\end{align*} measurement outcomes \citereference{derks_designing_2025}
\end{minipage}% \item Each column of the \emph{detector error matrix} $\bm{H}$
\begin{minipage}{0.7\textwidth} corresponds to a detector pattern an error produces
\item We can mitigate the propagation of errors into
subsequent rounds by XORing the measurements, i.e.,
defining detectors appropriately; this is equivalent to
row additions
\end{itemize}
\begin{minipage}{0.5\textwidth}
\begin{figure}[H] \begin{figure}[H]
\newcommand{\preperr}[1]{\gate[style={fill=orange!20}]{##1}}
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
\newcommand{\noise}{
\gate[style={noisy}]{\text{\small X}}\setwiretype{n}
}
\newcommand{\redwire}[1]{
\wire[r][##1][style={draw=red, line width=2pt}]{q}
}
\newcommand{\redtarg}{\targ[style={draw=red}]{}\setwiretype{n}}
\newcommand{\redctrl}[1]{
\ctrl[style={draw=red,fill=red,line width=2pt}]{##1}
}
\tikzset{
noisy/.style={
starburst,
starburst point height=2.5mm,
fill=red!25, draw=red!85!black,
line width=2pt,
inner xsep=-2pt, inner ysep=-2pt
},
}
\centering \centering
% tex-fmt: off % tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n}] \begin{quantikz}[row sep=4mm, column sep=4mm, wire types={n,n,n,n,n,n}]
& \preperr{\phantom{1}} & \ctrl{3} & & & & \noise\wire[l][1]{q}\redwire{7} & & \redctrl{5} & & & & & \\ & \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & & \ctrl[vertical wire=c]{2} & & \gate{D_1} \\
\lstick{$\ket{\psi}$} & \preperr{\phantom{1}} & & \ctrl{2} & \ctrl{3} & & \preperr{\phantom{1}} & & & \ctrl{4} & \ctrl{5} & & & \\ & \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & & & \ctrl[vertical wire=c]{2} & \gate{D_2} \\
& \preperr{\phantom{1}} & & & & \ctrl{2} & \preperr{\phantom{1}} & & & & & \ctrl{4} & & \\ & \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & \ctrl[vertical wire=c]{2} & & \targ{} & & \gate{D_3} \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & \preperr{\phantom{1}} & \meter{} \\ & \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & \ctrl[vertical wire=c]{2} & & \targ{} & \gate{D_4} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & \preperr{\phantom{1}} & \meter{} \\ & \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & \targ{} & & & & \gate{D_5} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \redtarg\wire[l][1]{q}\redwire{5} & \targ{} & & & \preperr{\phantom{1}} & \meter[style={draw=red,fill=red!20}]{} \\ & \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & \targ{} & & & \gate{D_6}
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & \preperr{\phantom{1}} & \meter{}
\end{quantikz} \end{quantikz}
% tex-fmt: on % tex-fmt: on
\end{figure} \end{figure}
\end{minipage} \end{minipage}%
} \begin{minipage}{0.5\textwidth}
\only<5>{ \newcommand\cc{\cellcolor{blue!20}}
\begin{minipage}{0.3\textwidth}
\centering
\begin{align*} \begin{align*}
\bm{H} = \bm{H} =
\left(
\begin{array}{cccc>{\columncolor{red!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c>{\columncolor{gray!20}}c}
1 & 1 & 0 & 0 & 0 & \phantom{0}& \phantom{0}&
\phantom{0}& \phantom{0}& \phantom{0} \\
0 & 1 & 1 & 0 & 0 & \phantom{0}& \phantom{0}&
\phantom{0}& \phantom{0}& \phantom{0} \\
1 & 1 & 0 & 1 & 1 & \phantom{0}& \phantom{0}&
\phantom{0}& \phantom{0}& \phantom{0} \\
0 & 1 & 1 & 0 & 1 & \phantom{0}& \phantom{0}&
\phantom{0}& \phantom{0}& \phantom{0}
\end{array}\right)
\end{align*}
\end{minipage}%
\begin{minipage}{0.7\textwidth}
\begin{figure}[H]
\newcommand{\preperr}[1]{\gate[style={fill=orange!20}]{##1}}
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
\newcommand{\noise}{
\gate[style={noisy}]{\text{\small X}}\setwiretype{n}
}
\newcommand{\redwire}[1]{
\wire[r][##1][style={draw=red, line width=2pt}]{q}
}
\newcommand{\redtarg}{\targ[style={draw=red}]{}\setwiretype{n}}
\newcommand{\redctrl}[1]{
\ctrl[style={draw=red,fill=red,line width=2pt}]{##1}
}
\tikzset{
noisy/.style={
starburst,
starburst point height=2.5mm,
fill=red!25, draw=red!85!black,
line width=2pt,
inner xsep=-2pt, inner ysep=-2pt
},
}
\centering
% tex-fmt: off % tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n}] \left(\begin{array}{ccccccccccccccc}
& \preperr{\phantom{1}} & \ctrl{3} & & & & \preperr{\phantom{1}} & & \ctrl{5} & & & & & \\ 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
\lstick{$\ket{\psi}$} & \preperr{\phantom{1}} & & \ctrl{2} & \ctrl{3} & & \noise\wire[l][1]{q}\redwire{7} & & & \redctrl{4} & \redctrl{5} & & & \\ 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\
& \preperr{\phantom{1}} & & & & \ctrl{2} & \preperr{\phantom{1}} & & & & & \ctrl{4} & & \\ \cc{0} & \cc{0} & \cc{0} & \cc{1} & \cc{0} & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & \preperr{\phantom{1}} & \meter{} \\ \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{1} & 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & \preperr{\phantom{1}} & \meter{} \\ \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{1} & \cc{0} & 1 & 1 & 0 & 1 & 0 \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \redtarg\wire[l][1]{q}\redwire{4} & & & \preperr{\phantom{1}} & \meter[style={draw=red,fill=red!20}]{} \\ \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{1} & 0 & 1 & 1 & 0 & 1
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \redtarg\wire[l][1]{q}\redwire{3} & \targ{} & \preperr{\phantom{1}} & \meter[style={draw=red,fill=red!20}]{}
\end{quantikz}
% tex-fmt: on
\end{figure}
\end{minipage}
}
\only<6>{
\begin{minipage}{0.3\textwidth}
\centering
\begin{align*}
\bm{H} =
\left(
\begin{array}{cccccccccc}
1 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\
0 & 1 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 \\
1 & 1 & 0 & 1 & 1 & 0 & 0 & 0 & 1 & 0 \\
0 & 1 & 1 & 0 & 1 & 1 & 0 & 0 & 0 & 1
\end{array}\right) \end{array}\right)
\end{align*}
\end{minipage}%
\begin{minipage}{0.7\textwidth}
\begin{figure}[H]
\newcommand{\preperr}[1]{\gate[style={fill=orange!20}]{##1}}
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
\newcommand{\noise}{
\gate[style={noisy}]{\text{\small X}}\setwiretype{n}
}
\newcommand{\redwire}[1]{
\wire[r][##1][style={draw=red, line width=2pt}]{q}
}
\newcommand{\redtarg}{\targ[style={draw=red}]{}\setwiretype{n}}
\newcommand{\redctrl}[1]{
\ctrl[style={draw=red,fill=red,line width=2pt}]{##1}
}
\tikzset{
noisy/.style={
starburst,
starburst point height=2.5mm,
fill=red!25, draw=red!85!black,
line width=2pt,
inner xsep=-2pt, inner ysep=-2pt
},
}
\centering
% tex-fmt: off
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={q,q,q,q,q,n,n}]
& \preperr{\phantom{1}} & \ctrl{3} & & & & \preperr{\phantom{1}} & & \ctrl{5} & & & & & \\
\lstick{$\ket{\psi}$} & \preperr{\phantom{1}} & & \ctrl{2} & \ctrl{3} & & \preperr{\phantom{1}} & & & \ctrl{4} & \ctrl{5} & & & \\
& \preperr{\phantom{1}} & & & & \ctrl{2} & \preperr{\phantom{1}} & & & & & \ctrl{4} & & \\
\lstick{$\ket{0}_{\text{A}_1}$} & & \targ{} & \targ{} & & & & & & & & & \preperr{\phantom{1}} & \meter{} \\
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & \preperr{\phantom{1}} & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_3}$} & \setwiretype{q} & \targ{} & \targ{} & & & \preperr{\phantom{1}} & \meter{} \\
& & & & & & \lstick{$\ket{0}_{\text{A}_4}$} & \setwiretype{q} & & & \targ{} & \targ{} & \preperr{\phantom{1}} & \meter{}
\end{quantikz}
% tex-fmt: on % tex-fmt: on
\end{figure} \end{align*}
\end{minipage} \end{minipage}
}
\vspace*{5mm}
\addreferences
{derks_designing_2025}
\stopreferences
\end{frame}
\begin{frame}
\frametitle{The Detector Error Matrix II}
\begin{itemize}
\item \red{Highlight SC-LDPC like structure}
\end{itemize}
\end{frame} \end{frame}
\begin{frame}[fragile] \begin{frame}[fragile]
@ -819,7 +954,8 @@
state preparation} state preparation}
\item \colorbox{red!20}{$n$-qubit X, Y or Z \item \colorbox{red!20}{$n$-qubit X, Y or Z
errors after any $n$-qubit gate} errors after any $n$-qubit gate}
\item \colorbox{blue!20}{X errors on measurement outcomes} \item \colorbox{blue!20}{X errors on
measurement outcomes}
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\end{minipage}% \end{minipage}%
@ -854,18 +990,6 @@
\stopreferences \stopreferences
\end{frame} \end{frame}
\begin{frame}
\frametitle{Example: 3-Qubit Repetition Code Detector\\ Error
Model for Circuit Level Noise}
\begin{itemize}
\item New Syndrome Extraction Circuitry \red{Is a
repetition of the old circuitry needed?}
\item New parity check matrix
\item Highlighting of the SC-LDPC-code-like structure
\end{itemize}
\end{frame}
\begin{frame} \begin{frame}
\frametitle{Challenges} \frametitle{Challenges}