From 2ed0792deddade0d35e61d7c6a2df6850a0f17ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Kn=C3=BCttel?= Date: Fri, 11 Oct 2019 11:47:17 +0200 Subject: [PATCH] initial thesis stuff --- thesis/Makefile | 24 +++++++++++++ thesis/chapters/graph_simulator.tex | 9 +++++ thesis/chapters/introduction.tex | 3 ++ thesis/chapters/naive_simulator.tex | 20 +++++++++++ thesis/graphics/gate_circuit_classes.dia | Bin 0 -> 2873 bytes thesis/main.bib | 32 +++++++++++++++++ thesis/main.tex | 42 +++++++++++++++++++++++ 7 files changed, 130 insertions(+) create mode 100644 thesis/Makefile create mode 100644 thesis/chapters/graph_simulator.tex create mode 100644 thesis/chapters/introduction.tex create mode 100644 thesis/chapters/naive_simulator.tex create mode 100644 thesis/graphics/gate_circuit_classes.dia create mode 100644 thesis/main.bib create mode 100644 thesis/main.tex diff --git a/thesis/Makefile b/thesis/Makefile new file mode 100644 index 0000000..3086424 --- /dev/null +++ b/thesis/Makefile @@ -0,0 +1,24 @@ +latex=xelatex +pdflatex=xelatex +bibtex=bibtex + +chapters = chapters/introduction.tex \ + chapters/naive_simulator.tex + +all: main.pdf + +main.pdf: main.tex main.bib $(chapters) + $(latex) main + $(bibtex) main + $(latex) main + $(pdflatex) main + + +clean: + -rm main.aux + -rm main.blg + -rm main.dvi + -rm main.log + -rm main.out + -rm main.pdf + -rm main.toc diff --git a/thesis/chapters/graph_simulator.tex b/thesis/chapters/graph_simulator.tex new file mode 100644 index 0000000..4defa10 --- /dev/null +++ b/thesis/chapters/graph_simulator.tex @@ -0,0 +1,9 @@ +\section{The graph Simulator} + +\subsection{Graph Storage} + +One of the gread advantages of simulating in the graph formalism is a great increase +in simulation performance and a lower memory requirement. The simulation of +at least $10^6$ qbits on a common desktop computer should be possible\cite{andersbriegel2005}. +Therefore one has to take care when choosing a representation of the graph state. +The following diff --git a/thesis/chapters/introduction.tex b/thesis/chapters/introduction.tex new file mode 100644 index 0000000..9f9d7d9 --- /dev/null +++ b/thesis/chapters/introduction.tex @@ -0,0 +1,3 @@ +\section{Introduction} + +-- diff --git a/thesis/chapters/naive_simulator.tex b/thesis/chapters/naive_simulator.tex new file mode 100644 index 0000000..994ff4f --- /dev/null +++ b/thesis/chapters/naive_simulator.tex @@ -0,0 +1,20 @@ +\section{The naive Simulator} + +A quite big part of the simulations interesting for students and researchers is not +covered by stabilizer states and stabilizer circuits. In particular the +phase estimation algorithm is essential for many applications. Being able to simulate +such an algorithm is essential for education. + +\subsection{Core Design} + +The core of the simulator are states represented as numpy arrays \cite{numpy_array} +as a both fast, safe and handy storage. They can be modified and viewed without overhead +using python and allow fast modification using so-called NumPy ufuncs\cite{numpy_ufunc}. +All gates are implemented as NumPy ufuncs and map an $N$ qbit simulator state consisting +of a $2^N$ dimensional quantum mechanical state and an $N$ dimensional classical state +to a new $2^N$ dimensional quantum mechanical state and an $N$ dimensional classical state. + +A $N$ qbit quantum mechanical state is the outer (kronecker) product of the $N$ single qbuit +state FIXME: source. The + + diff --git a/thesis/graphics/gate_circuit_classes.dia b/thesis/graphics/gate_circuit_classes.dia new file mode 100644 index 0000000000000000000000000000000000000000..1820e4903807750ff157445aa454256f1558dc4b GIT binary patch literal 2873 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