diff --git a/citations.bib b/citations.bib index 4e0ae07..249f888 100644 --- a/citations.bib +++ b/citations.bib @@ -90,8 +90,6 @@ journal = {Nature} } - - @article{Terhal2018, doi = {10.1038/s41567-018-0131-y}, url = {https://doi.org/10.1038/s41567-018-0131-y}, @@ -360,4 +358,168 @@ author = {M. Saffman and T. G. Walker and K. M{\o}lmer}, title = {Quantum information with Rydberg atoms}, journal = {Reviews of Modern Physics} +} + +@unpublished{Li2018, + author = {Riling Li and Bujiao Wu and Mingsheng Ying and Xiaoming Sun and Guangwen Yang}, + note = {Unpublished}, + title = {Quantum Supremacy Circuit Simulation on Sunway TaihuLight}, + year = {2018}, + archiveprefix = {arXiv}, + primaryclass = {quant-ph}, + eprint = {1804.04797} +} + +@article{Vidal2003, + doi = {10.1103/physrevlett.91.147902}, + url = {https://doi.org/10.1103/physrevlett.91.147902}, + year = {2003}, + month = oct, + publisher = {American Physical Society ({APS})}, + volume = {91}, + number = {14}, + author = {Guifr{\'{e}} Vidal}, + title = {Efficient Classical Simulation of Slightly Entangled Quantum Computations}, + journal = {Physical Review Letters} +} + +@article{Markov2008, + doi = {10.1137/050644756}, + url = {https://doi.org/10.1137/050644756}, + year = {2008}, + month = jan, + publisher = {Society for Industrial {\&} Applied Mathematics ({SIAM})}, + volume = {38}, + number = {3}, + pages = {963--981}, + author = {Igor L. Markov and Yaoyun Shi}, + title = {Simulating Quantum Computation by Contracting Tensor Networks}, + journal = {{SIAM} Journal on Computing} +} + +@unpublished{Pednault2020, + author = {Edwin Pednault and John A. Gunnels and Giacomo Nannicini and Lior Horesh and Thomas Magerlein and Edgar Solomonik and Erik W. Draeger and Eric T. Holland and Robert Wisnieff}, + note = {Unpublished}, + title = {Pareto-Efficient Quantum Circuit Simulation Using Tensor Contraction Deferral}, + year = {2020}, + archiveprefix = {arXiv}, + primaryclass = {quant-ph}, + eprint = {1710.05867v4} +} + +@book{Joshi1995, + title = {Matrices and Tensors in Physics}, + author = {Joshi, A.W.}, + isbn = {9788122405637}, + lccn = {94021798}, + url = {https://books.google.co.ck/books?id=FesDylvUy00C}, + year = {1995}, + publisher = {Wiley} +} + + +@article{DeLathauwer2000, + doi = {10.1137/s0895479896305696}, + url = {https://doi.org/10.1137/s0895479896305696}, + year = {2000}, + month = jan, + publisher = {Society for Industrial {\&} Applied Mathematics ({SIAM})}, + volume = {21}, + number = {4}, + pages = {1253--1278}, + author = {Lieven De Lathauwer and Bart De Moor and Joos Vandewalle}, + title = {A Multilinear Singular Value Decomposition}, + journal = {{SIAM} Journal on Matrix Analysis and Applications} +} + +@incollection{Vasilescu2002, + doi = {10.1007/3-540-47969-4_30}, + url = {https://doi.org/10.1007/3-540-47969-4_30}, + year = {2002}, + publisher = {Springer Berlin Heidelberg}, + pages = {447--460}, + author = {M. Alex O. Vasilescu and Demetri Terzopoulos}, + title = {Multilinear Analysis of Image Ensembles: {TensorFaces}}, + booktitle = {Computer Vision {\textemdash} {ECCV} 2002} +} + +@article{Kolda2009, + doi = {10.1137/07070111x}, + url = {https://doi.org/10.1137/07070111x}, + year = {2009}, + month = aug, + publisher = {Society for Industrial {\&} Applied Mathematics ({SIAM})}, + volume = {51}, + number = {3}, + pages = {455--500}, + author = {Tamara G. Kolda and Brett W. Bader}, + title = {Tensor Decompositions and Applications}, + journal = {{SIAM} Review} +} + +@article{Villalonga2019, + doi = {10.1038/s41534-019-0196-1}, + url = {https://doi.org/10.1038/s41534-019-0196-1}, + year = {2019}, + month = oct, + publisher = {Springer Science and Business Media {LLC}}, + volume = {5}, + number = {1}, + author = {Benjamin Villalonga and Sergio Boixo and Bron Nelson and Christopher Henze and Eleanor Rieffel and Rupak Biswas and Salvatore Mandr{\`{a}}}, + title = {A flexible high-performance simulator for verifying and benchmarking quantum circuits implemented on real hardware}, + journal = {npj Quantum Information} +} + +@article{Guo2019, + doi = {10.1103/physrevlett.123.190501}, + url = {https://doi.org/10.1103/physrevlett.123.190501}, + year = {2019}, + month = nov, + publisher = {American Physical Society ({APS})}, + volume = {123}, + number = {19}, + author = {Chu Guo and Yong Liu and Min Xiong and Shichuan Xue and Xiang Fu and Anqi Huang and Xiaogang Qiang and Ping Xu and Junhua Liu and Shenggen Zheng and He-Liang Huang and Mingtang Deng and Dario Poletti and Wan-Su Bao and Junjie Wu}, + title = {General-Purpose Quantum Circuit Simulator with Projected Entangled-Pair States and the Quantum Supremacy Frontier}, + journal = {Physical Review Letters} +} + +@article{Valiant2002, + doi = {10.1137/s0097539700377025}, + url = {https://doi.org/10.1137/s0097539700377025}, + year = {2002}, + month = jan, + publisher = {Society for Industrial {\&} Applied Mathematics ({SIAM})}, + volume = {31}, + number = {4}, + pages = {1229--1254}, + author = {Leslie G. Valiant}, + title = {Quantum Circuits That Can Be Simulated Classically in Polynomial Time}, + journal = {{SIAM} Journal on Computing} +} + +@article{Jozsa2008, + doi = {10.1098/rspa.2008.0189}, + url = {https://doi.org/10.1098/rspa.2008.0189}, + year = {2008}, + month = jul, + publisher = {The Royal Society}, + volume = {464}, + number = {2100}, + pages = {3089--3106}, + author = {Richard Jozsa and Akimasa Miyake}, + title = {Matchgates and classical simulation of quantum circuits}, + journal = {Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences} +} + +@article{Brod2016, + doi = {10.1103/physreva.93.062332}, + url = {https://doi.org/10.1103/physreva.93.062332}, + year = {2016}, + month = jun, + publisher = {American Physical Society ({APS})}, + volume = {93}, + number = {6}, + author = {Daniel J. Brod}, + title = {Efficient classical simulation of matchgate circuits with generalized inputs and measurements}, + journal = {Physical Review A} } \ No newline at end of file diff --git a/main.pdf b/main.pdf index 0e5e577..8db15f9 100644 Binary files a/main.pdf and b/main.pdf differ diff --git a/main.tex b/main.tex index ec0404a..ae78131 100644 --- a/main.tex +++ b/main.tex @@ -54,6 +54,7 @@ } \ExplSyntaxOff +\def\viz.{\textit{viz}.} \NewDocumentCommand{\Naturals}{}{\mathbb{N}} \let\NN\Naturals \NewDocumentCommand{\Integers}{}{\mathbb{Z}} @@ -101,41 +102,41 @@ may succinctly be stated as follows \cite{Nielsen2012}: transposition.} \makeatother -\begin{description} +\begin{description} \makeatletter - \let\old@item\item - \def\my@item#1#2{[\label{#2}{#1}]} - \def\item[#1][#2]{\expandafter\old@item\my@item{#1}{#2}} - \makeatother + \let\old@item\item + \def\my@item#1#2{[\label{#2}{#1}]} + \def\item[#1][#2]{\expandafter\old@item\my@item{#1}{#2}} + \makeatother - \item[State space][postulate:state-space] - An isolated quantum system is represented by a ray of unit two-norm - vectors in a complex vector space equipped with an inner product (i.e., - a Hilbert space). This space is referred to as the \emph{state space}. + \item[State space][postulate:state-space] + An isolated quantum system is represented by a ray of unit two-norm + vectors in a complex vector space equipped with an inner product (i.e., + a Hilbert space). This space is referred to as the \emph{state space}. - \item[Evolution][postulate:evolution] - The evolution of an isolated quantum system, as represented by its - quantum state vector $\vec \psi$, is given by a unitary operator acting - on that quantum state vector. I.e., let \Hilbert\ be the Hilbert space - such that the quantum state vector is, at some moment, $\vec\psi \in - \Hilbert$. Then, there exists an operator $U \in - \Hilbert\times\Hilbert$, satisfying $UU^\dagger = U^\dagger U = I$ - \FootnoteNow{} such that, after some time, the state of the system is - given by the quantum state vector $U \vec\psi$. + \item[Evolution][postulate:evolution] + The evolution of an isolated quantum system, as represented by its + quantum state vector $\vec \psi$, is given by a unitary operator acting + on that quantum state vector. I.e., let \Hilbert\ be the Hilbert space + such that the quantum state vector is, at some moment, $\vec\psi \in + \Hilbert$. Then, there exists an operator $U \in + \Hilbert\times\Hilbert$, satisfying $UU^\dagger = U^\dagger U = I$ + \FootnoteNow{} such that, after some time, the state of the system is + given by the quantum state vector $U \vec\psi$. - \item[Measurement][postulate:measurement] \hskip 0pt plus 1em - A set of operators $\{M_m\}_m$, acting on $\Hilbert$ and satisfying - $\sum_m M_m^\dagger M_m = I$, define a ``measurement''. Each operator - $M_m$ has an associated outcome $m$, such that the measurement operation - yields outcome $m$ with probability $\lVert{ M_m - {\vec\psi}}\rVert_2^2$. After the measurement, the quantum system is - described by the quantum state vector $M_m {\vec\psi} / \norm*{M_m - \vec\psi}_2$. + \item[Measurement][postulate:measurement] \hskip 0pt plus 1em + A set of operators $\{M_m\}_m$, acting on $\Hilbert$ and satisfying + $\sum_m M_m^\dagger M_m = I$, define a ``measurement''. Each operator + $M_m$ has an associated outcome $m$, such that the measurement operation + yields outcome $m$ with probability $\lVert{ M_m + {\vec\psi}}\rVert_2^2$. After the measurement, the quantum system is + described by the quantum state vector $M_m {\vec\psi} / \norm*{M_m + \vec\psi}_2$. - \item[Composite Systems][postulate:composite-systems] - If a quantum system is composed of multiple quantum subsystems, then - the corresponding state vector space is given by the tensor product of - the quantum state vector spaces of the subsystems. + \item[Composite Systems][postulate:composite-systems] + If a quantum system is composed of multiple quantum subsystems, then + the corresponding state vector space is given by the tensor product of + the quantum state vector spaces of the subsystems. \end{description} A quantum computation is, thus, a computation carried out within these @@ -168,17 +169,17 @@ will henceforth use this notation. \newcommand{\rowskip}{8pt} \renewcommand{\arraystretch}{0} \begin{tabular}{r @{\hskip 1em}|@{\hskip 1em} l} \hline\hline\vrule height 14pt width 0pt - $\ket{\psi}$ & Vector $\psi$, or ``ket'' $\psi$. Corresponds to $\vec\psi$. \\[\rowskip] - $\bra{\psi}$ & Dual of $\ket{\psi}$, or ``bra'' $\psi$. Corresponds to ${\vec\psi}^\dagger$. \\[\rowskip] - $\braket{a}{b}$ & Inner product between vectors $\ket{a}$ and $\ket{b}$. \\[\rowskip] - $\ket{a} \otimes \ket{b}$ & Tensor product between vectors $\ket{a}$ and $\ket{b}$. \\[0pt] - & If both $\ket{a},\ket{b} \in \Hilbert_n$, $\ket{a}\otimes\ket{b} \in \Hilbert_{n^2}$. \\[\rowskip] - $\ket{a}\mskip-5mu\ket{b}$& Shortened notation for $\ket{a} \otimes \ket{b}$. \\[\rowskip] - $\bra{a} A \ket{b}$ & Inner product between $\ket{a}$ and $A\ket{b}$, or, \\[0pt] - & equivalently, $A^\dagger \ket{a}$ and $\ket{b}$. \\[0pt] - & If $\ket{a}=\ket{b}$, may be referred to as the \\[0pt] - & \emph{expectation value} of $A$ under $\ket{a}$. \\[\rowskip] - $\dyad{a}$ & Projector onto the span of $\ket{a}$. + $\ket{\psi}$ & Vector $\psi$, or ``ket'' $\psi$. Corresponds to $\vec\psi$. \\[\rowskip] + $\bra{\psi}$ & Dual of $\ket{\psi}$, or ``bra'' $\psi$. Corresponds to ${\vec\psi}^\dagger$. \\[\rowskip] + $\braket{a}{b}$ & Inner product between vectors $\ket{a}$ and $\ket{b}$. \\[\rowskip] + $\ket{a} \otimes \ket{b}$ & Tensor product between vectors $\ket{a}$ and $\ket{b}$. \\[0pt] + & If both $\ket{a},\ket{b} \in \Hilbert_n$, $\ket{a}\otimes\ket{b} \in \Hilbert_{n^2}$. \\[\rowskip] + $\ket{a}\mskip-5mu\ket{b}$ & Shortened notation for $\ket{a} \otimes \ket{b}$. \\[\rowskip] + $\bra{a} A \ket{b}$ & Inner product between $\ket{a}$ and $A\ket{b}$, or, \\[0pt] + & equivalently, $A^\dagger \ket{a}$ and $\ket{b}$. \\[0pt] + & If $\ket{a}=\ket{b}$, may be referred to as the \\[0pt] + & \emph{expectation value} of $A$ under $\ket{a}$. \\[\rowskip] + $\dyad{a}$ & Projector onto the span of $\ket{a}$. \\[14pt] \hline\hline \end{tabular} @@ -194,27 +195,27 @@ orthogonal states in their collective state space, which we may label by the binary string given by each of the qubits, or the corresponding number: % { - \makeatletter - \def\my@ksp{\mskip-5mu} - \def\my@neg@ksp{\mskip5mu} - \def\my@ssp{\mskip-3mu} - \let\old@ket\ket - \let\old@ldots\ldots - \let\old@equiv\equiv - \def\ket#1{\old@ket{#1}\my@ksp} - \def\ldots{\my@neg@ksp\my@ssp\old@ldots\my@ssp} - \def\equiv{\my@neg@ksp\old@equiv} - \makeatother - % - \begin{equation} +\makeatletter +\def\my@ksp{\mskip-5mu} +\def\my@neg@ksp{\mskip5mu} +\def\my@ssp{\mskip-3mu} +\let\old@ket\ket +\let\old@ldots\ldots +\let\old@equiv\equiv +\def\ket#1{\old@ket{#1}\my@ksp} +\def\ldots{\my@neg@ksp\my@ssp\old@ldots\my@ssp} +\def\equiv{\my@neg@ksp\old@equiv} +\makeatother +% +\begin{equation} \begin{array}{l} \hskip-2em \ket{0}\ket{0}\ldots\ket{0}\ket{0} \equiv \ket{0_b}, \\ \hskip-1em \ket{0}\ket{0}\ldots\ket{0}\ket{1} \equiv \ket{1_b}, \\ - \ket{0}\ket{0}\ldots\ket{1}\ket{0} \equiv \ket{2_b}, \\ - \hskip1em \ldots \\ + \ket{0}\ket{0}\ldots\ket{1}\ket{0} \equiv \ket{2_b}, \\ + \hskip1em \ldots \\ \hskip1.5em \ket{1}\ket{1}\ldots\ket{1}\ket{1} \equiv \ket{2^n-1_b}. \end{array} - \end{equation} +\end{equation} } Per the \Postulate{state space} postulate, a state of $n$ qubits may be given by @@ -260,8 +261,8 @@ and a Hadamard gate: \begin{array}{cc} \def\arraycolsep{4pt} H = \frac{1}{\sqrt{2}}\begin{pmatrix} 1 & 1 \\ 1 & -1 \end{pmatrix} & % - \begin{array}{c} H\ket{0} = \frac{1}{\sqrt{2}}(\ket{0} + \ket{1}) \\ - H\ket{1} = \frac{1}{\sqrt{2}} (\ket{0}-\ket{1}) \end{array} + \begin{array}{c} H\ket{0} = \frac{1}{\sqrt{2}}(\ket{0} + \ket{1}) \\ + H\ket{1} = \frac{1}{\sqrt{2}} (\ket{0}-\ket{1})\end{array} \end{array} \end{equation} @@ -341,17 +342,17 @@ operator; in fact one may check that the two sets of postulates are equivalent. \begin{description} \makeatletter \let\old@item\item - \let\old@makelabel\makelabel - \renewcommand{\item}[1][0]{% - \old@item[#1]% - \hfill\break} - \def\ResetLabel{% - \let\item\old@item% - \let\makelabel\old@makelabel} - \makeatother + \let\old@makelabel\makelabel + \renewcommand{\item}[1][0]{% + \old@item[#1]% + \hfill\break} + \def\ResetLabel{% + \let\item\old@item% + \let\makelabel\old@makelabel} + \makeatother \item[State space {\it(Density matrix)}] An isolated physical system is completely described by a \emph{density - operator}, which is a positive operator of unit trace in a Hilbert + operator}, which is a positive operator of unit trace in a Hilbert space. If a system is in state $\rho_j$ with probability $p_j$, its density operator is $\rho = \sum_j p_j \rho_j$. \item[Evolution {\it(Density matrix)}] @@ -366,9 +367,9 @@ operator; in fact one may check that the two sets of postulates are equivalent. is described by a density operator $\rho$, the outcome of a measurement is $m$ with probability $\Tr(M_m^\dagger M_m \rho)$, and, after the measurement, the system is now described by the density matrix $\rho' = - M_m \rho M_m^\dagger / \Tr(M_m^\dagger M_m \rho)$. + M_m \rho M_m^\dagger / \Tr(M_m^\dagger M_m \rho)$. \item[Composite Systems {\it(Density matrix)}] - The density operator describing a quantum system composed of multiple + The density operator describing a quantum system composed of multiple quantum subsystems is given by the tensor product of the density operators of each of the subsystems. \end{description} @@ -378,7 +379,7 @@ A quantum state with density matrix $\rho$ for which there exists \begin{equation} \everymath={\displaystyle} \begin{array}{r@{\quad}c@{\quad}l} - \ket{\psi} & \text{such that} & \rho = \dyad{\psi} + \ket{\psi} & \text{such that} & \rho = \dyad{\psi} \end{array} \end{equation} % @@ -395,7 +396,7 @@ $\rho$, then subsystem $A$ is described by density operator % where $\Tr_B$ is the newly defined \emph{partial trace} operation, $I_A$ is the identity in the state space of $A$, and we take $\{\ket{j}\}_j$ to be a basis -over the state space of $B$. +over the state space of $B$. \subsubsection{Quantum circuits} @@ -404,7 +405,7 @@ transformations, and by extension quantum algorithms: quantum circuits. \FootnoteLater{Rigorously, this depends on how the unitary is ``given''. Here, consider that a unitary is given by specifying its action over each element - $\ket{j}$ of a set spanning the state space. By linearity (cf.\ the + $\ket{j}$ of a set spanning the state space. By linearity (\viz.\ the \Postulate{evolution} postulate), this determines the action of the unitary over any vector in the state space.} @@ -431,20 +432,20 @@ operations generated by the Clifford gate set. \def\Action#1{$\begin{array}{l} #1 \end{array}$} \def\TabularSpacing{\hskip 0em plus 1em minus 1em} \def\CX{\Controlled{X}} - + \begin{tabular}{c @{\TabularSpacing}c@{\TabularSpacing} c} \hline\hline\vrule height 14pt width 0pt - Symbol & Definition & Description \\ + Symbol & Definition & Description \\ \hline\vrule height 18pt width 0pt - $X$ & \Action{X\ket{0} = \ket{1} \\ X\ket{1} = \ket{0}} & $X$-Pauli or ``not'' gate \\ - $Y$ & \Action{Y\ket{0} = -i\ket{1} \\ Y\ket{1} = i\ket{0}} & $Y$-Pauli gate \\ - $Z$ & \Action{Z\ket{0} = \ket{0} \\ Z\ket{1} = -\ket{1}} & $Z$-Pauli gate \\ - $H$ & \Action{H\ket{0} = \sqrt{1/2}(\ket{0}+\ket{1}) \\ H\ket{1} = \sqrt{1/2}(\ket{0}-\ket{1})} & Hadamard gate \\ - $S$ & \Action{S\ket{0} = \ket{0} \\ S\ket{1} = i\ket{1}} & Phase gate \\ - $T$ & \Action{T\ket{0} = \ket{0} \\ T\ket{1} = e^{i\pi/4}\ket{1}} & $\pi/8$ gate \\[9pt] - $R_X(\theta)$ & $\exp{-i\theta X/2}$ & $X$-rotation gate \\[9pt] - $R_Y(\theta)$ & $\exp{-i\theta Y/2}$ & $Y$-rotation gate \\[9pt] - $R_Z(\theta)$ & $\exp{-i\theta Z/2}$ & $Z$-rotation gate \\[6pt] - $\CX$ & $\dyad{0}\otimes I + \dyad{1}\otimes X$ & Controlled-not gate \\[6pt] + $X$ & \Action{X\ket{0} = \ket{1} \\ X\ket{1} = \ket{0}} & $X$-Pauli or ``not'' gate \\ + $Y$ & \Action{Y\ket{0} = -i\ket{1} \\ Y\ket{1} = i\ket{0}} & $Y$-Pauli gate \\ + $Z$ & \Action{Z\ket{0} = \ket{0} \\ Z\ket{1} = -\ket{1}} & $Z$-Pauli gate \\ + $H$ & \Action{H\ket{0} = \sqrt{1/2}(\ket{0}+\ket{1}) \\ H\ket{1} = \sqrt{1/2}(\ket{0}-\ket{1})} & Hadamard gate \\ + $S$ & \Action{S\ket{0} = \ket{0} \\ S\ket{1} = i\ket{1}} & Phase gate \\ + $T$ & \Action{T\ket{0} = \ket{0} \\ T\ket{1} = e^{i\pi/4}\ket{1}} & $\pi/8$ gate \\[9pt] + $R_X(\theta)$ & $\exp{-i\theta X/2}$ & $X$-rotation gate \\[9pt] + $R_Y(\theta)$ & $\exp{-i\theta Y/2}$ & $Y$-rotation gate \\[9pt] + $R_Z(\theta)$ & $\exp{-i\theta Z/2}$ & $Z$-rotation gate \\[6pt] + $\CX$ & $\dyad{0}\otimes I + \dyad{1}\otimes X$ & Controlled-not gate \\[6pt] \hline\hline \end{tabular} \caption{Common ``native'' operations, often assumed to be physically @@ -471,43 +472,43 @@ depth scale at most polynomially with input size. \def\Description#1{\begin{minipage}[c]{.6\linewidth}{#1}\end{minipage}} \def\GateStrut#1{\vrule height 9pt depth 3pt width 0pt\hskip .25em{#1}\hskip.25em} \begin{tabular}{c @{\TabularSpacing}c@{\TabularSpacing} c} \hline\hline\vrule height 14pt width 0pt - Symbol & Definition & Description \\ + Symbol & Definition & Description \\ \hline\vrule height 1cm width 0pt - $\Qcircuit { &\qw }$ & Wire & \Description{Reperesents the state space + $\Qcircuit { & \qw }$ & Wire & \Description{Reperesents the state space associated to a qubit, i.e., $\Hilbert_2$. Multiple wires, vertically aligned, represent the collective Hilbert space, given by the tensor product of the individual $\Hilbert_2$ spaces - (cf.\ the \Postulate{composite systems} postulate).} - \\[.8cm] - $\Qcircuit @C=1em { \lstick{{}_A}&\qw{/}&\qw }$ & Register & - \Description{Represents multiple wires, i.e., a subspace of dimension - $2^n$, where $n$ is the number of wires in the register. As shown, a - register may be labelled.} \\[.7cm] - $\Qcircuit @C=1em{ &\gate{U}&\qw }$ & Gate & \Description{Unitary $U$ acting + (\viz.\ the \Postulate{composite systems} postulate).} + \\[.8cm] + $\Qcircuit @C=1em { \lstick{{}_A} & \qw{/} & \qw }$ & Register & + \Description{Represents multiple wires, i.e., a subspace of dimension + $2^n$, where $n$ is the number of wires in the register. As shown, a + register may be labelled.} \\[.7cm] + $\Qcircuit @C=1em{ & \gate{U} & \qw }$ & Gate & \Description{Unitary $U$ acting on the state space associated to the incoming wire (left-hand side). The outgoing wire (right-hand side) corresponds to the state space - after the action of the gate.} \\[.7cm] - $\Qcircuit @C=1em { & \meter & \cw }$ & Measurement & \Description{ + after the action of the gate.} \\[.7cm] + $\Qcircuit @C=1em { & \meter & \cw }$ & Measurement & \Description{ Measurement of the state subspace associated to the incoming wire (left-hand side), according to the measurement $\{(\dyad{0}, 0), - \allowbreak (\dyad{1}, 1)\}$ (``computational basis measurement''). + \allowbreak (\dyad{1}, 1)\}$ (``computational basis measurement''). The double wire represents the resulting classical bit (i.e., a - $\ZZ_2$ space).} \\[.8cm] + $\ZZ_2$ space).} \\[.8cm] \begin{minipage}[c]{1.4cm} $\Qcircuit @C=1em @R=1em {\lstick{{}_A}& \ctrl{1} & \qw \\ \lstick{{}_B}{\kern6pt/}& \gate{U} & \qw}$ \end{minipage} & Controlled operation & \Description{Denotes the operation $\dyad{0}_A\otimes I_B + \dyad{1}_A\otimes U_B$ acting on the - collective state space of $A$ and $B$.} \\[.6cm] - $\Qcircuit @C=1em { \lstick{\ket{\psi}} & \gate{U} & \qw}$ & Application & \Description{ + collective state space of $A$ and $B$.} \\[.6cm] + $\Qcircuit @C=1em { \lstick{\ket{\psi}} & \gate{U} & \qw}$ & Application & \Description{ The quantum state resulting from application of the unitary represented by the quantum circuit on the quantum state specified on the left-hand side. The resulting state may be denoted - on the right-hand side. \\ Here, represents the state - $U\ket{\psi}$.} \\[1cm] - \hskip-1.2em $\Qcircuit @C=.5em {& {/}\qw & \gate{\GateStrut{V}} & \gate{\GateStrut{W}} & \qw \\}$ & Composition & \Description{Circuits are - ``read'' left-to-right. Thus, the concatenation of two circuits - denoting the actions of operators, respectively, $V$ and $W$, results - in a circuit denoting the operator $WV$.} \\[.6cm] + on the right-hand side. \\ Here, represents the state + $U\ket{\psi}$.} \\[1cm] + \hskip-1.2em $\Qcircuit @C=.5em { & {/}\qw & \gate{\GateStrut{V}} & \gate{\GateStrut{W}} & \qw \\}$ & Composition & \Description{Circuits are + ``read'' left-to-right. Thus, the concatenation of two circuits + denoting the actions of operators, respectively, $V$ and $W$, results + in a circuit denoting the operator $WV$.} \\[.6cm] \hline\hline \end{tabular} \caption{Quantum circuit notation.} @@ -553,12 +554,12 @@ the underlying state vector before the measurement. Thus, should a classical simulation of a quantum algorithm: % { - \renewcommand{\labelenumi}{\textit{\roman{enumi}.}} - \begin{enumerate} - \item generate a random outcome observing the same output distribution as - the quantum counterpart, or; - \item explicitly specify the distribution of the generated output? - \end{enumerate} +\renewcommand{\labelenumi}{\textit{\roman{enumi}.}} +\begin{enumerate} + \item generate a random outcome observing the same output distribution as + the quantum counterpart, or; + \item explicitly specify the distribution of the generated output? +\end{enumerate} } These two problem specifications correspond, respectively, to the notions of @@ -572,14 +573,14 @@ notions more formally: Given a description of a quantum circuit of $n$ qubits, which corresponds to unitary operator $U$, terminating with a measurement of the first qubit in the computational basis, output $\Tr(\dyad{0} \mkern5mu U \mkern-3mu - \dyad{0_b} U^\dagger)$. + \dyad{0_b} U^\dagger)$. \end{definition} \begin{definition}[Weak simulation \cite{VandenNest2010}] Given a description of a quantum circuit of $n$ qubits, which corresponds to unitary operator $U$, terminating with a measurement of the first qubit in the comptuational basis, output $0$ with probability $\Tr(\dyad{0} - \mkern5mu U \mkern-3mu \dyad{0_b} U^\dagger)$, or $1$ otherwise. + \mkern5mu U \mkern-3mu \dyad{0_b} U^\dagger)$, or $1$ otherwise. \end{definition} \FootnoteLater{By the \Postulate{state space} postulate, a global phase factor @@ -596,7 +597,7 @@ This motivates a different definition of strong simulation by some authors. Namely, recalling Eq.~\eqref{eq:superposition}, note that knowledge of $\alpha_j$ is enough to determine the probability of observing any measurement in the computational basis. However, the converse is not true: because $\Pr[j] -= \abs{\alpha_j}^2$, knowledge of $\Pr[j]$ fails to inform about the complex + = \abs{\alpha_j}^2$, knowledge of $\Pr[j]$ fails to inform about the complex phase of $\alpha_j$\FootnoteNow. So, strong simulation may be taken to mean: \begin{definition}[Strong simulation, wave-function version \cite{Chen2017}] @@ -607,7 +608,7 @@ phase of $\alpha_j$\FootnoteNow. So, strong simulation may be taken to mean: Note that, in all of the definitions above, we took the quantum circuits to be described by a unitary operator, which may not be trivially true if measurements -are performed half-way in the circuit (cf.\ section~\ref{sec:density-matrix}), +are performed half-way in the circuit (\viz.\ section~\ref{sec:density-matrix}), or if classical post-processing is employed. However, a well-known result, which we review in appendix~\ref{appendix:delayed-measurement}, allows us to defer all measurements to the end of the circuit, such that the whole of the @@ -617,7 +618,7 @@ computation is carried out unitarily. Recall that Clifford gates are gates in the Clifford set, i.e., any quantum circuit that can be written in terms of phase, Hadamard, and Controlled-Not -gates (cf.\ Table~\ref{table:basic-operations}). Then, the Gottesman-Knill +gates (\viz.\ Table~\ref{table:basic-operations}). Then, the Gottesman-Knill theorem states the following: \begin{theorem}[Gottesman-Knill \cite{Gottesman1999}] @@ -640,7 +641,11 @@ regime: not only by augmentation of the gate set -- the Clifford+$T$ gate set is already universal -- but also by choice of the input state. Indeed, there exist ``magic states'', such that a supply of these (pre-prepared) quantum states and Clifford operations are enough to perform universal quantum -computation \cite{Bravyi2005}. +computation \cite{Bravyi2005}. Nonetheless, if Clifford gates dominate a +non-Clifford circuit, this structure may be exploited to speed-up computation, +by treating the simulation as a tensor network where the calculation of certain +tensors can be sped-up \cite{Bravyi2016} (\viz.\ section +\ref{sec:tensor-network-simulation}). This move from Clifford-based computation to quantum universality entails a ``jump'', since Clifford circuits are not as powerful as classical circuits. @@ -648,6 +653,10 @@ In Ref.~\cite{VandenNest2010}, this computational gap is discussed and eliminated, by giving a superclass of Clifford circuits, ``$HT$ circuits'', that is equivalent to classical computation and can be weakly simulated. +Finally, note also that certain classes of efficiently simulatable circuits not +discussed here, such as \emph{matchgate} circuits, may relate non-trivially +with Clifford circuits \cite{Valiant2002,Jozsa2008,Brod2016}. + \subsubsection{Schr\"{o}dinger simulation} \label{sec:schrodinger-simulation} @@ -697,9 +706,9 @@ noticing the following: \def\ProdStrut{\rule[-0.3\baselineskip]{0pt}{7pt}} \everymath={\displaystyle} \begin{array}{l} - \bra{x_b} U_L U_{L-1} U_{L-2} \cdots U_2 U_1 \ket{0_b} = {} \\[1em] + \bra{x_b} U_L U_{L-1} U_{L-2} \cdots U_2 U_1 \ket{0_b} = {} \\[1em] {} = \bra{x_b} U_L (\Sigma_{j=0}^{2^n-1} \dyad{j_b}) U_{L-1} (\Sigma_{j'=0}^{2^n-1} \dyad{j'_b}) \\[.5em] - \hfill U_{L-2} \cdots U_2 (\Sigma_{j''=0}^{2^n-1} \dyad{j''_b}) U_1 \ket{0_b} = {} \\[1em] + \hfill U_{L-2} \cdots U_2 (\Sigma_{j''=0}^{2^n-1} \dyad{j''_b}) U_1 \ket{0_b} = {} \\[1em] \hfill {} = \sum_{\mathclap{\{y_{(t)}\} \in \{0,1,\ldots,2^n-1\}^{L-1}}} \mkern 65mu \prod_{\ProdStrut t=0}^{\ProdStrut L-1} \bra{y_{(t+1)}} U_{t} \ket{y_{(t)}} \end{array} \end{equation} @@ -709,7 +718,7 @@ vector space, and letting $\ket*{y_{(L)}} \equiv \ket{x_b}$. Now, take each of the $U_t$ to be the (local, sparse) unitary corresponding to a quantum gate in a quantum circuit, such that $L$ is the depth of the quantum circuit. One may conclude this scheme requires $\BigO(n\cdot(2d)^{n+1})$ time and $\BigO(n \log -d)$ space \cite{Chen2017}. + d)$ space \cite{Chen2017}. This approach may be interpreted as a discrete version of the Feynman path integral formulation, where, simply put, every possible ``computation path'' @@ -719,6 +728,14 @@ paths; each path requires a linear amount of memory to compute, but there are exponentially many paths to consider, which interfere among themselves. This is illustrated in figure~\ref{fig:interference}. +A further advantage of this method is that some of the computational paths may +be simply ignored, at the expense of simulation fidelity. The computational +advantage of not having to compute these paths is sufficiently expressive to +allow for the simulation of real-world implementations thought to be impossible +to simulate (matching their fidelity) \cite{Markov2018}. These considerations +also apply to the \Schrodinger-Feynman method (section +\ref{sec:schrodinger-feynman-simulation}). + \begin{figure} \hskip-.5cm\includegraphics{assets/interference.pdf} \caption{The action of two Hadamard gates (eq.~\ref{eq:hadamard}) acting on @@ -733,6 +750,7 @@ illustrated in figure~\ref{fig:interference}. \end{figure} \subsubsection{Schr\"{o}dinger-Feynman simulation} +\label{sec:schrodinger-feynman-simulation} It is possible to establish an intermediate scheme between \Schrodinger\ simulation (section \ref{sec:schrodinger-simulation}) and Feynman simulation @@ -757,12 +775,48 @@ $\BigO(2^{n-k} \log d)$ space \cite{Chen2017}. This method is well suited for simulating circuits with a grid-like connectivity graph between circuits, as is common in practical implementations \cite{Arute2019,Kim2023,Saffman2010}, and so is used in multiple works pushing -the boundary of quantum advantage \cite{Chen2018,Smelyanskiy2016,Haner2017}. +the boundary of quantum advantage, allowing for simulation of circuits with +significantly more than $50$ qubits \cite{Chen2018,Li2018,Smelyanskiy2016,Haner2017}. \subsubsection{Tensor network simulation} \label{sec:tensor-network-simulation} -TODO +Closely related to the Feynman simulation technique, but generalizing the idea, +tensor-network based simulation regards quantum circuit simulation as a form of +tensor contraction \cite{Vidal2003,Markov2008,Pednault2020}. + +\FootnoteLater{Terminology regarding tensors is not always consistent across + works. For example, the terms \emph{way}, \emph{order}, \emph{degree}, or + \emph{dimension} may be used instead of \emph{rank} + \cite{Joshi1995,DeLathauwer2000,Vasilescu2002,Kolda2009}.} + +Recall that a tensor is an object generalizing matrices: a tensor has upper and +lower (contra- and co-variant) indices; its number of indices determines its +\emph{rank}, while the values that each index may take determine the +\emph{dimension} of the index\FootnoteNow. A given choice of indices yields a +\emph{component} of the tensor, e.g., $T^{ijk}_{lm}$ denotes the $(i,j,k;l,m)$th +component of the tensor $T$. A tensor $T$ is of type $(a,b)$ if it has $a$ +contravariant indices and $b$ covariant indices. Two tensors may be +\emph{contracted} by summing over, respectively, a contravariant and +contravariant index of the same dimension over the product of the two tensors. +I.e., let $M$ and $N$ be two tensors of types $(a,b)$ and $(c,d)$, with +dimension $d$ on each index. The tensor whose components are given by +% +$$ + \sum_{i_k=1}^d M^{i_1 \ldots i_{k-1} i_k i_{k+1} \ldots i_a}_{j_1 \ldots j_b} + N^{k_1 \ldots k_c}_{l_1 \ldots l_{k-1} i_k l_{k+1} \cdots l_d} +$$ +% +is an $(a+c-1,b+d-1)$-type tensor. + +Now, clearly, since a state vector is a vector (a rank-$1$ tensor), and each +operation in a quantum circuit may be represented by a matrix (a rank-$2$ +tensor), it is possible to represent a quantum circuit acting on an input state +as a sequence of tensor products and contractions. The result will be a vector, +the components of which are the entries in the state vector resulting from the +action of the quantum circuit in the input state. + +A citar \cite{Villalonga2019,Guo2019} \appendix @@ -775,21 +829,21 @@ The delayed measurement lemma states: \begin{equation} \def\RegisterSlash{{\hskip 1em /}} {\raisebox{10pt}{ - $\displaystyle + $\displaystyle \Qcircuit @C=1em @R=1em { - & \qw & \ctrl{1} & \meter \\ - \RegisterSlash & \qw & \gate{U} & \qw + & \qw & \ctrl{1} & \meter \\ + \RegisterSlash & \qw & \gate{U} & \qw } - $ + $ }} \mskip 10mu = \mskip 5mu {\raisebox{11pt}{ - $\displaystyle + $\displaystyle \Qcircuit @C=1em @R=1em { - & \meter & \cctrl{1} & \\ - \RegisterSlash & \qw & \gate{U} & \qw + & \meter & \cctrl{1} & \\ + \RegisterSlash & \qw & \gate{U} & \qw } - $ + $ }} \end{equation} %