Began work on the tensor section

This commit is contained in:
Meeg Leeto 2023-07-13 18:03:52 +01:00
parent a1f71abefe
commit 56be9d560a
3 changed files with 349 additions and 133 deletions

View File

@ -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}
}

BIN
main.pdf

Binary file not shown.

316
main.tex
View File

@ -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}
%