fixed a lot of stuff

This commit is contained in:
Daniel Knüttel 2020-03-30 09:59:57 +02:00
parent c6746ddd49
commit bf5b21413d
13 changed files with 41 additions and 15 deletions

View File

@ -3,6 +3,9 @@ import matplotlib
import numpy as np
import json
matplotlib.rc('font', **{'family': 'serif', 'serif': ['Computer Modern']})
matplotlib.rc('text', usetex=True)
matplotlib.rcParams.update({'errorbar.capsize': 2})
results_naive = np.genfromtxt("qbit_scaling_naive.csv")

View File

@ -3,6 +3,9 @@ import matplotlib
import numpy as np
import json
matplotlib.rc('font', **{'family': 'serif', 'serif': ['Computer Modern']})
matplotlib.rc('text', usetex=True)
matplotlib.rcParams.update({'errorbar.capsize': 2})
results_naive = np.genfromtxt("qbit_scaling_naive.csv")

View File

@ -4,6 +4,8 @@ import matplotlib.pyplot as plt
import numpy as np
import json
matplotlib.rc('font', **{'family': 'serif', 'serif': ['Computer Modern']})
matplotlib.rc('text', usetex=True)
matplotlib.rcParams.update({'errorbar.capsize': 2})
results_graph0 = np.genfromtxt("circuit_scaling_graph1.csv")

View File

@ -4,6 +4,8 @@ import matplotlib.pyplot as plt
import numpy as np
import json
matplotlib.rc('font', **{'family': 'serif', 'serif': ['Computer Modern']})
matplotlib.rc('text', usetex=True)
matplotlib.rcParams.update({'errorbar.capsize': 2})
results_graph0 = np.genfromtxt("circuit_scaling_graph0.csv")

View File

@ -4,6 +4,8 @@ import matplotlib.pyplot as plt
import numpy as np
import json
matplotlib.rc('font', **{'family': 'serif', 'serif': ['Computer Modern']})
matplotlib.rc('text', usetex=True)
matplotlib.rcParams.update({'errorbar.capsize': 2})
results_graph0 = np.genfromtxt("circuit_scaling_graph0_measurements.csv")

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

After

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

After

Width:  |  Height:  |  Size: 161 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 183 KiB

After

Width:  |  Height:  |  Size: 133 KiB

View File

@ -6,26 +6,26 @@ many companies and institutions working on building and using quantum computers
\cite{ibmq}\cite{intelqc}\cite{microsoftqc}\cite{dwavesys}\cite{lrzqc}\cite{heise25_18}.
One important topic in this research is quantum error correction
\cite{nielsen_chuang_2010}\cite{gottesman2009}\cite{gottesman1997}\cite{shor1995}
that will allow the execution of arbitrarily long quantum circuits \cite{nielsen_chuang_2010}. One
important class of quantum error correction strategies are stabilizer codes
that will allow the execution of arbitrarily long quantum circuits \cite{nielsen_chuang_2010}.
A notable class of quantum error correction strategies are stabilizer codes
\cite{gottesman2009}\cite{gottesman1997} that can be simulated exponentially
faster than general quantum circuits
\cite{gottesman_aaronson2008}\cite{CHP}\cite{andersbriegel2005}.
Being able to simulate large stabilizer states is particularly interesting for
exploring quantum error correction strategies as fault tolerant quantum computing
requires several layers of encoding - so called concatenated codes \cite{nielsen_chuang_2010} -
that use many physical qbits organized in several layers to encode one logical qbit.
One particularly efficient way to simulate stabilizer states is the graphical
representation \cite{andersbriegel2005} that has been studied extensively in
the context of both quantum error correction and quantum information theory
\cite{schlingenmann2001}\cite{dahlberg_ea2019}\cite{vandennest_ea2004}\cite{hein_eisert_briegel2008}.
This paper describes the development of a quantum computing simulator
using both the usual dense state vector representation for a general state
and a graphical representation for stabilizer states. After giving some introduction
to quantum computing some basic properties of stabilizer states and their
and a graphical representation for stabilizer states. After giving an introduction
to quantum computing, some basic properties of stabilizer states and their
dynamics are elucidated. Using this the graphical representation is introduced
and some operations on the graphical states are explained. Following is
and notable operations on the graphical states are explained. Following is
a chapter describing the implementation of these techniques and some performance
analysis.
Being able to simulate large stabilizer states is particularly interesting for
exploring quantum error correction strategies as fault tolerant quantum computing
requires several layers of encoding - so called concatenated codes \cite{nielsen_chuang_2010} -
that require many physical qbits to encode one logical qbit.

View File

@ -214,6 +214,8 @@ As mentioned in \ref{ref:many_qbits} one can approximate an arbitrary $n$-qbit
gate $U$ as a product of some single-qbit gates and either $CX$ or $CZ$.
Writing (possibly huge) products of matrices is quite unpractical and
unreadable. To address this problem quantum circuits have been introduced.
The quantum circuits introduced here follow the conventions from
\cite{nielsen_chuang_2010}.
These represent the qbits as a horizontal line and a gate acting on a qbit is
a box with a name on the respective line. Quantum circuits are read from
left to right. This means that a gate $U_i = Z_i X_i H_i$ has the
@ -244,6 +246,15 @@ Several qbits can be abbreviated by writing a slash on the qbit line:
}
\]
Measurements are denoted using a special "gate", the classical result
is written as double lines:
\[
\Qcircuit @C=1em @R=.7em {
& \gate{H} & \gate{X} & \qw & \meter & \cw \\
}
\]
\section{Quantum Algorithms}
\label{ref:quantum_algorithms}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 183 KiB

After

Width:  |  Height:  |  Size: 133 KiB

View File

@ -1,4 +1,4 @@
\documentclass[a4paper,12pt,numbers=noenddot]{scrreprt}
\documentclass[a4paper,12pt,numbers=noenddot,egregdoesnotlikesansseriftitles]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{amssymb, amsthm}
@ -52,18 +52,18 @@ Supervised by Prof. Dr. Christoph Lehner}
{\LARGE University of Regensburg\par}
{\Large Institute I - Theoretical Physics\par}
\vspace{1cm}
\vspace{0.7cm}
{\Large Bachelor Thesis\par}
\vspace{1cm}
\vspace{0.7cm}
{\huge\bfseries An Efficient Quantum Computing Simulator using a Graphical Description for Many-Qbit Systems \par}
\vspace{1cm}
\vspace{0.7cm}
{\Large\itshape Daniel Knüttel\par}
\includegraphics[width=\textwidth]{cover.png}
\vfill
{\Large\itshape Supervised by \par
Dr. Christoph Lehner}
Prof. Dr. Christoph Lehner}
\vfill
{\large 10.04.2020}
\end{titlepage}
@ -82,6 +82,9 @@ Supervised by Prof. Dr. Christoph Lehner}
\include{chapters/appendix}
\end{appendices}
\newpage
\listoffigures
\bibliographystyle{unsrt}
\bibliography{main}{}