diff --git a/thesis/Makefile b/thesis/Makefile index 288adaf..7b7f45f 100644 --- a/thesis/Makefile +++ b/thesis/Makefile @@ -6,9 +6,11 @@ chapters=chapters/introduction.tex \ chapters/quantum_computing.tex \ chapters/stabilizer.tex +cover=cover.png + all: main.pdf -main.pdf: main.tex main.bib $(chapters) +main.pdf: main.tex main.bib $(cover) $(chapters) $(latex) main $(bibtex) main $(latex) main diff --git a/thesis/chapters/stabilizer.tex b/thesis/chapters/stabilizer.tex index 4af95de..797cc08 100644 --- a/thesis/chapters/stabilizer.tex +++ b/thesis/chapters/stabilizer.tex @@ -123,6 +123,7 @@ $dim V_S = 2^m$ \cite[Chapter 10.5]{nielsen_chuang_2010}. This yields the follow result: \begin{theorem} + \label{thm:unique_s_state} For a $n$ qbit system and a set $S = \langle S^{(i)} \rangle_{i=1, ..., n}$ the stabilizer space $V_S$ has $dim V_S = 1$, in particular there exists an up to a trivial phase unique state $\ket{\psi}$ that is stabilized by $S$. @@ -170,6 +171,7 @@ $U$ but there exists a group for which $S'$ will be a set of stabilizers. \end{definition} \begin{theorem} + \label{thm:clifford_group_approx} \begin{enumerate} \item{$C_L$ can be generated using only $H$ and $S$.} \item{$C_L$ can be generated from $\sqrt{iZ} = \exp(\frac{i\pi}{4}) S^\dagger$ @@ -273,6 +275,7 @@ the result of the measurement. \end{proof} \subsection{The VOP-free Graph States} +\subsubsection{VOP-free Graph States} This section will discuss the vertex operator(VOP)-free graph states. Why they are called vertex operator-free will be clear in the following section about graph states. @@ -281,6 +284,9 @@ vertex operator-free will be clear in the following section about graph states. The tuple $(V, E)$ is called a graph iff $V$ is a set of vertices with $|V| = n \in \mathbb{N}$. In the following $V = \{0, ..., n-1\}$ will be used. $E$ is the set of edges $E = \left\{\{i, j\} | i,i \in V, i \neq j\right\}$. + + For a vertex $i$ $n_i := \left\{j \in V | \{i, j\} \in E\right\}$ is called the neighbourhood + of $i$. \end{definition} This definition of a graph is way less general than the definition of a mathematical graph. @@ -295,3 +301,156 @@ mathematical graph that are implied in this definition. for all $i \in V$. The vertex operator free graph state $\ket{\bar{G}}$ is the state stabilized by $\langle K_G^{(i)} \rangle_{i = 0, ..., n-1}$. \end{definition} + +It is clear that the $K_G^{(i)}$ multilocal Pauli operators. That they commute +follows from the fact that $\{i,j\} \in E \Leftrightarrow \{j,i\} \in E$ so for two +operators $K_G^{(i)}$ and $K_G^{(j)}$ either $\{i, j\} \notin E$ so they commute trivially +if $\{i,j\} \in E$ $X_i$, $Z_j$ and $X_j$, $Z_i$ anticommute which yields that the +operators commute. + +This definition of a graph state might not seem to be quite straight forward +but recalling theorem \ref{thm:unique_s_state} it is clear that $\ket{\bar{G}}$ +is unique. The following lemma will provide a way to construct this state +from the graph. + +\begin{lemma} + For a graph $G = (V, E)$ the associated state $\ket{\bar{G}}$ is + constructed using + + \begin{equation} + \begin{aligned} + \ket{\bar{G}} &= \left(\prod\limits_{\{i,j\} \in E} CZ_{i,j}\right)\left(\prod\limits_{i \in V} H_i\right) \ket{0} \\ + &= \left(\prod\limits_{\{i,j\} \in E} CZ_{i,j}\right) \ket{+} \\ + \end{aligned} + \end{equation} +\end{lemma} +\begin{proof} + Let $\ket{+} := \left(\prod\limits_{l \in V} H_l\right) \ket{0}$ as before. Note that for any $X_i$ $X_i \ket{+} = +1 \ket{+}$. + Set $\ket{\tilde{G}} := \left(\prod\limits_{\{i,j\} \in E} CZ_{i,j} \right)\ket{+}$. + + \begin{equation} + \begin{aligned} + K_G^{(i)} \ket{\tilde{G}} & = X_i \left(\prod\limits_{\{i,j\} \in E} Z_j\right)\left(\prod\limits_{\{l,j\} \in E} CZ_{l,j} \right) \ket{+} \\ + & = \left(\prod\limits_{\{i,j\} \in E} Z_j\right)X_i\prod\limits_{\{l,j\} \in E}\left( \ket{0}\bra{0}_j \otimes I_l + \ket{1}\bra{1}_j \otimes Z_l\right) \ket{+} \\ + & = \left(\prod\limits_{\{i,j\} \in E} Z_j\right)\prod\limits_{\{l,j\} \in E}\left( \ket{0}\bra{0}_j \otimes I_l + (-1)^{\delta_{i,l}}\ket{1}\bra{1}_j \otimes Z_l\right) X_i \ket{+} \\ + & = \prod\limits_{\{l,j\} \in E}\left( \ket{0}\bra{0}_j \otimes I_l + (-1)^{2\delta_{i,l}}\ket{1}\bra{1}_j \otimes Z_l\right) \ket{+} \\ + & = \prod\limits_{\{l,j\} \in E}\left( \ket{0}\bra{0}_j \otimes I_l + \ket{1}\bra{1}_j \otimes Z_l\right) \ket{+} \\ + & = +1 \ket{\tilde{G}} + \end{aligned} + \end{equation} + + as $X, Z$ anticommute and $Z\ket{1} = -1\ket{1}$. + +\end{proof} + +\subsubsection{Dynamics of the VOP-free Graph States} + +This representation gives an immediate result to how the stabilizers $\langle K_G^{(i)} \rangle_i$ change +under the $CZ$ gate: When applying $CZ_{i,j}$ on $G = (V, E)$ the edge $\{i,j\}$ is toggled, +resulting in a multiplication of $Z_j$ to $K_G^{(i)}$ and $Z_i$ to $K_G^{(j)}$. Toggling edges +is done by using the symmetric set difference: + +\begin{definition} + For to finite sets $A,B$ the symmetric set difference $\Delta$ is + defined as + + \begin{equation} + A \Delta B = (A \cup B) \setminus (A \cap B) + \end{equation} +\end{definition} + +Toggling an edge $\{i, j\}$ updates $E' = E \Delta \left\{\{i,j\}\right\}$. +Another transformation on the VOP-free graph states is for a vertex $a \in V$ + +\begin{equation} + M_a := \sqrt{-iX_a} \prod\limits_{j\in n_a} \sqrt{iZ_j} +\end{equation} + +This transformation toggles the neighbourhood of $a$ which is an operation +that will be used later. + +\begin{lemma} + When applying $M_a$ to a state $\ket{\bar{G}}$ the new state + $\ket{\bar{G}'}$ is again a VOP-free graph state and the + graph is updated according to + \begin{equation} + \begin{aligned} + n_a' &= n_a \\ + n_j' &= n_j, \hbox{ if } j \notin n_a\\ + n_j' &= n_j \Delta n_a, \hbox{ if } j \in n_a + \end{aligned} + \end{equation} +\end{lemma} +\begin{proof} + $\ket{\bar{G}'}$ is stabilized by $\langle M_a K_G^{(i)} M_a^\dagger \rangle_i$, so it is sufficient + to study how the $ K_G^{(i)}$ change under $M_a$. + At first note that $[K_G^{(a)}, M_a] = 0$ and $\forall i\in V\setminus n_a$ $[K_G^{(i)}, M_a] = 0$, + so the first two equations follow trivially. For $j \in n_a$ set + + \begin{equation} + \begin{aligned} + S^{(j)} &= M_a K_G^{(j)} M_a^\dagger \\ + &= \sqrt{-iX_a} \left(\prod\limits_{l \in n_a \setminus \{j\}} \sqrt{iZ_l}\right) + \sqrt{iZ_j} K_G^{(j)} \sqrt{iZ_j}^\dagger + \left(\prod\limits_{l \in n_a \setminus \{j\}} \sqrt{iZ_l}^\dagger\right) + \sqrt{-iX_a}^\dagger \\ + &= \sqrt{-iX_a} \left(\prod\limits_{l \in n_a \setminus \{j\}} \sqrt{iZ_l}\right)\sqrt{iZ_j} + X_j \left(\prod\limits_{m \in n_j \setminus \{a\}} Z_m\right) Z_a + \sqrt{iZ_j}^\dagger + \left(\prod\limits_{l \in n_a \setminus \{j\}} \sqrt{iZ_l}^\dagger\right) + \sqrt{-iX_a}^\dagger \\ + &= \sqrt{iZ_j} X_j\sqrt{iZ_j}^\dagger\left(\prod\limits_{m \in n_j \setminus \{a\}} Z_m\right) + \sqrt{-iX_a} Z_a \sqrt{-iX_a}^\dagger \\ + &= (-1)^2 Y_j Y_a \left(\prod\limits_{m \in n_j \setminus \{a\}} Z_m\right)\\ + &= (-1)i^2 Z_j X_a X_j Z_a \left(\prod\limits_{m \in n_j \setminus \{a\}} Z_m\right) + \end{aligned} + \end{equation} + + One can now construct a new set of $K_{G'}^{(i)}$ s.t. $M_a \ket{\bar{G}}$ is the $+1$ eigenvalue + of the new $K_{G'}^{(i)}$. It is clear that $\forall j \notin n_a$ $K_{G'}^{(j)} = K_G^{(j)}$. + To construct the $K_{G'}^{(i)}$ let for some $j \in n_a$ $n_a = \{j\} \cup I$ and $n_j = \{a\} \cup J$. + Then + + \begin{equation} + \begin{aligned} + S^{(j)} &= Z_j X_a X_j Z_a \prod\limits_{l \in J} Z_l\\ + &= Z_j X_a X_j Z_a \left(\prod\limits_{l \in J} Z_l\right) + \left(\prod\limits_{l \in I}Z_l\right) + \left(\prod\limits_{l \in I}Z_l\right) \\ + &= Z_j X_a X_j Z_a \left(\prod\limits_{l \in ((I\cup J) \setminus (I\cap J))} Z_L\right) + \left(\prod\limits_{l \in I}Z_l\right) \\ + &= K_{G'}^{(a)} K_{G'}^{(j)} \\ + &= K_{G}^{(a)} K_{G'}^{(j)} + \end{aligned} + \end{equation} + + Using this ine can show that $\ket{\bar{G}'}$ is a $+1$ eigenstate of $K_{G'}^{(j)}$: + + \begin{equation} + \ket{\bar{G}'} = S^{(j)}\ket{\bar{G}'} = K_{G}^{(a)} K_{G'}^{(j)}\ket{\bar{G}'} + = K_{G'}^{(j)}K_{G}^{(a)}\ket{\bar{G}'} = K_{G'}^{(j)}\ket{\bar{G}'} + \end{equation} + + Because $\{K_G^{(i)} | i \notin n_a\} \cup \{S^{(i)} | i\in n_a\}$ and + $\{K_G^{(i)} | i \notin n_a\} \cup \{K_{G'}^{(i)} | i\in n_a \}$ are both $n$ commuting + multi-local Pauli operators where the $S^{(i)}$ can be generated from the $K_{G'}^{(i)}$ + and $\ket{\bar{G}'}$ is a $+1$ eigenstate of $K_{G'}^{(j)}$ + $\langle\{K_G^{(i)} | i \notin n_a\} \cup \{K_{G'}^{(i)} | i\in n_a \}\rangle$ + are the stabilizers of $\ket{\bar{G}'}$ and the associated graph is changed as given + in the third equation. +\end{proof} + +\subsection{Graph States} + +The definition of a VOP-free graph state above raises an obvious question: +Can any stabilizer state be described using just a graph? +The answer is quite simple: No. The most simple cases are the single qbit +stated $\ket{0},\ket{1}$ and $\ket{+_Y}, \ket{-_Y}$. But there is a simple extension +to the VOP-free graph states that allows the representation of an arbitrary +stabilizer state. The proof that indeed any state can be represented is +just constructive. As seen in theorem \ref{thm:clifford_group_approx} any $c \in C_n$ +can be constructed from $CZ$ and $C_L$ and in the following discussion it will become +clear that both $C_L$ and $CZ$ can be applied to a general graph state. + +\subsubsection{Graph States and Vertex operators} + diff --git a/thesis/cover.png b/thesis/cover.png new file mode 100644 index 0000000..4068d71 Binary files /dev/null and b/thesis/cover.png differ diff --git a/thesis/main.tex b/thesis/main.tex index c4bfe5b..2476cc0 100644 --- a/thesis/main.tex +++ b/thesis/main.tex @@ -1,4 +1,5 @@ \documentclass[a4paper,12pt]{scrartcl} +\usepackage{titlepic} \usepackage[utf8]{inputenc} \usepackage{graphicx} \usepackage{amssymb, amsthm} @@ -22,13 +23,16 @@ \numberwithin{equation}{section} + \title{An Efficient Quantum Computing Simulator using a Graphical Description for Many-Qbit Systems} \author{Daniel Knüttel} \date{10.04.2020} +\titlepic{\includegraphics[width=\textwidth]{cover.png}} \begin{document} \maketitle %\frontmatter +\newpage \tableofcontents \include{chapters/introduction}