Add dirty version of qubits and multi-qubit states

This commit is contained in:
2026-04-19 19:07:26 +02:00
parent 6483eaa781
commit 9ec70050ef
2 changed files with 187 additions and 99 deletions

View File

@@ -1563,3 +1563,38 @@ We study the performance of medium-length quantum LDPC (QLDPC) codes in the depo
pages = {429--445},
file = {Available Version (via Google Scholar):/home/andreas/workspace/work/hiwi/Zotero/storage/BYT9IHNL/Hagenauer et al. - 2002 - Iterative decoding of binary block and convolutional codes.pdf:application/pdf},
}
@article{kang_quits_2025,
title = {{QUITS}: {A} modular {Qldpc} code {circUIT} {Simulator}},
volume = {9},
issn = {2521-327X},
shorttitle = {{QUITS}},
url = {http://arxiv.org/abs/2504.02673},
doi = {10.22331/q-2025-12-05-1931},
abstract = {To achieve quantum fault tolerance with lower overhead, quantum low-density parity-check (QLDPC) codes have emerged as a promising alternative to topological codes such as the surface code, offering higher code rates. To support their study, an end-to-end framework for simulating QLDPC codes at the circuit level is needed. In this work, we present QUITS, a modular and flexible circuit-level simulator for QLDPC codes. Its design allows users to freely combine LDPC code constructions, syndrome extraction circuits, decoding algorithms, and noise models, enabling comprehensive and customizable studies of the performance of QLDPC codes under circuit-level noise. QUITS supports several leading QLDPC families, including hypergraph product codes, lifted product codes, and balanced product codes. As part of the framework, we introduce a syndrome extraction circuit improved from Tremblay, Delfosse, and Beverland [Phys. Rev. Lett. 129, 050504 (2022)] that applies to all three code families. In particular, for a small hypergraph product code, our circuit achieves lower depth than the conventional method, resulting in improved logical performance. Using QUITS, we evaluate the performance of state-of-the-art QLDPC codes and decoders under various settings, revealing trade-offs between the decoding runtime and the logical failure rate. The source code of QUITS is available online.},
urldate = {2026-04-14},
journal = {Quantum},
author = {Kang, Mingyu and Lin, Yingjia and Yao, Hanwen and Gökduman, Mert and Meinking, Arianna and Brown, Kenneth R.},
month = dec,
year = {2025},
note = {arXiv:2504.02673 [quant-ph]
TLDR: This work presents QUITS, a modular and flexible circuit-level simulator for QLDPC codes that allows users to freely combine LDPC code constructions, syndrome extraction circuits, decoding algorithms, and noise models, enabling comprehensive and customizable studies of the performance of QLDPC codes under circuit-level noise.},
keywords = {/unread, Quantum Physics},
pages = {1931},
file = {Preprint PDF:/home/andreas/workspace/work/hiwi/Zotero/storage/ZPGRZW55/Kang et al. - 2025 - QUITS A modular Qldpc code circUIT Simulator.pdf:application/pdf},
}
@book{griffiths_consistent_2001,
address = {Cambridge},
title = {Consistent {Quantum} {Theory}},
isbn = {978-0-521-53929-6},
url = {https://www.cambridge.org/core/books/consistent-quantum-theory/8D3D112C514DF6CEC8D5BF63EC872D2E},
doi = {10.1017/CBO9780511606052},
abstract = {Quantum mechanics is one of the most fundamental yet difficult subjects in physics. Nonrelativistic quantum theory is presented here in a clear and systematic fashion, integrating Born's probabilistic interpretation with Schrödinger dynamics. Basic quantum principles are illustrated with simple examples requiring no mathematics beyond linear algebra and elementary probability theory. The quantum measurement process is consistently analyzed using fundamental quantum principles without referring to measurement. These same principles are used to resolve several of the paradoxes that have long perplexed physicists, including the double slit and Schrödinger's cat. The consistent histories formalism used here was first introduced by the author, and extended by M. Gell-Mann, J. Hartle and R. Omnès. Essential for researchers yet accessible to advanced undergraduate students in physics, chemistry, mathematics, and computer science, this book is supplementary to standard textbooks. It will also be of interest to physicists and philosophers working on the foundations of quantum mechanics.},
urldate = {2026-04-19},
publisher = {Cambridge University Press},
author = {Griffiths, Robert B.},
year = {2001},
keywords = {/unread},
file = {PDF:/home/andreas/workspace/work/hiwi/Zotero/storage/SGJAZGXS/Griffiths - 2001 - Consistent Quantum Theory.pdf:application/pdf},
}

View File

@@ -724,7 +724,7 @@ $\ket{e_n},~n\in \mathbb{N}$.
We can see that the determinate states are the \emph{eigenstates} of
the observable operator $\hat{Q}$ and that the measurement values are
the corresponding \emph{eigenvalues} $\lambda_n$
\cite[Postulate~3]{griffiths_introduction_1995}.
\cite[Sec.~3.3]{griffiths_introduction_1995}.
% Determinate states as a basis
@@ -788,7 +788,7 @@ the determinate states.
Further measurements should then yield the same value.
More general methods of modelling measurements exist, e.g., describing
destructive measurements \cite[Box~2.5]{nielsen_quantum_2010}, but
they are not relevant to us here.
they are not relevant to this work.
% Projection operators
@@ -829,7 +829,7 @@ only has the eigenvalues $0$ or $1$
\cite[Prob.~3.57a)]{griffiths_introduction_1995}.
% tex-fmt: on
The eigenvalues can again be interpreted as possible measurement results.
We can thus use the $\hat{P}$ as an observable and treat
We can thus use $\hat{P}$ as an observable and treat
the eigenvalue as an indicator of the state having a component along
the related basis vector.
@@ -837,112 +837,159 @@ the related basis vector.
\subsection{Qubits and Multi-Qubit States}
\label{subsec:Qubits and Multi-Qubit States}
% The qubit
% TODO: Make sure `quantum gate` is proper terminology
A central concept for quantum computing is that of the \emph{qubit}.
We employ it analogously to the classical \emph{bit}.
For classical computers, we alter bits' states using \emph{gates}.
We can chain multiple of these gates together to build up more complex logic,
such as half-adders or eventually a full processor.
In principle, quantum computers work in a similar fashion, only that
instead of bits we use qubits and instead of, e.g. {AND}, OR, and XOR
operations we use \emph{quantum gates} \cite[Sec.~1.3]{nielsen_quantum_2010}.
We define a qubit to be a component with determinate
states $\ket{0}$ and $\ket{1}$.
The general description of the state $\ket{\psi}$ of a qubit is thus
\begin{align*}
\ket{\psi} = \alpha\ket{0} + \beta\ket{1}, \hspace{5mm} \alpha,
\beta \in \mathbb{C}
.%
\end{align*}
% The tensor product and multi-qubit states
The overall state of a composite quantum system is described using
the \emph{tensor product}, denoted as $\otimes$
\cite[Sec.~2.2.8]{nielsen_quantum_2010}.
Take for example the two qubits
\begin{align*}
\ket{\psi_1} = \alpha_1 \ket{0} + \beta_1 \ket{1},\hspace*{10mm}
\ket{\psi_2} = \alpha_2 \ket{0} + \beta_2 \ket{1}
.%
\end{align*}
% TODO: Fix the fact that \psi is used above for the single-qubit
% case and below for the multi-qubit case
We denote the state of the composite system as $\ket{\psi}$.
Assuming the qubits are independent, this is a \emph{product state}
$\ket{\psi} = \ket{\psi_1}\otimes\ket{\psi_2}$.
When not ambiguous, we may omit the tensor product symbol or even write
the entire product state as a single ket
\cite[Sec.~6.2]{griffiths_consistent_2001}.
We have
\begin{align}
\label{eq:product_state}
\begin{split}
\ket{\psi} = \ket{\psi_1} \ket{\psi_2}
&= \left( \alpha_1 \ket{0} + \beta_1 \ket{1} \right)
\left( \alpha_2 \ket{0} + \beta_2 \ket{1} \right) \\
&= \alpha_1\alpha_2\ket{00}
+ \alpha_1\beta_2\ket{01}
+ \beta_1\alpha_2\ket{10}
+ \beta_1\beta_2\ket{11}
.%
\end{split}
\end{align}
We call $\ket{x_0, \ldots, x_n}~, x_i \in \{0,1\}$ the
\emph{computational basis states}.
% Entanglement
States that are not able to be decomposed into such a product
are called \emph{entangled} \cite[Sec.~2.2.8]{nielsen_quantum_2010}.
An example of such states are the \emph{Bell states}
\begin{align*}
\begin{split}
\ket{\psi_{00}} &= \frac{\ket{00} + \ket{11}}{\sqrt{2}} \hspace{15mm}
\ket{\psi_{01}} = \frac{\ket{01} - \ket{10}}{\sqrt{2}} \\
\ket{\psi_{10}} &= \frac{\ket{00} + \ket{11}}{\sqrt{2}} \hspace{15mm}
\ket{\psi_{11}} = \frac{\ket{01} - \ket{10}}{\sqrt{2}}
\end{split}
\hspace{4mm}.%
\end{align*}
Quantum entanglement plays a major role in the way information
is encoded on quantum systems compared to classical ones.
Instead of employing only the individual qubit states, the
information is stored in the correlations between the qubits
\cite[Sec.~2]{preskill_quantum_2018}.
% The size of the vector spaced
As we can see in \autoref{eq:product_state}, the number of
computational basis states needed to express the full composite state
is $2^n$ \cite[Sec.~4.6]{nielsen_quantum_2010}.
This is in contrast to classical systems, where the dimensionality of
the state space only grows linearly with $n$.
This exponential growth of the state space is what makes it difficult
to simulate quantum systems on classical hardware.
It is also what motivated the research into performing computations
using quantum hardware in the first place
\cite[Sec.~3]{feynman_simulating_1982}.
% Basic types of gates: The X,Y,Z operators, Bloch sphere
After examining the modelling of single- and multi-qubit systems,
we now shift our focus to describing the evolution of their states.
\red{[Bloch sphere]}
We do this using operators, also called \emph{gates}.
The \emph{Pauli operators} $I$,
$X$, $Z$ and $Y$ \cite[Appendix~2]{roffe_quantum_2019} are the most
fundamental ones:
\begin{align*}
\begin{array}{c}
I\text{ Operator} \\
\hline\\
\ket{0} \mapsto \ket{0} \\
\ket{1} \mapsto \ket{1} \\
\end{array}%
\hspace{10mm}%
\begin{array}{c}
X\text{ Operator} \\
\hline\\
\ket{0} \mapsto \ket{1} \\
\ket{1} \mapsto \ket{0} \\
\end{array}%
\hspace{10mm}%
\begin{array}{c}
Z\text{ Operator} \\
\hline\\
\ket{0} \mapsto -\ket{0} \\
\ket{1} \mapsto -\ket{1} \\
\end{array}%
\hspace{10mm}%
\begin{array}{c}
Y\text{ Operator} \\
\hline\\
\ket{0} \mapsto -j\ket{1} \\
\ket{1} \mapsto -j\ket{0} \\
\end{array}
\end{align*}
$I$ is the identity operator and $X$ and $Z$ are referred to as
\emph{bit-flips} and \emph{phase-flips} respectively.
% % TODO: Move this further down to the digitization of errors?
% $Y$ can be represented as a combination of $X$ and $Z$ as $Y = jXZ$.
% Operators over multiple qubits
We can also perform operations on multi-qubit states.
% TODO: Maybe the Hadamard operator and X <-> Z?
% CNOT gates
\red{[CNOT gates]}
\red{
\begin{itemize}
\item Qubits and multi-qubit states
\begin{itemize}
\item The qubit
\begin{itemize}
\item Similar structure to classical
computing: bits are modified with gates
-> quantum bits are modified with quantum gates
\end{itemize}
\item The tensor product
\item Information is not stored in the individual bit
states but in the correlations / entanglement between them
\item -> The size of the vector space
\item The X,Z and Y operators
\item (?) Notation of operators on multi-qubit states
\end{itemize}
\end{itemize}
}
\red{
\begin{itemize}
\item Representing wave functions as vectors (psi as label,
building a vector space using basis functions)
\end{itemize}
}
\red{\textbf{Tensor product}}
\red{\ldots
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{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}
@@ -950,6 +997,8 @@ Introducing a new notation for entangled states, we can write%
\red{
\textbf{Content:}
\begin{itemize}
\item Why we need commutativity of the stabilizers [Journal,
p.~51], [Got97, p.~6]
\item General context
\begin{itemize}
\item Why we want QC
@@ -968,6 +1017,10 @@ Introducing a new notation for entangled states, we can write%
% TODO: Actually binary linear codes or just linear codes?
equivalent of binary linear codes (e.g.,
expressible via check matrix)
\item Similar to parity checks, quantum states can be
more conveniently described using stabilizers
rather than working with the states directly
\cite[Sec.~10.5.1]{nielsen_quantum_2010}
\end{itemize}
\item Digitization of errors
\item CSS codes