1352 lines
61 KiB
TeX
1352 lines
61 KiB
TeX
\documentclass[overviewatsection, showsubsectionsatfirstoverview]{CELbeamer}
|
|
|
|
%
|
|
%
|
|
% CEL Template
|
|
%
|
|
%
|
|
|
|
\newcommand{\templates}{preambles}
|
|
\input{\templates/packages.tex}
|
|
\input{\templates/macros.tex}
|
|
|
|
\grouplogo{CEL_logo.pdf}
|
|
|
|
\groupname{Communications Engineering Lab (CEL)}
|
|
|
|
\fundinglogos{}
|
|
|
|
%
|
|
%
|
|
% Document setup
|
|
%
|
|
%
|
|
|
|
\usepackage{tikz}
|
|
\usepackage{tikz-3dplot}
|
|
\usetikzlibrary{spy, external, intersections, positioning}
|
|
|
|
% \ifdefined\ishandout\else
|
|
\tikzexternalize
|
|
% \fi
|
|
|
|
\usepackage{pgfplots}
|
|
\pgfplotsset{compat=newest}
|
|
\usepgfplotslibrary{fillbetween}
|
|
\usepgfplotslibrary{groupplots}
|
|
|
|
\usepackage{enumerate}
|
|
\usepackage{listings}
|
|
\usepackage{subcaption}
|
|
\usepackage{bbm}
|
|
\usepackage{multirow}
|
|
\usepackage[table]{xcolor}
|
|
\usepackage{amsmath}
|
|
\usepackage{graphicx}
|
|
\usepackage{calc}
|
|
\usepackage{amssymb}
|
|
\usepackage{acro}
|
|
\usepackage{braket}
|
|
% \usepackage{qcircuit}
|
|
\usepackage{quantikz}
|
|
|
|
\title{Fault Tolerant Quantum Error Correction}
|
|
\subtitle{Master's Thesis Midterm Presentation}
|
|
\author[Tsouchlos]{Andreas Tsouchlos}
|
|
\date[]{February 5th, 2026}
|
|
|
|
\DeclareFieldFormat{note}{}
|
|
\DeclareFieldFormat{issn}{}
|
|
\DeclareFieldFormat{url}{}
|
|
\DeclareFieldFormat{doi}{}
|
|
\DeclareFieldFormat[article,book,inproceedings]{urldate}{}
|
|
|
|
\addbibresource{MA.bib}
|
|
|
|
%
|
|
%
|
|
% Custom commands
|
|
%
|
|
%
|
|
|
|
\newcommand{\red}[1]{\textcolor{red}{#1}}
|
|
\newcommand{\res}{src/midterm_presentation/res}
|
|
|
|
%
|
|
%
|
|
% Acronyms
|
|
%
|
|
%
|
|
|
|
\DeclareAcronym{qec}{
|
|
short=QEC,
|
|
long=quantum error correction
|
|
}
|
|
|
|
\DeclareAcronym{css}{
|
|
short=CSS,
|
|
long=Calderbank Shor Steane
|
|
}
|
|
|
|
\DeclareAcronym{bb}{
|
|
short=BB,
|
|
long=bivariate bicycle
|
|
}
|
|
|
|
\DeclareAcronym{dem}{
|
|
short=DEM,
|
|
long=detector error model
|
|
}
|
|
|
|
\DeclareAcronym{bp}{
|
|
short=BP,
|
|
long=belief propagation
|
|
}
|
|
|
|
%
|
|
%
|
|
% Document body
|
|
%
|
|
%
|
|
|
|
\begin{document}
|
|
|
|
\begin{frame}[title white vertical, picture=images/IMG_7801-cut]
|
|
\titlepage
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section{Introduction to Quantum Error Correction}
|
|
\label{sec:Introduction to Quantum Error Correction}
|
|
|
|
%%%%%%%%%%%%%%%%
|
|
\subsection{Motivation}
|
|
\label{subsec:Motivation}
|
|
|
|
\begin{frame}
|
|
\frametitle{Quantum Computing}
|
|
|
|
% Related interesting stuff
|
|
% - Gidney estimates we need 1399 (?) logical qubits to factor a 2048
|
|
% bit RSA integer
|
|
% - He goes on to estimate that to factor such an integer in less
|
|
% than a week would require around a million physical qubits
|
|
% [How to factor 2048 bit RSA integers with less than a million
|
|
% noisy qubits]
|
|
|
|
\vspace*{-15mm}
|
|
|
|
\begin{itemize}
|
|
\item Simulating quantum systems on classical hardware
|
|
is exponentially complex \\
|
|
$\rightarrow$ Can't we use quantum hardware to simulate
|
|
quantum systems? \citereference{feynman_simulating_1982}
|
|
\item Some problems that are ``hard'' to solve on classical
|
|
computers we can ``easily'' solve on quantum computers
|
|
\citereference{preskill_quantum_2018}
|
|
\end{itemize}
|
|
|
|
\vspace*{-5mm}
|
|
|
|
\begin{figure}[H]
|
|
\centering
|
|
|
|
\includegraphics[scale=0.43]{res/google_roadmap.png}
|
|
|
|
\vspace*{-3mm}
|
|
\caption{
|
|
Google Quantum AI's quantum computing roadmap
|
|
\citereference{google_quantum_ai_quantum_nodate}.
|
|
}
|
|
\end{figure}
|
|
|
|
\vspace*{3mm}
|
|
|
|
\addreferences
|
|
{feynman_simulating_1982}
|
|
{preskill_quantum_2018}
|
|
{google_quantum_ai_quantum_nodate}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
% TODO: Where should I quote Preskill? There are multiple bullet
|
|
% points with info taken from his work
|
|
\begin{frame}
|
|
\frametitle{The Need for Quantum Error Correction}
|
|
|
|
\vspace*{-17mm}
|
|
|
|
% Related interesting stuff
|
|
% - Qubits differ from bits in that they can be in superpositions
|
|
% and be entangled with one another
|
|
% - Quantum computers derive their strenght from the exponential
|
|
% scaling of the state-space because of the way the information is
|
|
% encoded
|
|
% - Note that while a physical error rate of 10^{-3} may seem ok,
|
|
% we need a couple trillion operations (~ 10^{13}) to factor a
|
|
% 2048 bit RSA integer
|
|
% [How to factor 2048 bit RSA integers with less than a million
|
|
% noisy qubits]
|
|
% - The "physical error rate" is really the value all error rates
|
|
% in the system are set to for circuit level noise simulations
|
|
% [High-threshold universal quantum computation on the surface code]
|
|
% - The backlog problem is the fact that an increasing backlog of
|
|
% syndrome data will lead to an exponential slowdown during the
|
|
% computation
|
|
|
|
\begin{itemize}
|
|
\item Quantum computers represent information through
|
|
correlations of qubits, not their values \\
|
|
directly \citereference{preskill_quantum_2018}
|
|
\item Errors during quantum computation are inevitable
|
|
because quantum systems are fragile
|
|
\item We want to interact with the quantum state but not disturb it
|
|
\item We employ more physical qubits to introduce
|
|
redundancy and use the resulting \emph{physical} state to
|
|
represent the \emph{logical} state
|
|
\citereference{roffe_quantum_2019}
|
|
\vspace*{8mm}
|
|
\item Typical scales
|
|
\begin{itemize}
|
|
\item IBM recently introduced a scheme encoding $12$ logical
|
|
qubits in $288$ physical ones
|
|
\citereference{bravyi_high-threshold_2024}
|
|
\item The physical error rate is typically assumed to
|
|
be $10^{-3}$ for
|
|
simulations (e.g.,
|
|
\citereference{bravyi_high-threshold_2024})
|
|
\item Decoding has to happen with ultra-low latency to avoid
|
|
the backlog problem (about $\SI{1}{us}$ per data
|
|
extraction round) \citereference{caune_demonstrating_2024}
|
|
% \citereference{terhal_quantum_2015}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
|
|
\vspace*{7mm}
|
|
|
|
\addreferences
|
|
% {terhal_quantum_2015}
|
|
{preskill_quantum_2018}
|
|
{roffe_quantum_2019}
|
|
{bravyi_high-threshold_2024}
|
|
{caune_demonstrating_2024}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%
|
|
\subsection{Fundamentals of Quantum Error Correction}
|
|
\label{subsec:Fundamentals of Quantum Error Correction}
|
|
|
|
% TODO: Is this all of this really necessary?
|
|
\begin{frame}
|
|
\frametitle{Peculiarities of the Quantum Setting}
|
|
|
|
\vspace*{-18mm}
|
|
|
|
% Related interesting stuff
|
|
% - No cloning theorem -> Not replication of state, protection
|
|
% through further entanglement
|
|
% - States are superpositions -> We theoretically need to be able
|
|
% to correct infinitely many different types of errors. Luckily,
|
|
% it turns out that in actual fact we only really need to correct
|
|
% two [Gottesman's Thesis]
|
|
% - Mention that kets are just vectors, used here to represent the state
|
|
% - There are actually infinitely many different errors that can
|
|
% happen, but we can digitize them and only need to consider X and Z
|
|
% - Not only do we only care about the coset, we specifically
|
|
% don't want to know more than the syndrome can tell us because
|
|
% that would mean that "we collapse the quantum mechanical state too
|
|
% much"
|
|
|
|
\begin{itemize}
|
|
\item \Ac{qec} is actually able to protect the actual quantum state
|
|
\item Similar to bits and gates, quantum systems are built on
|
|
top of qubits and quantum gates
|
|
\item We have to consider phase flip errors in addition to
|
|
bit flip errors \citereference{roffe_quantum_2019}
|
|
\end{itemize}
|
|
|
|
\vspace*{-3mm}
|
|
|
|
\begin{figure}[H]
|
|
\centering
|
|
\begin{subfigure}{0.32\textwidth}
|
|
\centering
|
|
|
|
\begin{align*}
|
|
\ket{0} &\rightarrow \ket{1} \\
|
|
\ket{1} &\rightarrow \ket{0}
|
|
\end{align*}
|
|
|
|
\caption{Bit flip (X) error}
|
|
\end{subfigure}%
|
|
\begin{subfigure}{0.32\textwidth}
|
|
\centering
|
|
|
|
\begin{align*}
|
|
\ket{0} &\rightarrow \phantom{-}\ket{0} \\
|
|
\ket{1} &\rightarrow -\ket{1}
|
|
\end{align*}
|
|
|
|
\caption{Phase flip (Z) error}
|
|
\end{subfigure}%
|
|
\begin{subfigure}{0.32\textwidth}
|
|
\centering
|
|
|
|
\begin{align*}
|
|
\ket{0} &\rightarrow \phantom{-j}\ket{1} \\
|
|
\ket{1} &\rightarrow -j\ket{0}
|
|
\end{align*}
|
|
|
|
\caption{Y error: Combination of X and Z}
|
|
\end{subfigure}
|
|
\end{figure}
|
|
|
|
\vspace*{-3mm}
|
|
|
|
\begin{itemize}
|
|
\item Measuring the qubits directly destroys superpositions
|
|
and entanglement \\
|
|
$\rightarrow$ We generally only work with the syndrome,
|
|
which we can measure \citereference{nielsen_quantum_2010}
|
|
\item Sometimes superposition permits multiple equivalent
|
|
solutions to the decoding problem (\emph{quantum
|
|
degeneracy}) \citereference{roffe_decoding_2020}
|
|
\end{itemize}
|
|
|
|
\vspace*{7mm}
|
|
|
|
\addreferences
|
|
{nielsen_quantum_2010}
|
|
{roffe_quantum_2019}
|
|
{roffe_decoding_2020}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Stabilizer and Calderbank Shor Steane Codes}
|
|
|
|
\vspace*{-5mm}
|
|
|
|
% Related interesting stuff
|
|
% - Using stabilizers to describe quantum codes is a bit like
|
|
% using parity check equations to describe classical codes
|
|
% -> stabilizer codes are the quantum analog of binary linear codes
|
|
% - For CSS codes, "the parity checks for the X errors and the
|
|
% parity checks for the Z errors can be represented independently
|
|
% of one another"
|
|
|
|
\begin{itemize}
|
|
\item Stabilizer codes \citereference{nielsen_quantum_2010}
|
|
\begin{itemize}
|
|
\item The code space can implicitly be defined using
|
|
\emph{stabilizer generators}
|
|
\item We can represent them using parity
|
|
check matrices
|
|
\item Quantum analog of linear codes
|
|
\end{itemize}
|
|
\vspace*{10mm}
|
|
\item \Ac{css} codes \citereference{nielsen_quantum_2010}
|
|
\begin{itemize}
|
|
\item Subset of stabilizer codes
|
|
\item Can correct X and Z errors independently
|
|
\item Described using two separate parity check
|
|
matrices $\bm{H}_\text{X}$ and $\bm{H}_\text{Z}$
|
|
\item Can be constructed from two binary linear codes
|
|
$\mathcal{C}_1 \left[ n, k_1 \right]$ and
|
|
$\mathcal{C}_2 \left[ n, k_2 \right]$ with
|
|
$\mathcal{C}_2 \subset \mathcal{C}_1$
|
|
\end{itemize}
|
|
\end{itemize}
|
|
|
|
\vspace*{20mm}
|
|
|
|
\addreferences
|
|
{nielsen_quantum_2010}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
% TODO: Do I need to show what the syndrome extraction circuitry for
|
|
% Z errors looks like?
|
|
\begin{frame}
|
|
\frametitle{Syndrome Extraction Circuits}
|
|
|
|
\vspace*{-16mm}
|
|
|
|
\begin{itemize}
|
|
\item We entangle the state with \emph{ancilla qubits} to
|
|
perform syndrome measurements \citereference{nielsen_quantum_2010}
|
|
\item \red{Do I need to show what the syndrome extraction
|
|
circuitry for Z errors looks like?}
|
|
\item Example: The 3-qubit repetition code%
|
|
\footnote {
|
|
Note that, for simplicity, this chosen example is a
|
|
code that is only able to correct X errors (bit flips)
|
|
} %
|
|
\end{itemize}
|
|
|
|
\vspace*{-10mm}
|
|
|
|
\begin{align*}
|
|
\bm{H} =
|
|
\begin{pmatrix}
|
|
1 & 1 & 0 \\
|
|
0 & 1 & 1
|
|
\end{pmatrix}
|
|
\end{align*}
|
|
|
|
\vspace*{5mm}
|
|
|
|
\begin{figure}[H]
|
|
% \newcommand{\anyerrgate}{\gate[style={fill=red!20}]{\mathcal{E}_\text{XYZ}}}
|
|
\newcommand{\preperr}{\gate[style={fill=orange!20}]{\phantom{1}}}
|
|
\newcommand{\gateerr}{\gate[style={fill=red!20}]{\phantom{1}}}
|
|
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
|
|
|
|
\centering
|
|
% tex-fmt: off
|
|
\begin{quantikz}%[row sep=4mm, column sep=4mm]
|
|
& \ctrl{3} & & & & & \\
|
|
\lstick{$\ket{\psi}$} & & \ctrl{2} & \ctrl{3} & & & \\
|
|
& & & & \ctrl{2} & & \\
|
|
\lstick{$\ket{0}_{\text{A}_1}$} & \targ{} & \targ{} & & & \meter{} \\
|
|
\lstick{$\ket{0}_{\text{A}_2}$} & & & \targ{} & \targ{} & \meter{}
|
|
\end{quantikz}
|
|
% tex-fmt: on
|
|
% \caption{Circuit-level noise model for the 3-qubit repetition code}
|
|
\end{figure}
|
|
|
|
% \vspace*{5mm}
|
|
\vspace*{-2mm}
|
|
|
|
\addreferences
|
|
{nielsen_quantum_2010}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section{Fault Tolerance and Detector Error Models}
|
|
\label{sec:Fault Tolerance and Detector Error Models}
|
|
|
|
%%%%%%%%%%%%%%%%
|
|
\subsection{Fault Tolerance}
|
|
\label{subsec:Fault Tolerance}
|
|
|
|
% TODO: Fix journal for {shor_fault-tolerant_1997} not showing
|
|
\begin{frame}
|
|
\frametitle{Fault Tolerance}
|
|
|
|
\vspace*{-15mm}
|
|
|
|
\begin{itemize}
|
|
\item The quantum gates we use for syndrome extraction are
|
|
faulty themselves \\
|
|
$\rightarrow$ We need \emph{fault-tolerant} \ac{qec}
|
|
\item A \ac{qec} procedure is said to be fault tolerant if,
|
|
in addition to correcting \emph{input errors}, the spread
|
|
of \emph{internal errors} is sufficiently limited
|
|
\citereference{derks_designing_2025}
|
|
\end{itemize}
|
|
|
|
\vspace*{3mm}
|
|
|
|
\begin{figure}[H]
|
|
\centering
|
|
|
|
\begin{tikzpicture}
|
|
\node[rectangle, draw, fill=orange!20, minimum
|
|
height=3cm, minimum width=3.5cm, align=left] at (0,0)
|
|
(internal) {Internal\\ Errors};
|
|
|
|
\node[signal, draw, fill=blue!20, minimum height=3cm,
|
|
minimum width=4cm, align=left, signal pointer angle=140]
|
|
at (-3.7, 0) (input) {Input\\ Errors};
|
|
|
|
\node at (2.5,0) {\huge =};
|
|
|
|
\node[rectangle, draw, fill=red!20, minimum height=3cm,
|
|
minimum width=3.5cm, align=left] at (5,0) (output)
|
|
{Output\\ Errors};
|
|
|
|
\node[above] at (input.north) {\small Input State};
|
|
\node[above] at (internal.north) {\small QEC};
|
|
\node[above] at (output.north) {\small Output State};
|
|
\end{tikzpicture}
|
|
\end{figure}
|
|
|
|
\vspace*{3mm}
|
|
|
|
\begin{itemize}
|
|
\item We have to modify the syndrome extraction circuitry to
|
|
be fault tolerant (e.g., by using specially prepared
|
|
multi-qubit states for each ancilla
|
|
\citereference{shor_fault-tolerant_1997})
|
|
\item We generally perform multiple rounds of syndrome extraction
|
|
\end{itemize}
|
|
|
|
\vspace*{10mm}
|
|
|
|
\addreferences
|
|
{shor_fault-tolerant_1997}
|
|
{derks_designing_2025}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%
|
|
\subsection{Detector Error Models}
|
|
\label{subsec:Detector Error Models}
|
|
|
|
\begin{frame}[fragile]
|
|
\frametitle{The Measurement Syndrome Matrix I}
|
|
|
|
\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 \\
|
|
(Only bit flips on data qubits)
|
|
\end{itemize}
|
|
|
|
\vspace*{-28mm}
|
|
|
|
\centering
|
|
\only<1>{
|
|
\begin{minipage}{0.4\textwidth}
|
|
\centering
|
|
\begin{align*}
|
|
\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)
|
|
\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}}}
|
|
|
|
\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} & & & & & & \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{} \\
|
|
\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{} \\
|
|
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_5}$} & \setwiretype{q} & \targ{} & \targ{} & & & \meter{} \\
|
|
& & & & & & & & & & & & \lstick{$\ket{0}_{\text{A}_6}$} & \setwiretype{q} & & & \targ{} & \targ{} & \meter{}
|
|
\end{quantikz}
|
|
% tex-fmt: on
|
|
\end{figure}
|
|
\end{minipage}
|
|
}
|
|
\only<2>{
|
|
\begin{minipage}{0.4\textwidth}
|
|
\centering
|
|
\begin{align*}
|
|
\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)
|
|
\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}]
|
|
& \noise\redwire{17} & \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 \\
|
|
\lstick{$\ket{0}_{\text{A}_2}$} & & & & \targ{} & \targ{} & & & & & & & & & & & & & \meter{} \\
|
|
& & & & & & \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}_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 Syndromemani 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}
|
|
% tex-fmt: on
|
|
\end{figure}
|
|
\end{minipage}
|
|
}
|
|
\only<3>{
|
|
\begin{minipage}{0.4\textwidth}
|
|
\centering
|
|
|
|
\newcommand{\pz}{\phantom{0}}
|
|
|
|
\scalebox{0.85}{
|
|
\parbox{.5\linewidth}{%
|
|
\begin{align*}
|
|
\bm{\Omega} =
|
|
\left(
|
|
\begin{array}{
|
|
cccccc%
|
|
>{\columncolor{red!20}}c%
|
|
cccccccc
|
|
}
|
|
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} & & \noise\redwire{13} & & & \redctrl{4} & \redctrl{5} & & \preperr{E_{11}} & & & \redctrl{6} & \redctrl{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{} & \redtarg\redwire{10} & & & & & & & & & \preperr{E_8} & \redmeter \\
|
|
& & & & & & \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}
|
|
% tex-fmt: on
|
|
\end{figure}
|
|
\end{minipage}
|
|
}
|
|
|
|
\vspace*{2mm}
|
|
|
|
\addreferences
|
|
{derks_designing_2025}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
% TODO: Journal not showing for derks_designing_2025
|
|
\begin{frame}
|
|
\frametitle{The Detector Error Matrix I}
|
|
|
|
\vspace*{-17mm}
|
|
|
|
\begin{itemize}
|
|
\item A detector is a parity constraint on a set of
|
|
measurement outcomes \citereference{derks_designing_2025}
|
|
\item Each column of the \emph{detector error matrix} $\bm{H}$
|
|
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]
|
|
\centering
|
|
|
|
% tex-fmt: off
|
|
\begin{quantikz}[row sep=4mm, column sep=4mm, wire types={n,n,n,n,n,n}]
|
|
& \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & & \ctrl[vertical wire=c]{2} & & \gate{D_1} \\
|
|
& \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & & & \ctrl[vertical wire=c]{2} & \gate{D_2} \\
|
|
& \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & \ctrl[vertical wire=c]{2} & & \targ{} & & \gate{D_3} \\
|
|
& \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & \ctrl[vertical wire=c]{2} & & \targ{} & \gate{D_4} \\
|
|
& \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & \targ{} & & & & \gate{D_5} \\
|
|
& \meter{}\wire[l][1]{q}\wire[r][1]{c} & \setwiretype{c} & & \targ{} & & & \gate{D_6}
|
|
\end{quantikz}
|
|
% tex-fmt: on
|
|
\end{figure}
|
|
\end{minipage}%
|
|
\begin{minipage}{0.5\textwidth}
|
|
\newcommand\cc{\cellcolor{blue!20}}
|
|
|
|
\begin{align*}
|
|
\bm{H} =
|
|
% tex-fmt: off
|
|
\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 \\
|
|
\cc{0} & \cc{0} & \cc{0} & \cc{1} & \cc{0} & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\
|
|
\cc{0} & \cc{0} & \cc{0} & \cc{0} & \cc{1} & 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 \\
|
|
\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 \\
|
|
\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
|
|
\end{array}\right)
|
|
% tex-fmt: on
|
|
\end{align*}
|
|
\end{minipage}
|
|
|
|
\vspace*{5mm}
|
|
|
|
\addreferences
|
|
{derks_designing_2025}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{The Detector Error Matrix II}
|
|
|
|
\vspace*{-17mm}
|
|
|
|
\begin{itemize}
|
|
\item Visualization of general process \red{Deal with 3-qubit
|
|
state (somehow represent arbitrary qubit state)}
|
|
\end{itemize}
|
|
|
|
\vspace*{5mm}
|
|
|
|
\begin{figure}[H]
|
|
\centering
|
|
|
|
\tikzset{
|
|
gate/.style={
|
|
draw, %line width=1pt,
|
|
minimum height=2cm,
|
|
}
|
|
}
|
|
|
|
% tex-fmt: off
|
|
\begin{quantikz}[row sep=2mm, column sep=4mm, wire types={q,q,q,n,n,n}]
|
|
& \gate[3]{SE_1} & & \gate[3]{SE_2} & & \gate[3]{SE_3} & & \gate[3]{SE_4} & \\
|
|
\lstick{$\ket{\psi}$} & & & & & & & & & \setwiretype{n} & \ldots \\
|
|
& \wire[d][3]{c} & & \wire[d][1]{c} & & \wire[d][1]{c} & & \wire[d][1]{c} & \\
|
|
& \ctrl[wire=c]{0}\wire[r][1]{c} & \wire[d][1]{c} & \ctrl[vertical wire=c]{1}\wire[r][1]{c} & \wire[d][1]{c} & \ctrl[vertical wire=c]{1}\wire[r][1]{c} & \wire[d][1]{c} & \ctrl[vertical wire=c]{1}\wire[r][1]{c} & \\
|
|
& & \wire[r][1]{c} & \targ{}\wire[d][1]{c} & \wire[r][1]{c} & \targ{}\wire[d][1]{c} & \wire[r][1]{c} & \targ{}\wire[d][1]{c} & \\
|
|
& \gate[1]{\bm{D}_1} & & \gate[1]{\bm{D}_2} & & \gate[1]{\bm{D}_3} & & \gate[1]{\bm{D}_4} & \\
|
|
\end{quantikz}
|
|
% tex-fmt: on
|
|
\end{figure}
|
|
|
|
\begin{itemize}
|
|
\item E.g., for \ac{bb} codes, the resulting detector
|
|
error matrix under circuit-level noise has the form
|
|
\citereference{gong_toward_2024}
|
|
\end{itemize}
|
|
|
|
\vspace*{-15mm}
|
|
|
|
\begin{align*}
|
|
\bm{H} =
|
|
\begin{pmatrix}
|
|
\bm{H}_0 & \bm{H}_1 & \bm{0} & \bm{0} & \bm{0}
|
|
& \bm{0} & \cdots \\
|
|
\bm{0} & \bm{H}_2 & \bm{H}_0 & \bm{H}_1 & \bm{0}
|
|
& \bm{0} & \\
|
|
\bm{0} & \bm{0} & \bm{0} & \bm{H}_2 & \bm{H}_0
|
|
& \bm{H}_1 & \\
|
|
\bm{0} & \bm{0} & \bm{0} & \bm{0} & \bm{0}
|
|
& \bm{H}_2 & \\
|
|
\vdots & & & &
|
|
& & \ddots
|
|
\end{pmatrix}
|
|
\end{align*}
|
|
|
|
\vspace*{3mm}
|
|
|
|
\addreferences
|
|
{gong_toward_2024}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
\begin{frame}[fragile]
|
|
\frametitle{Noise Model Types}
|
|
|
|
% Related interesting stuff
|
|
% - The difference between an n-qubit error and multiple
|
|
% simultaneous single-qubit errors is that in the n-qubit case,
|
|
% the errors can be correlated (e.g., XX more probable than XI)
|
|
|
|
\vspace*{-15mm}
|
|
|
|
\begin{itemize}
|
|
\item The noise model assigns a likelihood to the occurrence
|
|
of each error
|
|
\end{itemize}
|
|
|
|
\vspace*{7mm}
|
|
|
|
\begin{minipage}{0.60\textwidth}
|
|
\begin{itemize}
|
|
\item The \emph{depolarizing channel} considers
|
|
\citereference{nielsen_quantum_2010}
|
|
\begin{itemize}
|
|
\item X, Y or Z errors on the data qubits
|
|
\end{itemize}
|
|
\item \emph{Phenomenological noise} considers
|
|
\citereference{derks_designing_2025}
|
|
\begin{itemize}
|
|
\item X errors on data qubits before each \\
|
|
measurement round
|
|
\item X errors on measurement outcomes
|
|
\end{itemize}
|
|
\item \emph{Circuit-level noise} considers
|
|
\citereference{derks_designing_2025}
|
|
\begin{itemize}
|
|
\item \colorbox{orange!20}{X, Y or Z errors after
|
|
state preparation}
|
|
\item \colorbox{red!20}{$n$-qubit X, Y or Z
|
|
errors after any $n$-qubit gate}
|
|
\item \colorbox{blue!20}{X errors on
|
|
measurement outcomes}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
\end{minipage}%
|
|
\hfill%
|
|
\begin{minipage}{0.39\textwidth}
|
|
\begin{figure}[H]
|
|
\newcommand{\preperr}{\gate[style={fill=orange!20}]{\phantom{1}}}
|
|
\newcommand{\gateerr}{\gate[style={fill=red!20}]{\phantom{1}}}
|
|
\newcommand{\measerr}{\gate[style={fill=blue!20}]{\phantom{1}}}
|
|
|
|
\hspace*{-18mm}
|
|
% tex-fmt: off
|
|
\begin{quantikz}[row sep=2mm, column sep=2mm]
|
|
& \preperr & \ctrl{3} & \gateerr \wire[d][3]{q} & & & & & & & & & \\
|
|
\lstick{$\ket{\psi}$} & \preperr & & & \ctrl{2} & \gateerr \wire[d][2]{q} & \ctrl{3} & \gateerr \wire[d][3]{q} & & & & & \\
|
|
& \preperr & & & & & & & \ctrl{2} & \gateerr \wire[d][2]{q} & & & \\
|
|
\lstick{$\ket{0}_{\text{A}_1}$} & \preperr & \targ{} & \gateerr & \targ{} & \gateerr & & & & & \measerr & \meter{} \\
|
|
\lstick{$\ket{0}_{\text{A}_2}$} & \preperr & & & & & \targ{} & \gateerr & \targ{} & \gateerr & \measerr & \meter{}
|
|
\end{quantikz}
|
|
% tex-fmt: on
|
|
|
|
\caption{Circuit-level noise model for the 3-qubit
|
|
repetition code (for X errors)}
|
|
\end{figure}
|
|
\end{minipage}
|
|
|
|
\vspace*{10mm}
|
|
|
|
\addreferences
|
|
{nielsen_quantum_2010}
|
|
{derks_designing_2025}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Decoding using Detector Error Models}
|
|
|
|
\begin{itemize}
|
|
\item A \ac{dem} combines a detector error matrix and a noise model
|
|
\item The likelihoods of different error locations can be
|
|
used as priors for decoding
|
|
\vspace*{5mm}
|
|
\item Challenges
|
|
\begin{itemize}
|
|
\item Repeated syndrome measurements come with
|
|
increased decoding complexity
|
|
\citereference{gong_toward_2024}
|
|
\item Degeneracy and short cycles lead to degraded
|
|
performance of \ac{bp} \citereference{babar_fifteen_2015}
|
|
\end{itemize}
|
|
\end{itemize}
|
|
|
|
\vspace*{20mm}
|
|
|
|
\addreferences
|
|
{babar_fifteen_2015}
|
|
{gong_toward_2024}
|
|
\stopreferences{}
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\section{State of the Art and Research Gap}
|
|
\label{sec:State of the Art and Research Gap}
|
|
|
|
%%%%%%%%%%%%%%%%
|
|
\subsection{State of the Art}
|
|
\label{subsec:State of the Art}
|
|
|
|
\begin{frame}
|
|
\frametitle{Sliding Window Decoding}
|
|
|
|
\begin{itemize}
|
|
% TODO: Do I have to explain BP?
|
|
\item \red{Do I have to explain BP}
|
|
\item Give overview of existing research
|
|
\item Explain exactly what they do in the main paper I am
|
|
basing my work on
|
|
\item \red{$\rightarrow$ We generally don't use "normal BP"
|
|
(BP + OSD, BPGD, etc.)}
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Guided Decimation Guessing Decoding}
|
|
|
|
\begin{itemize}
|
|
\item Update equations
|
|
\item Key ideas
|
|
\item Syndrome Based BP
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Memory experiments}
|
|
|
|
\begin{itemize}
|
|
\item What is a memory experiment?
|
|
\item Communications Engineering view (what are my inputs and
|
|
outpus? What do I expect?)
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Systemic overview}
|
|
|
|
\begin{itemize}
|
|
\item Top level overview of entire system: X and Z syndrome
|
|
extraction, logical operator measurement, where decoding
|
|
takes place, etc. (fig. 3 of
|
|
\citereference{derks_designing_2025})
|
|
\item For circuit-level noise, often, all error probabilities
|
|
are set to the same value for simulations
|
|
\citereference{fowler_high-threshold_2009}. There are
|
|
other approaches (e.g., SDMB noise, SI noise)
|
|
\citereference{derks_designing_2025}
|
|
\end{itemize}
|
|
|
|
\vspace*{15mm}
|
|
|
|
\addreferences
|
|
{derks_designing_2025}
|
|
{fowler_high-threshold_2009}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Research Gap}
|
|
|
|
\begin{itemize}
|
|
\item Use soft information for sliding window decoding
|
|
$\rightarrow$ Treat as spacially coupled LDPC code
|
|
\item Current work considers X and Z errors separately
|
|
(probably for latency reasons) $\rightarrow$ See how
|
|
decoding the jointly works out
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
%%%%%%%%%%%%%%%%
|
|
\subsection{What we simulate}
|
|
\label{subsec:What we simulate}
|
|
|
|
\begin{frame}
|
|
\frametitle{The lack of a Standard Evaluation System}
|
|
|
|
\begin{itemize}
|
|
\item \red{Look into ECCentric}
|
|
\item There is not even a standard figure of merit (e.g.,
|
|
FER/BER over SNR in classical case) $\rightarrow$
|
|
Multiple different kinds of plots (e.g., footprint)
|
|
\item Overview of variables
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}
|
|
\frametitle{Proposed Evaluation Pipeline}
|
|
|
|
\begin{itemize}
|
|
\item To what values I will fix the parameters and why
|
|
\item What figure of merit I will use and why
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\begin{frame}[t]
|
|
\frametitle{Questions}
|
|
|
|
\begin{minipage}[c]{0.65\textwidth}
|
|
\centering
|
|
|
|
\LARGE Thank you for your attention!\\ Any questions?
|
|
\end{minipage}%
|
|
\begin{minipage}[c]{0.35\textwidth}
|
|
\centering
|
|
\begin{figure}[H]
|
|
\centering
|
|
|
|
\begin{tikzpicture}[every node/.style={scale=10}]
|
|
\node at (0, 0)
|
|
{\textcolor{kit-blue}{{\fontfamily{phv}\selectfont ?}}};
|
|
\end{tikzpicture}
|
|
\end{figure}
|
|
\end{minipage}
|
|
|
|
\end{frame}
|
|
|
|
\appendix
|
|
\beginbackup
|
|
|
|
% TODO: Move arrow into syndrome extraction lower (branch from other
|
|
% arrow) and change caption to "modified from [MSLS25]"
|
|
\begin{frame}
|
|
\frametitle{System Level Overview}
|
|
|
|
\vspace*{-15mm}
|
|
|
|
\begin{figure}[H]
|
|
\centering
|
|
\begin{subfigure}[t]{0.5\textwidth}
|
|
\centering
|
|
|
|
\includegraphics[scale=1.1]{res/architecture}
|
|
|
|
\vspace*{5mm}
|
|
|
|
\caption{Schematic workflow of surface code quantum
|
|
computation \citereference{zhang_classical_2023}.}
|
|
\end{subfigure}%
|
|
\begin{subfigure}[t]{0.5\textwidth}
|
|
\centering
|
|
|
|
\tikzset{
|
|
block/.style={
|
|
draw, rectangle,
|
|
fill = kit-blue!25,
|
|
minimum width=75mm, minimum height=15mm,
|
|
}
|
|
}
|
|
|
|
\scalebox{0.7}{
|
|
\begin{tikzpicture}[node distance=15mm and 20mm]
|
|
\node[block] (encoding) {Encoding};
|
|
\node[block, below=of encoding] (channel)
|
|
{Quantum Channel};
|
|
\node[block, below=of channel] (reverse-op)
|
|
{Reverse Operation};
|
|
|
|
\node[block, right=of channel] (syn-extr)
|
|
{Syndrome Extraction};
|
|
\node[block, below=of syn-extr] (syn-dec)
|
|
{Syndrome Decoder};
|
|
|
|
\node[above=of encoding] (input) {$\ket{\phi}$};
|
|
\node[below=of reverse-op] (output)
|
|
{$\hat{\mathcal{E}}\mathcal{E}\ket{\psi}$};
|
|
|
|
\draw [-{Latex}] (encoding) -- (channel) node[midway,
|
|
right] {$\ket{\psi}$};
|
|
\draw [-{Latex}] (channel) -- (reverse-op)
|
|
node[midway, right] {$\mathcal{E}\ket{\psi}$};
|
|
\draw [-{Latex}] (channel) -- (syn-extr)
|
|
node[midway, above] {$\mathcal{E}\ket{\psi}$};
|
|
\draw [-{Latex}] (syn-extr) -- (syn-dec)
|
|
node[midway, right] {$z$};
|
|
\draw [-{Latex}] (syn-dec) -- (reverse-op)
|
|
node[midway, above] {$\hat{\mathcal{E}}$};
|
|
|
|
\draw [-{Latex}] (input) -- (encoding);
|
|
\draw [-{Latex}] (reverse-op) -- (output);
|
|
\end{tikzpicture}
|
|
}
|
|
|
|
\vspace*{5mm}
|
|
|
|
\caption{Block diagram of QEC using stabilizer codes
|
|
\citereference{miao_quaternary_2025}.}
|
|
\end{subfigure}
|
|
\end{figure}
|
|
|
|
% \vspace*{-2mm}
|
|
|
|
\addreferences
|
|
{zhang_classical_2023}
|
|
{miao_quaternary_2025}
|
|
\stopreferences
|
|
\end{frame}
|
|
|
|
% TODO: Is this really necessary?
|
|
\begin{frame}
|
|
\frametitle{The Quantum Error Correction Landscape}
|
|
|
|
\begin{itemize}
|
|
\item Give basic overview of most promising avenues of
|
|
research (as in ECCentric paper)
|
|
\end{itemize}
|
|
\end{frame}
|
|
|
|
\backupend
|
|
|
|
\end{document}
|
|
|