diff --git a/src/thesis/chapters/2_fundamentals.tex b/src/thesis/chapters/2_fundamentals.tex index f60f9ae..608dc7f 100644 --- a/src/thesis/chapters/2_fundamentals.tex +++ b/src/thesis/chapters/2_fundamentals.tex @@ -6,8 +6,6 @@ communications engineering and quantum information science. This chapter provides the relevant theoretical background on both of these topics and subsequently introduces the fundamentals of \ac{qec}. -% TODO: Is an explanation of BP with guided decimation needed in this chapter? -% TODO: Is an explanation of OSD needed chapter? %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{Classical Error Correction} \label{sec:Classical Error Correction} @@ -872,8 +870,6 @@ Take for example the two qubits \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 examine the state $\ket{\psi}$ of the composite system. Assuming the qubits are independent, this is a \emph{product state} $\ket{\psi} = \ket{\psi_1}\otimes\ket{\psi_2}$. @@ -1374,7 +1370,6 @@ We can describe it using the check matrix \right] .% \end{align} -% TODO: Check X vs. Z The first $n$ columns correspond to $X$ operators acting on the corresponding physical qubit, the rest to the $Z$ operators. @@ -1383,7 +1378,7 @@ corresponding physical qubit, the rest to the $Z$ operators. % tex-fmt: off \begin{quantikz} - \lstick[2]{$E\ket{\psi}_\text{L}$} & & \gate[2]{P_1} & \gate[2]{P_2} & \gate[style={draw=none},2]{\ldots} & \gate[2]{P_{n-k}} & & & \\ + \lstick[2]{$E\ket{\psi}_\text{L}$} & & \gate[2]{P_1} & \gate[2]{P_2} & \gate[style={draw=none},2]{\ldots} & \gate[2]{P_{n-k}} & & & \\ & & & & & & & & \\ \lstick{$\ket{0}_{\text{A}_1}$} & \gate{H} & \ctrl{-1} & & & & \gate{H} & \meter{} & \setwiretype{c} \\ \lstick{$\ket{0}_{\text{A}_2}$} & \gate{H} & & \ctrl{-2} & & & \gate{H} & \meter{} & \setwiretype{c} \\ @@ -1409,8 +1404,8 @@ Stabilizer codes are especially practical to work with when they can handle $X$ and $Z$ type errors independently. As $Z$ errors anti-commute with $X$ operators in the stabilizers and vice versa, this property translates into being able to split the -stabilizers into some being made up of only $X$ -operators and some only of $Z$ operators. +stabilizers into a subset being made up of only $X$ +operators and the rest only of $Z$ operators. We call such codes \ac{css} codes. We can see this property in \autoref{eq:steane} in the check matrix of the Steane code. @@ -1428,12 +1423,13 @@ Using the dual code of $\mathcal{C}_2$ \cite[Eq.~3.4]{ryan_channel_2009} \bm{x}' \bm{x}^\text{T} = 0 ~\forall \bm{x} \in \mathcal{C}_2 \right\} ,% \end{align*} -we can construct the check matrix as +we define $\bm{H}_X := \bm{H}(\mathcal{C}_2^\perp)$ and $\bm{H}_Z +:= \bm{H}(\mathcal{C}_1)$, and construct the check matrix as \begin{align*} \left[ \begin{array}{c|c} - \bm{H}(\mathcal{C}_2^\perp) & \bm{0} \\ - \bm{0} & \bm{H}(\mathcal{C}_1) + \bm{H}_X & \bm{0} \\ + \bm{0} & \bm{H}_Z \end{array} \right] .% @@ -1442,7 +1438,7 @@ In order to yield a valid stabilizer code, $\mathcal{C}_1$ and $\mathcal{C}_2$ must satisfy the commutativity condition \begin{align} \label{eq:css_condition} - \bm{H}(\mathcal{C}_2^\perp) \bm{H}(\mathcal{C}_1)^\text{T} = \bm{0} + \bm{H}_X \bm{H}_Z^\text{T} = \bm{0} .% \end{align} We can ensure this is the case by choosing them such that @@ -1470,7 +1466,6 @@ code, scaling up of which would be prohibitively expensive % Bivariate Bicycle codes -% TODO: Introduce H_X and H_Z above A recent addition to the class of \ac{qldpc} codes is that of \ac{bb} codes \cite[Sec.~3]{bravyi_high-threshold_2024}. These are a special type of \ac{css} code, where $\bm{H}_X$ and