US20190220497A1  Phase arithmetic for quantum computation  Google Patents
Phase arithmetic for quantum computation Download PDFInfo
 Publication number
 US20190220497A1 US20190220497A1 US16/252,288 US201916252288A US2019220497A1 US 20190220497 A1 US20190220497 A1 US 20190220497A1 US 201916252288 A US201916252288 A US 201916252288A US 2019220497 A1 US2019220497 A1 US 2019220497A1
 Authority
 US
 United States
 Prior art keywords
 phase
 quantum
 arithmetic
 computing
 log
 Prior art date
 Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
 Pending
Links
 238000000034 method Methods 0.000 claims abstract description 57
 238000004891 communication Methods 0.000 claims description 14
 238000004088 simulation Methods 0.000 claims description 13
 230000001537 neural Effects 0.000 claims description 6
 238000005381 potential energy Methods 0.000 claims description 6
 238000005516 engineering process Methods 0.000 abstract description 17
 230000003321 amplification Effects 0.000 abstract description 16
 238000003199 nucleic acid amplification method Methods 0.000 abstract description 16
 230000002194 synthesizing Effects 0.000 abstract description 12
 239000000470 constituent Substances 0.000 abstract description 2
 239000000203 mixtures Substances 0.000 description 22
 239000002096 quantum dots Substances 0.000 description 19
 230000015654 memory Effects 0.000 description 17
 241001245475 Ancilla Species 0.000 description 15
 238000003860 storage Methods 0.000 description 13
 230000015572 biosynthetic process Effects 0.000 description 8
 238000003786 synthesis reactions Methods 0.000 description 8
 238000004422 calculation algorithm Methods 0.000 description 7
 238000010586 diagrams Methods 0.000 description 6
 239000010955 niobium Substances 0.000 description 5
 241000563994 Cardiopteridaceae Species 0.000 description 4
 280000299341 Linear Systems companies 0.000 description 4
 230000001276 controlling effects Effects 0.000 description 4
 238000007429 general methods Methods 0.000 description 4
 238000002360 preparation methods Methods 0.000 description 4
 230000002441 reversible Effects 0.000 description 4
 239000000969 carriers Substances 0.000 description 3
 239000008264 clouds Substances 0.000 description 3
 280000783366 Enact companies 0.000 description 2
 281999990635 Foundations companies 0.000 description 2
 238000004364 calculation methods Methods 0.000 description 2
 230000000875 corresponding Effects 0.000 description 2
 238000000354 decomposition reactions Methods 0.000 description 2
 230000001419 dependent Effects 0.000 description 2
 238000010801 machine learning Methods 0.000 description 2
 230000000051 modifying Effects 0.000 description 2
 238000005457 optimization Methods 0.000 description 2
 230000001902 propagating Effects 0.000 description 2
 230000003595 spectral Effects 0.000 description 2
 241000121629 Majorana Species 0.000 description 1
 241001246288 Succineidae Species 0.000 description 1
 241001442055 Vipera berus Species 0.000 description 1
 238000004458 analytical methods Methods 0.000 description 1
 235000000332 black box Nutrition 0.000 description 1
 244000085682 black box Species 0.000 description 1
 238000010276 construction Methods 0.000 description 1
 238000007728 cost analysis Methods 0.000 description 1
 230000000694 effects Effects 0.000 description 1
 238000005040 ion trap Methods 0.000 description 1
 238000004519 manufacturing process Methods 0.000 description 1
 239000011159 matrix materials Substances 0.000 description 1
 230000004048 modification Effects 0.000 description 1
 238000006011 modification reactions Methods 0.000 description 1
 230000003287 optical Effects 0.000 description 1
 230000002104 routine Effects 0.000 description 1
 239000007787 solids Substances 0.000 description 1
 238000000844 transformation Methods 0.000 description 1
 230000001131 transforming Effects 0.000 description 1
Images
Classifications

 G—PHYSICS
 G06—COMPUTING; CALCULATING; COUNTING
 G06F—ELECTRIC DIGITAL DATA PROCESSING
 G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
 G06F17/10—Complex mathematical operations
 G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
 G06F17/12—Simultaneous equations, e.g. systems of linear equations

 G—PHYSICS
 G06—COMPUTING; CALCULATING; COUNTING
 G06F—ELECTRIC DIGITAL DATA PROCESSING
 G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
 G06F17/10—Complex mathematical operations
 G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, KarhunenLoeve, transforms

 G—PHYSICS
 G06—COMPUTING; CALCULATING; COUNTING
 G06N—COMPUTER SYSTEMS BASED ON SPECIFIC COMPUTATIONAL MODELS
 G06N10/00—Quantum computers, i.e. computer systems based on quantummechanical phenomena
Abstract
This application relates generally to quantum computing. In particular, this application discloses example tools and techniques for performing phase arithmetic in quantum computer environments. Embodiments of the disclosed technology allow one to multiply N phases within error ϵ using (N2 log(N/ϵ) log log(1/ϵ)) queries to the circuits that output the N constituent phases using (N(log(N)+log log(1/ϵ))) ancillary qubits. Also disclosed are example applications of these techniques to synthesizing specific functions of phase and new error bounds for robust amplitude amplification that is quadratically better than the standard bound.
Description
 This application claims the benefit of U.S. Provisional Application No. 62/619,027 entitled “PHASE ARITHMETIC FOR QUANTUM COMPUTATION” and filed on Jan. 18, 2018, which is incorporated herein by reference in their entirety.
 This application relates generally to quantum computing. In particular, this application discloses example tools and techniques for performing phase arithmetic in quantum computer environments.
 Generally speaking, two approaches are known for performing arithmetic using quantum computers which involve reversible logic and phase arithmetic. While phase arithmetic can require exponentially fewer logical qubits than reversible arithmetic, in some cases it requires superpolynomially more gates. In this disclosure, example methods for performing arithmetic in phase are disclosed that use linear combinations of unitaries to enact nonlinear transformations in the phase.
 Specifically, embodiments of the disclosed technology allow one to multiply N phases within error ϵ using (N^{2 }log(N/ϵ) log log(1/ϵ)) queries to the circuits that output the N constituent phases using (N(log(N)+log log(1/ϵ))) ancillary qubits. In contrast, previous approaches require (log(1/ϵ)) ancillae or have complexity that is superpolylogarithmic in 1/ε. Also disclosed are example applications of these techniques to synthesizing specific functions of phase and new error bounds for robust amplitude amplification that is quadratically better than the standard bound.
 In some embodiments, in a quantum computing device, phase arithmetic is performed using linear combinations of more than one unitaries; the result of the phase arithmetic from the quantum computing device is then read out. In certain implementations, the performing phase arithmetic is performed without using a repeatuntilsuccess process or circuit. In further implementations, the phase arithmetic comprises a smooth multivariable function. In some implementations, the phase arithmetic comprises a multiplication function of two phases. In certain implementations, the phase arithmetic comprises a multiplication function of a phase with a fixed real number. In further implementations, phase estimation is used to output the phase as a bit string. In some implementations, the function to be computed represents the classification output by a quantum neural network. In further implementations, the functions computed represent part of or the entirety of the kinetic or potential energy of a quantum system within a quantum simulation. The method can be performed by one or more computerreadable media storing computerexecutable instructions, which when executed by a classical computer cause the classical computer to perform the method.
 In further embodiments, the method is performed by a quantum computing system. In such embodiments, the quantum computing system, comprises a quantum computing device comprising a quantum circuit; and a classical computing device in communication with the quantum computing device and adapted to perform a method, the method comprising: performing phase arithmetic in the quantum computing device using linear combinations of more than one unitaries; and reading out the result of the phase arithmetic from the quantum computing device. In certain implementations, the performing phase arithmetic is performed without using a repeatuntilsuccess process or circuit. In further implementations, the phase arithmetic comprises a smooth multivariable function. In some implementations, the phase arithmetic comprises a multiplication function of two phases. In certain implementations, the phase arithmetic comprises a multiplication function of a phase with a fixed real number. In further implementations, phase estimation is used to output the phase as a bit string. In some implementations, the function to be computed represents the classification output by a quantum neural network. In further implementations, the functions computed represent part of or the entirety of the kinetic or potential energy of a quantum system within a quantum simulation.
 In some embodiments, operations in a quantum computing device are performed by a method using (a) linear combinations of unitary methods to implement arithmetic functions, other than addition, of more than one variable in phase in the quantum computing device; (b) linear combinations of unitary methods to implement arithmetic functions over more than one variable in phase in the quantum computing device using Fourier series approximations; or (c) linear combination of unitary methods in the quantum computing device to implement a fractional query of a diagonal phase oracle which outputs a range of phases. In certain implementations, the method comprises using (a) or (b) to implement generic smooth functions of many variables in phase on quantum computers. Further, in some implementations, the method comprises using (c).
 Any of the embodiments disclosed above can be implemented as part of a system comprising a quantum computing device comprising a quantum circuit; and a classical computing device in communication with the quantum computing device and adapted to perform any of the disclosed methods.
 Any of the embodiments disclosed above can also be implemented by one or more computerreadable media storing computerexecutable instructions, which when executed by a classical computer cause the classical computer to perform a method of controlling a quantum computing device according to any of the disclosed methods.
 The foregoing and other objects, features, and advantages of the disclosed technology will become more apparent from the following detailed description, which proceeds with reference to the accompanying figures.

FIG. 1 is a diagram showing a geometric illustration of the parameters of the Grover operator G_{U } 

$\frac{1+\mathrm{Re}\ue8a0\left(\u3008\phi \ue89e\uf603W\uf604\ue89e\phi \u3009\right)}{2},$ 
FIG. 3 is a schematic block diagram 300 showing a quantum circuit for implementing a Fourier series of H=log(U). 
FIG. 4 is a flow chart showing an example method for performing a linear combination of unitaries. 
FIG. 5 is a flow chart showing how linear combinations of unitary circuits (LCU) can be used for multiplication. 
FIG. 6 is a flow chart showing an example method for computing the real part of the expectation value of a function. 
FIG. 7 is a flow chart showing an example method for computing elementary trigonometric functions (using the method ofFIG. 6 ) and outputting result as a phase. 
FIG. 8 illustrates a generalized example of a suitable classical computing environment in which aspects of the described embodiments can be implemented. 
FIG. 9 shows an example of a possible network topology (e.g., a clientserver network) for implementing a system according to the disclosed technology. 
FIG. 10 shows another example of a possible network topology (e.g., a distributed computing environment) for implementing a system according to the disclosed technology. 
FIG. 11 shows an exemplary system for implementing the disclosed technology. 
FIG. 12 is a flow chart showing a general method for performing embodiments of the disclosed technology. 
FIG. 13 is a flow chart showing a further general method for performing embodiments of the disclosed technology.  As used in this application, the singular forms “a,” “an,” and “the” include the plural forms unless the context clearly dictates otherwise. Additionally, the term “includes” means “comprises.” Further, the term “coupled” does not exclude the presence of intermediate elements between the coupled items. Further, as used herein, the term “and/or” means any one item or combination of any items in the phrase.
 Although the operations of some of the disclosed methods are described in a particular, sequential order for convenient presentation, it should be understood that this manner of description encompasses rearrangement, unless a particular ordering is required by specific language set forth below. For example, operations described sequentially may in some cases be rearranged or performed concurrently. Moreover, for the sake of simplicity, the attached figures may not show the various ways in which the disclosed systems, methods, and apparatus can be used in conjunction with other systems, methods, and apparatus. Additionally, the description sometimes uses terms like “produce” and “provide” to describe the disclosed methods. These terms are highlevel abstractions of the actual operations that are performed. The actual operations that correspond to these terms will vary depending on the particular implementation and are readily discernible by one of ordinary skill in the art.
 Since the discovery of quantum computing, a host of methods have been devised to perform arithmetic operations using quantum operations. While arithmetic is typically viewed as a primitive operation for ordinary computers, its implementation on a quantum computer often comes with large overheads due to the reversible implementation requirement. Binary computation in general can be made reversible by using a process known as the Bennett trick, which computes the result of the arithmetic out of place, therefore requiring new qubit registers for the output. While this does not substantially affect the time complexity of quantum arithmetic, it can have a substantial impact on the space complexity because intermediate results needed for a computation often cannot be efficiently uncomputed during a larger algorithm. Even in the case of some basic operations, such as the computation of the reciprocal, it can lead to an overhead of thousands of quantum bits. This alone can render such algorithms impractical for small faulttolerant quantum computers.
 Phase arithmetic was developed as a way to prevent this. The idea behind phase arithmetic is to store the values needed for a computation in phase, rather than in qubits. This encoding allows a single idealized logical qubit to store the input to infinite precision (in practice fault tolerant considerations render the ability of a single qubit to store only a finite precision number when using a finite distance code). In such cases, the input is not assumed to be bit strings but is given by phase angles of an oracle. For example, such an input oracle may map j e^{ix} ^{ j }j for x_{j}∈[−1, 1] and the aim could be to perform j, k e^{ix} ^{ j } ^{x} ^{ k }j, k within a fixed error tolerance using calls to the input oracle. The approach considered in the literature uses a gadget to build up the Taylor series of a function of several inputs in the phase using a gadgets known as generalized PAR and gearbox circuits. These gadgets allow one, using a measure and repeatuntilsuccess scheme, to perform such arithmetic.
 A notable issue with such approaches is that the success probability of the arithmetic step depends on the form of the state. This means that without modification the repeatuntilsuccess circuits collapse the state in each application. This problem can be dealt with by using a timeslicing scheme to make the success probability nearuniform over all inputs and oblivious amplitude amplification, but with known constructions this renders the resources needed for the construction inversepolynomial in the desired accuracy rather than subpolynomial.
 Here, example embodiments are disclosed that provide a method based on a linearcombination of unitaries that manifestly avoids the need to use repeatuntilsuccess circuits to perform phase arithmetic. These example approaches, in some cases, use slightly more qubits than previous phase arithmetic approaches, but obtain polylogarithmic scaling. Notably, embodiments of the disclosed methods allow one to perform entire algorithms within the LCU framework. Keeping the entire algorithm inside the LCU formalism means that less work is needed to recast the output of any quantum procedure that is used to perform the arithmetic which can lead to considerable improvements in certain algorithms.
 One can interpret the phase as a real number in (−π, π], therefore one can use it for representing numbers. In order to avoid “wrappingaround” one desirably restricts the range to a subinterval of (−π, π ]. Since very close phases are hard to distinguish, the range [−1, 1] is used, so that the minimal and the maximal phases are easy to distinguish. (In principle one could use a larger subinterval, but this choice is convenient for example purposes.)
 Since global phases are irrelevant in quantum mechanics, the numbers are represented as relative phases. Inspired by many quantum algorithms, the phases are represented dynamically by unitaries rather than statically by some quantum state. Therefore the following input model is used:
 For a vector of real numbers {right arrow over (x)}∈[−1, 1]^{N }the (controlled) phase gate is defined as the unitary

${P}_{\overrightarrow{x}}=\uf6030\u3009\ue89e\u30080\uf604\otimes \sum _{k=1}^{N}\ue89e\uf603k\u3009\ue89c\u3008k\uf604+\uf6031\u3009\ue89e\u30081\uf604\otimes \sum _{k=1}^{N}\ue89e\uf603k\u3009\ue89c\u3008k\uf604\ue89e{e}^{{\mathrm{ix}}_{k}}\in {\u2102}^{2\ue89eN\times 2\ue89eN}.$  And a phase oracle is defined as the unitary
 where a∈ is the number of ancilla qubits needed to implement the phase oracle and (I⊗0 0^{⊗a})V=0. Õ_{{right arrow over (x)} }is called an εapproximate phase oracle if it is εclose (in spectral norm) to a phase input oracle O{right arrow over (x)}. When phase oracle access is assumed, access to its inverse is assumed as well.
 Note that in the above definition P_{{right arrow over (x)} }differs from O_{{right arrow over (x)} }only in that the latter is allowed to act on an ancillary space that is initially set to zero and is promised to revert those qubits to 0 ^{⊗a}. Similarly, the operator V can be dropped from the definition if one also wishes to have the action of the phase oracle only defined on ancillary qubits that are preinitialized to zero.
 The discussion below describes how to implement various arithmetic operations in phase, in the sense that it is shown how to implement the corresponding phase oracle by using the input phase oracles. The operations described might create phases that are out of the range [−1, 1]. But the procedures are only guaranteed to work when the input phases are in the range [−1, 1], so one needs to be careful when chaining operations.
 In the following, particular attention is drawn to how to perform arithmetic operations using phase oracles. When one does the cost analysis, one can calculate the number of applications (or queries) of the input oracles O_{{right arrow over (x)}}, Q_{ij }and their inverses.
 Fundamentally only two operations are needed to compute an arbitrary analytic function: addition and multiplication. So in order to show that the disclosed version of phase arithmetic can implement such a function, one needs to demonstrate the capability to perform both operations. The discussion below first shows how to perform addition, then focuses on performing multiplication between two phase inputs, and finally a generalization of this to the product of N phase inputs.
 III.A. Addition
 Suppose that {right arrow over (x)}_{j}∈[−1, 1]^{N }for all j=1, . . . , D and one has access to the phase oracles O_{{right arrow over (x)}j }for j=1, . . . , D. The phase oracle O_{Σ} _{ j } _{{right arrow over (x)}} _{ j }, can be implemented using only queries D to these oracles and in general the query complexity of phase addition is in Ω(D) which implies that this protocol is asymptotically optimal in a blackbox setting.
 The upper bound is trivial. Suppose that O_{{right arrow over (x)} }and O_{{right arrow over (y)} }are phase oracles, then

O _{{right arrow over (x)}+{right arrow over (y)}} =O _{{right arrow over (x)}} O _{{right arrow over (y)}} =O _{{right arrow over (y)}} O _{{right arrow over (x)}}.  Thus by recursing this process D times it is straight forward to see that

$\prod _{j=1}^{D}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{O}_{{\overrightarrow{x}}_{j}}={O}_{\sum _{j=1}^{D}\ue89e{\overrightarrow{x}}_{j},}$  thus addition can be performed using precisely D queries to these phase oracles.
 Next one needs to show that one cannot perform such an addition using o(D) queries to these oracles. One can prove this by contradiction. Assume such a process existed then one could take x_{1}=x_{2}= . . . =x_{D}=x for the scalar case of N=1 and thus one can implement using such an adder O_{Dx }using o(D) queries to the oracle O_{x}. It is shown in Acin, Antonio, “Statistical distinguishability between unitary operations”, Physical review letters, vol. 87, no. 17, pg. 177901 (2001) that the minimal number of queries needed to unambiguously distinguish the phase oracles O_{x }from O_{0 }is π/[2x]. Similarly π/[2Dx] queries are needed to distinguish between O_{Dx }and O_{0 }unambiguously. If O_{Dx }is distinguished unambiguously from O_{0 }then O_{x }is unambiguously distinct from O_{0 }also since D≥1. Now if O_{Dx }can be implemented using o(D) queries to O_{x }then O_{x }can be distinguished from O_{0 }using o(D)[π/(2Dx)]∈o(1/x) queries. This is a contradiction and hence the query complexity of implementing O_{Dx }is in Ω(D). □
 As mentioned above, addition is optimal for integer multiplication of a phase input. While this means that the development of customized methods for multiplying phases by numbers larger than 1 is largely unnecessary, addition does not provide a way to multiply the phase output by a phase oracle by a noninteger constant or for that matter the phase output by a second phase oracle. The following section addresses this point.
 III.B Multiplication
 III.B.1. Multiplying Two Phases
 The main technical tool used to perform multiplications is a specialized version of the LCU Lemma for the case when all unitary is a power of some unitary U. See Lemma 4 of Dominic W. Berry et al., “Hamiltonian Simulation with Nearly Optimal Dependence on all Parameters,” IEEE 56th Annual Symposium on Foundations of Computer Science, pgs. 792809 (2015); Lemma 8 of Andrew M. Childs et al., “Quantum linear systems algorithm with exponentially improved dependence on precision,” arxiv 1511.02306 (2015); and Joran van Apeldoorn et al., “Quantum SDPSolvers: Better upper and lower bounds,” arxiv 1705.01843v1 (2017). Here, a version of the LCU Lemma tailored for the disclosed applications is described: (its proof can be found in the appendix)


$C:\uf603\psi \u3009\ue89e{\uf6030\u3009}^{\otimes a}\to \frac{L}{B}\ue89e\uf603\psi \u3009\ue89e{\uf6030\u3009}^{\otimes a}+\gamma \ue89e\uf603{\Phi}^{\perp}\u3009,\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{where}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e(I\otimes \uf6030\u3009\ue89e\u30080\ue89e{\uf603}^{\otimes a})\uf604\ue89e{\Phi}^{\perp}\u3009=0,$  and γ∈[0, 1], Φ^{⊥} might be ψdependant. Moreover C can be implemented using a single application of the (controlled) U^{−2} ^{ b }gate and a single use of the (controlled) gates U^{2} ^{ b−1 }, U^{2} ^{ b−2 }, . . . , U^{1 }with using (M) other twoqubit gates and a=(log(M)) additional ancilla qubits.
 This lemma is often used together with an oblivious amplitude amplification, which has the advantage over the usual amplitude amplification, that is does not need to uncompute the initial state during each iteration: (its proof can be found in the appendix)


$\begin{array}{cc}\uf605\prod _{2}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eW\ue89e\uf603\psi \u3009\uf606\in \left[\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\ue89e\left(1\varepsilon \right),\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\ue89e\left(1+\varepsilon \right)\right].& \left(1\right)\end{array}$ 
$\uf605{G}^{r}\ue89eW\ue89e\uf603\psi \u3009=\frac{\prod _{2}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eW\ue89e\uf603\psi \u3009}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf606\le \frac{7}{2}\ue89e\varepsilon .$  or in other words

$\uf605{G}^{r}\ue89eW\ue89e\prod _{1}=\frac{\prod _{2}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eW\ue89e\prod _{1}}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf606\le \frac{7}{2}\ue89e\varepsilon ,$  Now the theorem is proved for multiplication, performed with phase arithmetics.



$\sum _{k=K+1}^{\infty}\ue89e\frac{1}{1\ue89ek!}\le \frac{\varepsilon}{7}.$  For such a K it is easy to see that

$\begin{array}{cc}\uf603{e}^{\mathrm{ixy}}\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e{x}^{k}\ue89e{y}^{k}\uf604\le \varepsilon /7.& \left(2\right)\end{array}$  Moreover, for all x,y∈[−π/2, π/2] one has

$\begin{array}{cc}\begin{array}{c}\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e{x}^{k}\ue89e{y}^{k}=\ue89e\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e\mathrm{arc}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\mathrm{sin}}^{k}\ue8a0\left(\mathrm{sin}\ue8a0\left(x\right)\right)\ue89e\mathrm{arc}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\mathrm{sin}}^{k}\ue8a0\left(\mathrm{sin}\ue8a0\left(y\right)\right)\\ =\ue89e\sum _{k=0}^{K}\ue89e\frac{{i}^{k}\ue89e{\pi}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}}{k!\ue89e{4}^{k}}\ue89e\frac{\mathrm{arc}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\mathrm{sin}}^{k}\ue8a0\left(\mathrm{sin}\ue8a0\left(x\right)\right)}{{\left(\pi /2\right)}^{k}}\ue89e\frac{\mathrm{arc}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\mathrm{sin}}^{k}\ue8a0\left(\mathrm{sin}\ue8a0\left(y\right)\right)}{{\left(\pi /2\right)}^{k}}.\end{array}& \left(3\right)\end{array}$  Now one can use the Taylor series representation arcsin^{k}(z)/(π/2)^{k}=Σ_{l=0} ^{∞}b_{l} ^{(k)}z^{l }valid for all z∈[−1, 1]. As shown in Appendix B of Joran van Apeldoorn et al., “Quantum SDPSolvers: Better upper and lower bounds,” arxiv 1705.01843v1 (2017), ∥b^{(k)}∥_{1}=1 and the coefficients are efficiently computable. Since x,y∈[−1, 1] one has that sin(x), sin(y)∈[− 6/7, 6/7]. On the other hand if z∈[− 6/7, 6/7] then for

$L=\lceil {\mathrm{log}}_{\frac{7}{6}}\ue8a0\left(84/\varepsilon \right)\rceil $  one gets that

$\begin{array}{cc}\uf603\mathrm{arc}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\mathrm{sin}}^{k}\ue8a0\left(z\right)/{\left(\pi /2\right)}^{k}\sum _{\ue54b=0}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{z}^{\ue54b}\uf604\le \varepsilon /168.& \left(4\right)\end{array}$  Moreover, since

$\begin{array}{cc}\sum _{k=0}^{K}\ue89e\frac{{\pi}^{2\ue89ek}}{k!\ue89e{4}^{k}}<{e}^{{\pi}^{2}/4}<12& \left(5\right)\end{array}$  by combining (3)(4) one gets that

$\begin{array}{cc}\uf603\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e{x}^{k}\ue89e{y}^{k}\sum _{k=0}^{K}\ue89e\frac{{i}^{k}\ue89e{\pi}^{2\ue89ek}}{k!\ue89e{4}^{k}}\ue89e\sum _{\ue54b=0}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left(x\right)\ue89e\sum _{{\ue54b}^{\prime}=0}^{L}\ue89e{b}_{{\ue54b}^{\prime}}^{\left(k\right)}\ue89e{\mathrm{sin}}^{{\ue54b}^{\prime}}\ue8a0\left(y\right)\uf604\le \varepsilon /7.& \left(6\right)\end{array}$  Now one can use the fact that

$\mathrm{sin}\ue8a0\left(x\right)=\frac{{e}^{\mathrm{ix}}{e}^{\mathrm{ix}}}{2\ue89ei}$ 
$\begin{array}{cc}\sum _{k=0}^{K}\ue89e\frac{{i}^{k}\ue89e{\pi}^{2\ue89ek}}{k!\ue89e{4}^{k}}\ue89e\sum _{\ue54b=0}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left(x\right)\ue89e\sum _{{\ue54b}^{\prime}=0}^{L}\ue89e{b}_{{\ue54b}^{\prime}}^{\left(k\right)}\ue89e{\mathrm{sin}}^{{\ue54b}^{\prime}}\ue8a0\left(y\right)=\sum _{m=L}^{L}\ue89e\sum _{{m}^{\prime}=L}^{L}\ue89e{c}_{m,{m}^{\prime}}\ue89e{e}^{\mathrm{imx},}\ue89e{e}^{{\mathrm{im}}^{\prime}\ue89ey},& \phantom{\rule{0.3em}{0.3ex}}\end{array}$  where ∥c∥_{1}≤≤12 as follows from (5). Using (2),(6) and the triangle inequality one can see that

$\begin{array}{cc}\uf603{e}^{\mathrm{ixy}}\sum _{m=L}^{L}\ue89e\sum _{{m}^{\prime}=L}^{L}\ue89e{c}_{m,{m}^{\prime}}\ue89e{e}^{\mathrm{imx},}\ue89e{e}^{{\mathrm{im}}^{\prime}\ue89ey}\uf604\le 2\ue89e\varepsilon /7.& \left(7\right)\end{array}$  Since 1/∥c∥_{1}≥ 1/12≥sin(π/38), using the LCU Lemma 3 one can implement a unitary W:

${{\uf6031\u3009\uf604\ue89e0\u3009}^{\otimes a}\to \uf6031\u3009\uf604\ue89e0\u3009}^{\otimes a}\ue89e\sum _{m=L}^{L}\ue89e\sum _{{m}^{\prime}=L}^{L}\ue89e\mathrm{sin}\ue8a0\left(\pi /38\right)\ue89e{c}_{m,{m}^{\prime}}\ue89e{e}^{\mathrm{imx}}\ue89e{e}^{{\mathrm{im}}^{\prime}\ue89ey}+\gamma \ue89e\uf603{\Phi}^{\perp}\u3009$  s.t. (I⊗0 0^{⊗a})Φ^{⊥} =0, with 2L uses of O_{x}, O_{y}, or their inverses, (L^{2}) extra gates (If y is a known number as discussed in Subsection III.B.2. “Multiplying a phase with a fixed real number,” then one of the summations can be precomputed in order to reduce the state preparation step to have gate complexity only (L)) and a=(log(L)) additional qubits. Since π/2=(2·9+1)π/38, as Lemma 4 shows, using 9 oblivious amplitude amplification steps on W one gets an εapproximate oracle Õ_{xy}. This final step only adds a constant factor to the gate complexity and qubit count. □
 III.B.2. Multiplying a Phase with a Fixed Real Number


 First, O_{x }is repeated a total number of └λ┘ times, then the query O_{λx }is implemented using the techniques of Theorem 5 replacing in (7) the e^{im′y }terms with the number e^{im′(λ└λ┘)}. Since it reduces the number of LCU terms, as noted in the proof, the additional gate complexity coming from state preparation reduces to (log(1/ε)). □
 Note that in the above proof one can think about e^{ix(λ└λ┘) }as a fractional phase query. This fractional query is a generalization of the fractional query introduced for discrete phases by Cleve et al., “Efficient discretetime simulations of continuoustime quantum query algorithms,” Proceedings of the 41st Annual ACM Symposium on Theory of Computing, pgs. 409416 (2009), arxiv 0811.4428. The fractional query method described in that reference cannot be directly applied to the continuous phase oracle that is described herein. There is also an alternative approach Sheridan et al., “Approximating fractional time quantum evolution”, Journal of Physics A, volume 42(18), pgs. 185302 (2009), for fractional queries for generic unitaries, however its complexity depends polynomially on the precision rather than logarithmically as the described method does for diagonal unitaries.
 The above method is easy to generalize to the case when one has vectors, e.g., one can implement O_{{right arrow over (z)} }with similar complexity where z_{j}=x_{j}·y_{j}.
 Finally, a lemma is used which will be used for implementing Fourier series.


$U=\uf6030\u3009\ue89e{\u30080\uf604}^{\otimes a}\otimes \sum _{m\in S}\ue89e\uf603m\u3009\ue89e\u3008m\uf604\ue89e{e}^{\mathrm{im}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\gamma \ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ex}+V,\text{}\ue89e\mathrm{where}\ue89e\text{}\left(\uf6030\u3009\ue89e{\u30080\uf604}^{\otimes a}\otimes {I}_{2}^{\otimes \left(b+1\right)}\right)\ue89eV=0$ 

$\begin{array}{cc}\left(\left(\uf6030\u3009\ue89e\u30080\uf604+\uf6031\u3009\ue89e\u30081\uf604\ue89e{e}^{i\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{2}^{b}\ue89e\gamma \ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ex}\right)\otimes {I}_{2}^{b}\right)\ue89e\prod _{v=0}^{b}\ue89e{I}_{2}^{\otimes bv}\otimes \left(\uf6030\u3009\ue89e\u30080\uf604+\uf6031\u3009\ue89e\u30081\uf604\ue89e{e}^{i\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{2}^{v}\ue89e\gamma \ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ex}\right)\otimes {I}_{2}^{v1}.& \left(8\right)\end{array}$  Using Lemma 6 one can implement the phase oracle  0+1 1e^{±i2} ^{ v } ^{γx }with ε/(b+1) precision using (2^{v}+log(b/ε)) queries to O_{x }with using (log(b/ε)) additional twoqubit gates and (log log(b/ε)) additional ancilla qubits. Using the decomposition of the circuit 300 in
FIG. 3 , this yields an ε precise implementation of the operator U using (2^{b}+b log(b/ε)) queries to O_{x }with the use of (b log(b/ε)) additional twoqubit gates and (log log(b/ε)) additional ancilla qubits, since the ancilla qubits can be reused. □  III.B.3. Multiplying Multiple Phases
 If one looks at the multiplication that has been devised for two phases it seems like the cost blows up exponentially for multiplying multiple phases together. This subsection explains how to keep the cost polynomial in the number of terms.
 Suppose ε∈(0, ½), {right arrow over (x)}∈[−1, 1]^{N }for integer N≥1 and one has access to the phase oracle O_{{right arrow over (x)}}, then one can implement an εapproximate phase oracle

${\stackrel{~}{O}}_{{\Pi}_{j=1}^{N}\ue89e{x}_{j}}$ 

$\begin{array}{cc}\phantom{\rule{4.4em}{4.4ex}}\ue89e\uf603{e}^{i\ue89e\prod _{j=1}^{N}\ue89e{x}_{j}}\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e\prod _{j=1}^{N}\ue89e{x}_{j}^{k}\uf604\le \varepsilon /14.\ue89e\text{}\ue89e\phantom{\rule{4.4em}{4.4ex}}\ue89e\mathrm{Moreover}\ue89e\text{}\ue89e\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e\prod _{j=1}^{N}\ue89e{x}_{j}^{k}=\ue89e\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e{\left(\frac{2}{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}\right)}^{\mathrm{Nk}}\ue89e\prod _{j=1}^{N}\ue89e{\left({x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}\right)}^{k}=\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e{\left(\frac{1}{11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)}\right)}^{\mathrm{Nk}}\ue89e\prod _{j=1}^{N}\ue89e\frac{{\mathrm{arcsin}}^{k}}{{\left(2/\pi \right)}^{k}}\ue89e\left(\mathrm{sin}\ue8a0\left({x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}\right)\right)=\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e{\gamma}_{N}^{k}\ue89e\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{\infty}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left({x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}\right),\text{}\ue89e\phantom{\rule{4.4em}{4.4ex}}\ue89e\mathrm{where}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\gamma \ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN={\left(\frac{1}{11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)}\right)}^{N}\le \frac{16}{9}.& \left(9\right)\end{array}$  Now one can use that ∥b^{(k)}∥_{1}=1,

$\begin{array}{cc}\sum _{k=0}^{K}\ue89e\frac{1}{k!}\ue89e{\gamma}_{N}^{k}<{e}^{16/9}<6,\text{}\ue89e\mathrm{and}\ue89e\text{}\ue89e\mathrm{sin}\ue89e\left({x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}\right)\le 1\Theta \ue8a0\left(1/{N}^{2}\right)& \left(10\right)\end{array}$ 
$\begin{array}{cc}\uf603\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e\prod _{j=1}^{N}\ue89e{x}_{j}^{k}\sum _{k=0}^{K}\ue89e\frac{{i}^{k}\ue89e{\gamma}_{N}^{k}}{k!}\ue89e\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left({x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}\right)\uf604\le \varepsilon /28.& \left(11\right)\end{array}$  Let ε′:=ε/196, now one can use the fact that

$\mathrm{sin}\ue8a0\left(z\right)=\frac{{e}^{\mathrm{iz}}{e}^{\mathrm{iz}}}{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ei}$ 
$\phantom{\rule{4.4em}{4.4ex}}\ue89e\uf603\underset{\underset{c\ue8a0\left(z,\ue54b\right)\ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\text{:}\ue89e\text{=}}{\uf613}}{\stackrel{\stackrel{g\ue8a0\left(z,\ue54b\right)\ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\text{:}\ue89e\text{=}}{\uf612}}{{\left(\frac{i}{2}\right)}^{\ue54b}\ue89e\sum _{{m}^{\prime}=\lceil \ue54b/2\rceil {M}^{\prime}}^{\lfloor \ue54b/2\rfloor +{M}^{\prime}}\ue89e{\left(1\right)}^{{m}^{\prime}}\ue89e\left(\begin{array}{c}\ue54b\\ {m}^{\prime}\end{array}\right)\ue89e{e}^{i\ue8a0\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{m}^{\prime}\ue54b\right)\ue89ez}}{\mathrm{sin}}^{\ue54b}\ue8a0\left(z\right)}\uf604\le \frac{{\varepsilon}^{\prime}}{N}.\text{}\ue89e\phantom{\rule{4.4em}{4.4ex}}\ue89e\mathrm{Let}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e{z}_{j}\ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\text{:}\ue89e\text{=}\ue89e{x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2},\mathrm{then}$ $\uf603\sum _{k=0}^{K}\ue89e\frac{{i}^{k}\ue89e{\gamma}_{N}^{k}}{k!}\ue89e\left(\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89eg\ue8a0\left({z}_{j},\ue54b\right)\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left({z}_{j}\right)\right)\uf604\le 6\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\underset{k}{\phantom{\rule{0.3em}{0.3ex}}\ue89e\mathrm{max}}\ue89e\uf603\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89eg\ue8a0\left({z}_{j},\ue54b\right)\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left({z}_{j}\right)\uf604=6\ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\underset{k}{\mathrm{max}}\ue89e\uf603\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue8a0\left({\mathrm{sin}}^{\ue54b}\ue8a0\left({z}_{j}\right)+c\ue8a0\left({z}_{j},\ue54b\right)\right)\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left({z}_{j}\right)\uf604$  Now one can use the identity:

$\begin{array}{cc}\prod _{j=1}^{N}\ue89e\left({a}_{j}+{c}_{j}\right)\prod _{j=1}^{N}\ue89e{a}_{j}=\sum _{{j}^{\prime}=1}^{N}\ue89e\left(\prod _{j=1}^{{j}^{\prime}1}\ue89e{a}_{j}\right)\ue89e{c}_{{j}^{\prime}}\left(\prod _{j={j}^{\prime}+1}^{N}\ue89e\left({a}_{j}+{c}_{j}\right)\right)=6\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\underset{k}{\phantom{\rule{0.3em}{0.3ex}}\ue89e\mathrm{max}}\ue89e\uf603\sum _{{j}^{\prime}=1}^{N}\ue89e\left(\prod _{j=1}^{{j}^{\prime}1}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{\mathrm{sin}}^{\ue54b}\ue8a0\left({z}_{j}\right)\right)\ue89e\left(\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89ec\ue8a0\left({z}_{{j}^{\prime}},\ue54b\right)\right)\ue89e\left(\prod _{j={j}^{\prime}+1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue8a0\left({\mathrm{sin}}^{\ue54b}\ue8a0\left({z}_{j}\right)+c\ue8a0\left({z}_{j},\ue54b\right)\right)\right)\uf604\le 6\ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\underset{k}{\mathrm{max}}\ue89e\uf603\sum _{{j}^{\prime}=1}^{N}\ue89e{1}^{{j}^{\prime}1}\ue89e\frac{{\varepsilon}^{\prime}}{N}\ue89e{\left(1+\frac{{\varepsilon}^{\prime}}{N}\right)}^{Nj}\uf604\le 6\ue89e\uf603{{\varepsilon}^{\prime}\ue8a0\left(1+{\varepsilon}^{\prime}/N\right)}^{N}\uf604\le 6\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\varepsilon}^{\prime}\ue89e{e}^{{\u03f5}^{\prime}}\le 6\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\varepsilon}^{\prime}\ue89e{e}^{1/8}\le 7\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\varepsilon}^{\prime}=\varepsilon /28.& \left(12\right)\end{array}$  One can therefore conclude from the triangle inequality and equations (11) and (12) that

$\begin{array}{cc}\uf603\sum _{k=0}^{K}\ue89e\frac{{i}^{k}}{k!}\ue89e\prod _{j=1}^{N}\ue89e{x}_{j}^{k}\sum _{k=0}^{K}\ue89e\frac{{i}^{k}\ue89e{\gamma}_{N}^{k}}{k!}\ue89e\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{{b}_{\ue54b}^{\left(k\right)}\ue8a0\left(\frac{i}{2}\right)}^{\ue54b}\ue89e\sum _{{m}^{\prime}=\lceil \ue54b/2\rceil {M}^{\prime}}^{\lfloor \ue54b/2\rfloor +{M}^{\prime}}\ue89e{\left(1\right)}^{{m}^{\prime}}\ue89e\left(\begin{array}{c}\ue54b\\ {m}^{\prime}\end{array}\right)\ue89e{e}^{i\ue8a0\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{m}^{\prime}\ue54b\right)\ue89e{x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}\uf604\le \frac{\varepsilon}{14}.& \phantom{\rule{0.3em}{0.3ex}}\end{array}$  Let M=2M′, after rearranging the terms and substituting m:=2m′−l one gets that

$\sum _{k=0}^{K}\ue89e\frac{{i}^{k}\ue89e{\gamma}_{N}^{k}}{k!}\ue89e\prod _{j=1}^{N}\ue89e\sum _{\ue54b=1}^{L}\ue89e{{b}_{\ue54b}^{\left(k\right)}\ue8a0\left(\frac{i}{2}\right)}^{\ue54b}\ue89e\sum _{{m}^{\prime}=\lceil \ue54b/2\rceil {M}^{\prime}}^{\lfloor \ue54b/2\rfloor +{M}^{\prime}}\ue89e{\left(1\right)}^{{m}^{\prime}}\ue89e\left(\begin{array}{c}\ue54b\\ {m}^{\prime}\end{array}\right)\ue89e{e}^{i\ue8a0\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{m}^{\prime}\ue54b\right)\ue89e{x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}=\sum _{k=0}^{K}\ue89e\underset{\underset{{c}_{k}^{\prime}}{\uf613}}{\frac{{i}^{k}\ue89e{\gamma}_{N}^{k}}{k!}}\ue89e\prod _{j=1}^{N}\ue89e\sum _{m=M}^{M}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\sum _{\underset{m+\ue54b\ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\mathrm{even}}{\ue54b\in \left\{0,1,\dots \ue89e\phantom{\rule{0.8em}{0.8ex}},L\right\}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{{b}_{\ue54b}^{\left(k\right)}\ue8a0\left(\frac{i}{2}\right)}^{\ue54b}\ue89e{\left(1\right)}^{\left(m+\ue54b\right)/2}\ue89e\phantom{\rule{0.em}{0.ex}}\ue89e\left(\begin{array}{c}\ue54b\\ \left(m+\ue54b\right)/2\end{array}\right)\ue89e{e}^{{\mathrm{imx}}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}=\sum _{k=0}^{K}\ue89e\underset{\underset{{c}_{k}^{\prime}}{\uf613}}{\frac{{i}^{k}\ue89e{\gamma}_{N}^{k}}{k!}}\ue89e\prod _{j=1}^{N}\ue89e\sum _{m=M}^{M}\ue89e\underset{\underset{{c}_{k,m}^{\u2033}}{\uf613}}{{\left(i\right)}^{m}\ue89e\sum _{\underset{m+\ue54b\ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\mathrm{even}}{\ue54b\in \left\{0,1,\dots \ue89e\phantom{\rule{0.8em}{0.8ex}},L\right\}}}\ue89e{b}_{\ue54b}^{\left(k\right)}\ue89e{2}^{\ue54b}\ue89e\left(\begin{array}{c}\ue54b\\ \left(m+\ue54b\right)/2\end{array}\right)}\ue89e{e}^{{\mathrm{imx}}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}=\sum _{k=0}^{K}\ue89e{c}_{k}^{\prime}\ue89e\prod _{j=1}^{N}\ue89e\sum _{m=M}^{M}\ue89e{c}_{k,m}^{\u2033}\ue89e{e}^{{\mathrm{imx}}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}.$  Let c_{k}:=c_{k}′·(c_{k}″)^{⊗N}, and note that ∥c∥_{1}≤6 because ∥c_{k}″∥_{1}≤1 and ∥c′∥_{1}≤6 from (10). Combing the above inequality with (9) using the triangle inequality, one can see that

$\begin{array}{cc}\uf603{e}^{i\ue89e{\prod}_{j=1}^{N}\ue89e{x}_{j}}\sum _{k=0}^{K}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{c}_{k}^{\prime}\ue89e\prod _{j=1}^{N}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\sum _{m=M}^{M}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{c}_{k,m,}^{\u2033}\ue89e{e}^{{\mathrm{imx}}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}\uf604\le \varepsilon /7.& \left(13\right)\end{array}$  We then use the General LCU Lemma 14 to implement a unitary U:

$\uf6031\u3009\ue89e{\uf6030\u3009}^{\otimes \alpha}\to \uf6031\u3009\ue89e{\uf6030\u3009}^{\otimes \alpha}\ue89e\mathrm{sin}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\left(\pi /22\right)\ue89e\sum _{k=0}^{K}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{c}_{k}^{\prime}\ue89e\prod _{j=1}^{N}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\sum _{m=M}^{M}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{c}_{k,m,}^{\u2033}\ue89e{e}^{{\mathrm{imx}}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}+\gamma \ue89e\uf603{\Phi}^{\perp}\u3009,$  Let b:=┌log_{2}(M+2)┐, S:={−2^{b}, −2^{b}+1, −2^{b}+2, . . . , 2^{b}−1} and let

$\begin{array}{cc}\begin{array}{c}U:=\ue89e\sum _{\overrightarrow{m}\in {S}^{N}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\underset{j\in \left[N\right]}{\otimes}\ue89e\uf603{m}_{j}\u3009\ue89e\u3008{m}_{j}\uf604\ue89e{e}^{{\mathrm{im}}_{j}\ue89e{x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}\\ =\ue89e\prod _{j\in \left[N\right]}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{I}_{S}^{\otimes j1}\otimes \left(\sum _{m\in S}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\uf603m\u3009\ue89e\u3008m\uf604\ue89e{e}^{\mathrm{im}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}\right)\otimes {I}_{S}^{\otimes Nj}.\end{array}& \left(14\right)\end{array}$  As shown by Lemma 7 one can implement the operator

$\left({\sum}_{m\in S}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\uf603m\u3009\ue89e\u3008m\uf604\ue89e{e}^{\mathrm{im}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{x}_{j}\ue89e\frac{\pi \ue8a0\left(11/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89eN\right)\right)}{2}}\right)$  with ε/(22N) precision using (M+b log(Nb/ε))=(M log log(1/ε)) queries to O_{x} _{ j }with the use of (b log(Nb/ε))=(M log log(1/ε)) additional twoqubit gates and and (log log(Nb/ε)) additional ancilla qubits. Using (14) one can implement Ũ, an ε/22 precise implementation of U, using (N M log log(1/ε)) queries to O_{{right arrow over (x)} }with the use of (NM log log(1/ε)) additional twoqubit gates and still only (log log(Nb/ε)) additional ancilla qubits, because the ancilla qubits can be reused.
 Now it is shown how to implement the unitaries A and B needed for applying the General LCU Lemma 14. Let a=┌log_{2}(K+3)┐ and let √{square root over (c′)}:=Σ_{k=0} ^{K}√{square root over (c_{k}′)}k. Since 1/∥c∥_{1}≥⅙≥sin(π/22), using the techniques of Vivek V. Shende, et. al., “Synthesis of quantumlogic circuits,” IEEE Trans. on CAD of Integrated Circuits and Systems, vol. 25, no. 6, pgs. 10001010 (2006), one can implement the unitary
 and similarly
 Similarly let b=┌log_{2}(2M+3)┐ and let √{square root over (c_{k}″)}:=Σ_{m=−M} ^{M}√{square root over (c_{k,m}″)}m. Using the techniques of Vivek V. Shende, et. al., “Synthesis of quantumlogic circuits,” IEEE Trans. on CAD of Integrated Circuits and Systems, vol. 25, no. 6, pgs. 10001010 (2006) one can implement the unitary
 and similarly

 Therefore one can implement the unitaries

$A:=\left(\sum _{k=0}^{K}\ue89e\uf603k\u3009\ue89e\u3008k\uf604\otimes {\left({P}^{\u2033}\ue89e{A}_{k}^{\u2033}\right)}^{\otimes N}\right)\xb7{P}^{\prime}\ue89e{A}^{\prime},\text{}\ue89eB:=\left(\sum _{k=0}^{K}\ue89e\uf603k\u3009\ue89e\u3008k\uf604\otimes {\left({B}_{k}^{\u2033}\right)}^{\otimes N}\right)\xb7{A}^{\prime},$  Let {tilde over (W)}=B^{†}(I⊗Ũ)A and W=B^{†}(I⊗U)A then because A and B are unitary

∥W−{tilde over (W)}∥=∥U−Ũ∥≤ϵ/22.  Since π/2=(2·5+1)π/22, one can implement an ε/2 precise phase oracle using 5 oblivious amplitude amplification steps on W, as (13) and Lemma 4 shows. Since 2·5+1=11, 11 applications of W are used in the protocol. One gets at most ε/2 error form the oblivious amplitude amplification. Moreover the total error obtained from the imperfect LCU implementation of {tilde over (W)} is 11·ϵ/22=ϵ/2. If one combines this error with that from (13), one can note that the process leads to at most an ϵ/4+3/ϵ/4=ϵapproximate query to

${\stackrel{~}{O}}_{{\Pi}_{j=1}^{N}\ue89e{x}_{j}}.$  III.C. Function Application
 Since it has already been described how to perform addition and multiplication, one can approximately implement functions in the phase, e.g., using a truncated Taylor series. However, in many cases it can be more efficient to implement functions directly using LCU techniques. In this subsection, example general techniques showing how to implement general functions in phase are described. It will be convenient to work with probability (or amplitude) oracles and then convert them back to phase. All the techniques that are described can be generalized to vector access, but for the sake of simplicity the discussion works with the scalar case.
 III.C.1 Phase Oracles for Expectation Values
 The first result that is demonstrated is a method for computing the real and imaginary components of ψWψ as a phase oracle given access to a unitary process for preparing the state ψ. The idea behind this approach is to use the Hadamard test to compute the result as a probability oracle and then converting this to a phase oracle using known techniques. This will be necessary for the function evaluation methods that are provided below.
 The first concept that is described is that of a probability oracle. This concept, formalized in András Gilyen et al., “Optimizing quantum optimization algorithms via faster quantum gradient computation,” arxiv:1711.00465 (2017), is an oracle that outputs the desired answer as a probability. These oracles, which are implicitly used in many quantum machine learning algorithms, are explicitly defined below.
 One can say U_{p }is a probability oracle for a real number p∈[0, 1]^{N }
 In order to convert a probability oracle to a phase oracle, the following observation can be made. Let
 One can define a version of the Grover operator G_{U }as follows

 This intuition that Grover's oracle can be used as a means to convert probability to phase is also the central intuition behind amplitude estimation (see, e.g., Brassard et al., “Quantum amplitude amplification and estimation,” Contemporary Mathematics, vol. 305, pgs. 5373 (2002), which uses this fact only in the context of phase estimation. Below, a generalized form of this observation is formally stated. The generalized form additionally removes the need to compute arcsin by incorporating the function in the LCU circuit. The next results is formally proven in Andrs Gilyen et al., “Optimizing quantum optimization algorithms via faster quantum gradient computation,” arxiv:1711.00465 (2017) but the result and proof are restated here for completeness.

 An example implementation will be based on using the Grover operator G_{U }discussed before
FIG. 1 . Since the primary interest is the image of the 0 ^{⊗n }state, the focus below is on the two dimensional invariant subspace of G_{U }induced by 0 ^{⊗n}. G denotes the operator induced by G_{U }on this subspace: 
$G=\left(\begin{array}{cc}{e}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ei\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\theta}& 0\\ 0& {e}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ei\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\theta}\end{array}\right)={e}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\mathrm{iH}}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{where}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89eH=\left(\begin{array}{cc}\theta & 0\\ 0& \theta \end{array}\right).$  By recalling that p=sin^{2 }(θ) therefore using the Taylor expansion of e^{iθ}, one has

${e}^{\mathrm{ip}}\xb7I={e}^{i\ue89e\phantom{\rule{1.1em}{1.1ex}}\ue89e{\mathrm{sin}}^{2}\ue8a0\left(\theta \right)}\xb7I={e}^{i\ue89e\phantom{\rule{1.1em}{1.1ex}}\ue89e{\mathrm{sin}}^{2}\ue8a0\left(H\right)}=\sum _{k=0}^{\infty}\ue89e\frac{{i}^{k}}{k!}\ue89e{\mathrm{sin}}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}\ue8a0\left(H\right).$ 
$\begin{array}{cc}\uf605{e}^{\mathrm{ip}}\xb7I\sum _{k=0}^{M}\ue89e\frac{{i}^{k}}{k!}\ue89e{\mathrm{sin}}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}\ue8a0\left(H\right)\uf606\le \sum _{k=M+1}^{\infty}\ue89e\frac{1}{k!}\le \frac{1}{M!}.& \left(15\right)\end{array}$ 
$\begin{array}{cc}\begin{array}{c}\sum _{k=0}^{M}\ue89e\frac{{i}^{k}}{k!}\ue89e{\mathrm{sin}}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}\ue8a0\left(H\right)=\ue89e\sum _{k=0}^{M}\ue89e\frac{{i}^{k}}{k!}\ue89e{\left(\frac{{e}^{\mathrm{iH}}{e}^{\mathrm{iH}}}{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ei}\right)}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}\ue89e\phantom{\rule{0.6em}{0.6ex}}\\ \ue89e\left(\mathrm{since}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{sin}\ue8a0\left(\theta \right)=\left({e}^{i\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\theta}{e}^{i\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\theta}\right)/\left(2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ei\right)\right)\\ =\ue89e\sum _{k=0}^{M}\ue89e\frac{{\left(i\right)}^{k}}{k!}\ue89e\sum _{\ue54b=0}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}\ue89e\left(\begin{array}{c}2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek\\ \ue54b\end{array}\right)\ue89e\frac{{\left(1\right)}^{\ue54b}}{{2}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}}\ue89e{e}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ei\ue8a0\left(k\ue54b\right)\ue89eH}\\ =\ue89e\sum _{k=0}^{M}\ue89e\frac{{\left(i\right)}^{k}}{k!}\ue89e\sum _{m=k}^{k}\ue89e\left(\begin{array}{c}2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek\\ km\end{array}\right)\ue89e\frac{{\left(1\right)}^{km}}{{2}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}}\ue89e{e}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\mathrm{imH}}\\ \ue89e\left(\mathrm{let}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\ue54b\leftarrow \left(km\right)\right)\\ =\ue89e\sum _{m=M}^{M}\ue89e{e}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\mathrm{imH}}\ue89e\sum _{k=\uf603m\uf604}^{M}\ue89e\left(\begin{array}{c}2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek\\ km\end{array}\right)\ue89e\frac{{\left(1\right)}^{m}\ue89e{i}^{k}}{k!\ue89e{2}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}}\\ =\ue89e\sum _{m=M}^{M}\ue89e{G}^{m}\ue89e\sum _{k=\uf603m\uf604}^{M}\ue89e\left(\begin{array}{c}2\ue89ek\\ km\end{array}\right)\ue89e\frac{{\left(1\right)}^{m}\ue89e{i}^{k}}{k!\ue89e{2}^{2\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89ek}}\\ \ue89e\left(\text{since}\ue89e\phantom{\rule{1.1em}{1.1ex}}\ue89eG={e}^{2\ue89e\mathrm{iH}}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\text{by}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\text{definition}\right)\\ \text{=:}\ue89e\ue89e\sum _{m=M}^{M}\ue89e{G}^{m}\ue89e{\beta}_{m}.\ue89e\phantom{\rule{0.6em}{0.6ex}}\\ \ue89e\left(\mathrm{this}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{is}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{the}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{defining}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{equation}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{of}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e{\beta}_{m}\right)\end{array}& \left(16\right)\end{array}$  By the calculation above and Eq. (15), one has

$\begin{array}{cc}\uf605{e}^{\mathrm{ip}}\xb7I\sum _{m=M}^{M}\ue89e{\beta}_{m}\ue89e{G}^{m}\uf606\le {\varepsilon}^{\prime}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\mathrm{and}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e{\uf605\beta \uf606}_{1}\le e,& \left(17\right)\end{array}$  the latter devised from

$\sum _{k=0}^{M}\ue89e\frac{1}{k!}\le e$  and an application of the triangle inequality in (16).
 This representation makes it possible to use the LCU Lemma 3. By setting a:=┌log_{2}(2M+1)┐+1 (the number of auxiliary qubits), one can implement the unitary

${{V\ue89e{\uf6030\u3009}^{\otimes n}\uf604\ue89e0\u3009}^{\otimes a}=\mathrm{sin}\ue8a0\left(\pi /2\right)\ue89e\sum _{m=M}^{M}\ue89e{\beta}_{m}\ue89e{G}_{U}^{m}\ue89e{\uf6030\u3009}^{\otimes n}\uf604\ue89e0\u3009}^{\otimes a}+\gamma \ue85c{\Phi}^{\perp}\u3009,$  Therefore choosing an appropriate constant to determine the value ε′:=Θ(ε) proves the claim, since Õ_{p }is implemented with the desired complexity. □
 Theorem 10 gives the cost of converting a probability oracle to a phase oracle. This result is used below to show how to use these resources to compute the expectation value of an operator as a phase oracle.



$\frac{1+\mathrm{Re}\ue8a0\left(\u3008\phi \ue89e\uf603U\uf604\ue89e\phi \u3009\right)}{2}.$  (Note that V^{†} is only there to ensure that if W=I the circuit does not change the quantum state, which is helpful if one wants to make the above circuit controlled.)


$\frac{1+\mathrm{Re}\ue8a0\left(\u3008\phi \ue89e\uf603U\uf604\ue89e\phi \u3009\right)}{2}.$  (Note that V^{†} is only there to ensure that if W=I the circuit does not change the quantum state, which is helpful if one wants to make the above circuit controlled.) The above is treated as a probability oracle for

$p=\frac{1+\mathrm{Re}\ue8a0\left(\u3008\phi \ue89e\uf603W\uf604\ue89e\phi \u3009\right)}{2},$  and use Theorem 10. One can multiply its phase by 2 and subtract 1 to get the final phase oracle Õ_{(ϕWϕ)}=Õ_{2p1}. □
 Now that one has this result, which shows how to compute the expectation value of a unitary operator as a phase, one can apply it to constructing a phase oracle for sin(ϕ) and cos(ϕ) where ϕ∈[−1, 1].

 Use Corollary 11 choosing V=I and W=O_{x }for cos(x) and W=−iO_{x}, for sin(x). □
 One can generalize the above corollary for using the LCU techniques of Theorem 40, Corollary 42 of Joran van Apeldoorn et al., “Quantum SDPSolvers: Better upper and lower bounds,” arxiv 1705.01843v1 (2017), which is presented in the next lemma:


${U:{\uf6030\u3009}^{\otimes a}\to \frac{f\ue8a0\left(x\right)}{C}\uf604\ue89e0\u3009}^{\otimes a}+\gamma \ue89e\uf603{\Phi}^{\perp}\u3009,\phantom{\rule{1.1em}{1.1ex}}\ue89e\mathrm{where}\ue89e\phantom{\rule{1.1em}{1.1ex}}\ue89e\uf6030\u3009\ue89e\u30080\ue89e{\uf603}^{\otimes n}\uf604\ue89e{\Phi}^{\perp}\u3009=0,$  This is a direct corollary of Lemma 3 and Lemma 7. □
 For a sufficiently regular function ƒ one can usually find an εprecise Fourier series, which uses powers only up to M=(log(1/ε)), using for example the techniques of Lemma 37 in Joran van Apeldoorn et al., “Quantum SDPSolvers: Better upper and lower bounds,” arxiv 1705.01843v1 (2017). For such a function the above result implies that one can construct an εprecise amplitude oracle for ƒ(p)/∥ƒ∥_{∞ }with a (log(1/ε) log log(1/ε)) overhead in query and gate complexity with the use of (log log(1/ε)) additional qubits.


$x\in \left[\frac{1}{2},\frac{1}{2}\right]\ue89e\uf603x\sum _{m=M}^{M}\ue89e{c}_{m}\ue89e{e}^{\frac{i\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\pi \ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89em}{2}\ue89ex}\uf604\le \varepsilon $  and ∥c∥_{1}≤1, so that the above discussion applies. The next subsection uses this observation.
 III.D Linear Combination of Phases


$\overrightarrow{x}\in {\left[\frac{1}{2},\frac{1}{2}\right]}^{N}$  then one can implement a unitary {tilde over (V)}, which is εclose to

$\begin{array}{cc}V:\uf603\overrightarrow{0}\u3009\ue89e\uf603\overrightarrow{0}\u3009\to \sum _{k\in \left[N\right]}\ue89e{\alpha}_{k}\ue89e\uf603k\u3009\ue89e{x}_{k}\ue89e\uf603\overrightarrow{0}\u3009+\gamma \ue89e\uf603{\Phi}^{\perp}\u3009,\phantom{\rule{1.1em}{1.1ex}}\ue89e\mathrm{where}\ue89e\phantom{\rule{1.1em}{1.1ex}}\ue89e\uf603I\otimes \uf603\overrightarrow{0}\u3009\ue89e\u3008\overrightarrow{0}\uf604).& \left(18\right)\end{array}$  Moreover, one can implement {tilde over (V)} with 1 use of U and (log(ε) log log(ε)) uses of O_{{right arrow over (x)}}. (One can simply use U followed by the εapproximate implementation of the x_{k }function as discussed above, since the same function is applied on each coordinate, one can perform it in superposition for each k.) One can then use {tilde over (V)} to implement an approximate phase oracle

${O}_{\mathrm{Re}\ue8a0\left({\sum}_{j=1}^{N}\ue89e{\alpha}_{j}\ue89e{x}_{j}\right)/\sqrt{N}}$  Also one can view (18) as a way to prepare quantum states whose parameters are (at least partially) described by numbers encoded in phase oracles. This might be useful for the implementation of several quantum algorithms, including the implementation of Szegedy type quantum walks and thereby Hamiltonian simulation and the HHL algorithm. See, e.g., Mario Szegedy, “The Lovász Local Lemma—A Survey,” Computer Science—Theory and Applications—Proceedings of the 8th International Computer Science Symposium in Russia, pgs. 111 (2013); Dominic W. Berry et al., “Hamiltonian Simulation with Nearly Optimal Dependence on all Parameters,” IEEE 56th Annual Symposium on Foundations of Computer Science, pgs. 792809 (2015); and Andrew M. Childs et al., “Quantum linear systems algorithm with exponentially improved dependence on precision,” arxiv 1511.02306 (2015).
 In this section, example methods for implementing phase arithmetic in a quantum computing device using embodiments of the disclosed technology are disclosed. The particular embodiments described should not be construed as limiting, as the disclosed method acts can be performed alone, in different orders, or at least partially simultaneously with one another. Further, any of the disclosed methods or method acts can be performed with any other methods or method acts disclosed herein.

FIG. 4 is a flow chart showing an example method 400 for performing a linear combination of unitaries. For purposes ofFIGS. 57 , the method shown inFIG. 4 is termed “W”. Further, upon measuring the control register to be “0”, the method can enact the desired fourier series.  At 410, a quantum state is input. Further, in this example, quantum subroutines O_x, O_y are present.
 At 420, a twodimensional Fourier series approximation to exp(ixy) is computed.
 At 422, squareroots of Fourier coefficients are prepared as amplitudes of states in a control register.
 At 424, dependent on the term on the Fourier series expansion, O_x, O_y are applied repeatedly to quantum state to implement each of the terms up to a maximum of L times.
 At 426, preparation of square roots is inverted.
 At 430, a quantum state is returned (e.g., via a suitable readout mechanism).
 The method can be performed by one or more computerreadable media storing computerexecutable instructions, which when executed by a classical computer cause the classical computer to perform the method of
FIG. 4 . Further, the method can be performed by a quantum computing system. In such embodiments, the quantum computing system, comprises a quantum computing device comprising a quantum circuit; and a classical computing device in communication with the quantum computing device and adapted to perform the method ofFIG. 4 . 
FIG. 5 is a flow chart showing how linear combinations of unitary circuits (LCU) (as provided byFIG. 4 ) can be used for multiplication. In certain implementations, choosing r=9 is desirable for this protocol. The same protocol works for multiplying multiple input phases.  At 510, the quantum state from the result of the method “W” of 400 is input. As above, quantum subroutines O_x, O_y are present. Further, in this example, L>0 and r>0.
 At 520, the routine of 400 (shown in
FIG. 4 and sometimes referred to as “W”) is applied to the quantum state.  At 522, a determination is made as to whether robust oblivious amplitude amplification has been performed r times. If so, then at 524, the quantum state is returned (e.g., via a suitable readout mechanism). If not, then a repeat process is performed. In particular, at 526, states where W “succeeds” are marked by inverting their phase by 180 degrees; at 528, the inverse of W is applied; at 530, an initial register configuration is marked by inverting phase by 180 degrees; and at 532, W is applied to the quantum state, and the process at 522 is repeated.
 The method can be performed by one or more computerreadable media storing computerexecutable instructions, which when executed by a classical computer cause the classical computer to perform the method of
FIG. 5 . Further, the method can be performed by a quantum computing system. In such embodiments, the quantum computing system, comprises a quantum computing device comprising a quantum circuit; and a classical computing device in communication with the quantum computing device and adapted to perform the method ofFIG. 5 . 
FIG. 6 is flow chart showing an example method 600 for computing the real part of the expectation value of a function. The imaginary part can be found by applying a phase shift to the unitary matrix being examined. The result is output as a phase, which can be estimated if needed by phase estimation or used as input to further quantum algorithms.  At 610, a quantum state is input.
 At 620, a Hadamard test circuit within Grover's search oracle is used to convert probability oracle to a phase oracle.
 At 622, LCU methods are used through a Fourier series decomposition to convert phases to reduce the exponent to an affine function of the real part of the expectation value.
 At 624, “1” is subtracted off phase by rotating the result by a constant.
 At 626, the result is divided by “2” by multiplying the phase by “½”.
 At 630, a current quantum state is returned (e.g., via a suitable readout mechanism).
 The method can be performed by one or more computerreadable media storing computerexecutable instructions, which when executed by a classical computer cause the classical computer to perform the method of
FIG. 6 . Further, the method can be performed by a quantum computing system. In such embodiments, the quantum computing system, comprises a quantum computing device comprising a quantum circuit; and a classical computing device in communication with the quantum computing device and adapted to perform the method ofFIG. 6 . 
FIG. 7 is a flow chart showing an example method 700 for computing elementary trigonometric functions (using the method ofFIG. 6 ) and outputting result as a phase.  At 710, a quantum state is input.
 At 720, method 600 of
FIG. 6 is used to compute the real or imaginary part of exp(ix) as a phase on a quantum state.  At 730, a current quantum state is returned (e.g., via a suitable readout mechanism).

FIG. 12 is a flow chart showing a general method for performing embodiments of the disclosed technology.  At 1210, in a quantum computing device, phase arithmetic is performed using linear combinations of more than one unitaries.
 At 1212, the result of the phase arithmetic from the quantum computing device is read out.
 In certain implementations, the performing phase arithmetic is performed without using a repeatuntilsuccess process or circuit. In further implementations, the phase arithmetic comprises a smooth multivariable function. In some implementations, the phase arithmetic comprises a multiplication function of two phases. In certain implementations, the phase arithmetic comprises a multiplication function of a phase with a fixed real number. In further implementations, phase estimation is used to output the phase as a bit string. In some implementations, the function to be computed represents the classification output by a quantum neural network. In further implementations, the functions computed represent part of or the entirety of the kinetic or potential energy of a quantum system within a quantum simulation.
 The method can be performed by one or more computerreadable media storing computerexecutable instructions, which when executed by a classical computer cause the classical computer to perform the method of
FIG. 12 .  Further, the method can be performed by a quantum computing system. In such embodiments, the quantum computing system, comprises a quantum computing device comprising a quantum circuit; and a classical computing device in communication with the quantum computing device and adapted to perform a method, the method comprising: performing phase arithmetic in the quantum computing device using linear combinations of more than one unitaries; and reading out the result of the phase arithmetic from the quantum computing device.
 In certain implementations, the performing phase arithmetic is performed without using a repeatuntilsuccess process or circuit. In further implementations, the phase arithmetic comprises a smooth multivariable function. In some implementations, the phase arithmetic comprises a multiplication function of two phases. In certain implementations, the phase arithmetic comprises a multiplication function of a phase with a fixed real number. In further implementations, phase estimation is used to output the phase as a bit string. In some implementations, the function to be computed represents the classification output by a quantum neural network. In further implementations, the functions computed represent part of or the entirety of the kinetic or potential energy of a quantum system within a quantum simulation.

FIG. 13 is a flow chart showing a further general method for performing embodiments of the disclosed technology.  At 1300, a method for performing operations in a quantum computing device is performed, wherein the method comprises using (a) linear combinations of unitary methods to implement arithmetic functions, other than addition, of more than one variable in phase in the quantum computing device; (b) linear combinations of unitary methods to implement arithmetic functions over more than one variable in phase in the quantum computing device using Fourier series approximations; or (c) linear combination of unitary methods in the quantum computing device to implement a fractional query of a diagonal phase oracle which outputs a range of phases.
 In certain implementations, the method comprises using (a) or (b) to implement generic smooth functions of many variables in phase on quantum computers. Further, in some implementations, the method comprises using (c).

FIG. 8 illustrates a generalized example of a suitable classical computing environment 800 in which aspects of the described embodiments can be implemented. The computing environment 800 is not intended to suggest any limitation as to the scope of use or functionality of the disclosed technology, as the techniques and tools described herein can be implemented in diverse generalpurpose or specialpurpose environments that have computing hardware.  With reference to
FIG. 8 , the computing environment 800 includes at least one processing device 810 and memory 820. InFIG. 8 , this most basic configuration 830 is included within a dashed line. The processing device 810 (e.g., a CPU or microprocessor) executes computerexecutable instructions. In a multiprocessing system, multiple processing devices execute computerexecutable instructions to increase processing power. The memory 820 may be volatile memory (e.g., registers, cache, RAM, DRAM, SRAM), nonvolatile memory (e.g., ROM, EEPROM, flash memory), or some combination of the two. The memory 820 stores software 880 implementing tools for performing any of the disclosed techniques for operating a quantum computer to perform phase arithmetic in the quantum computer as described herein. The memory 820 can also store software 880 for synthesizing, generating, or compiling quantum circuits for performing the described phase arithmetic techniques as described herein.  The computing environment can have additional features. For example, the computing environment 800 includes storage 840, one or more input devices 850, one or more output devices 860, and one or more communication connections 870. An interconnection mechanism (not shown), such as a bus, controller, or network, interconnects the components of the computing environment 800. Typically, operating system software (not shown) provides an operating environment for other software executing in the computing environment 800, and coordinates activities of the components of the computing environment 800.
 The storage 840 can be removable or nonremovable, and includes one or more magnetic disks (e.g., hard drives), solid state drives (e.g., flash drives), magnetic tapes or cassettes, CDROMs, DVDs, or any other tangible nonvolatile storage medium which can be used to store information and which can be accessed within the computing environment 800. The storage 840 can also store instructions for the software 880 implementing any of the disclosed techniques for performing phase arithmetic in a quantum computing device. The storage 840 can also store instructions for the software 880 for generating and/or synthesizing any of the described techniques, systems, or quantum circuits.
 The input device(s) 850 can be a touch input device such as a keyboard, touchscreen, mouse, pen, trackball, a voice input device, a scanning device, or another device that provides input to the computing environment 800. The output device(s) 860 can be a display device (e.g., a computer monitor, laptop display, smartphone display, tablet display, netbook display, or touchscreen), printer, speaker, or another device that provides output from the computing environment 800.
 The communication connection(s) 870 enable communication over a communication medium to another computing entity. The communication medium conveys information such as computerexecutable instructions or other data in a modulated data signal. A modulated data signal is a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media include wired or wireless techniques implemented with an electrical, optical, RF, infrared, acoustic, or other carrier.
 As noted, the various methods, techqniues for controlling a quantum computing device to perform phase arithmetic, circuit design techniques, or compilation/synthesis techniques can be described in the general context of computerreadable instructions stored on one or more computerreadable media. Computerreadable media are any available media (e.g., memory or storage device) that can be accessed within or by a computing environment. Computerreadable media include tangible computerreadable memory or storage devices, such as memory 820 and/or storage 840, and do not include propagating carrier waves or signals per se (tangible computerreadable memory or storage devices do not include propagating carrier waves or signals per se).
 Various embodiments of the methods disclosed herein can also be described in the general context of computerexecutable instructions (such as those included in program modules) being executed in a computing environment by a processor. Generally, program modules include routines, programs, libraries, objects, classes, components, data structures, and so on, that perform particular tasks or implement particular abstract data types. The functionality of the program modules may be combined or split between program modules as desired in various embodiments. Computerexecutable instructions for program modules may be executed within a local or distributed computing environment.
 An example of a possible network topology 900 (e.g., a clientserver network) for implementing a system according to the disclosed technology is depicted in
FIG. 9 . Networked computing device 920 can be, for example, a computer running a browser or other software connected to a network 912. The computing device 920 can have a computer architecture as shown inFIG. 8 and discussed above. The computing device 920 is not limited to a traditional personal computer but can comprise other computing hardware configured to connect to and communicate with a network 912 (e.g., smart phones, laptop computers, tablet computers, or other mobile computing devices, servers, network devices, dedicated devices, and the like). Further, the computing device 920 can comprise an FPGA or other programmable logic device. In the illustrated embodiment, the computing device 920 is configured to communicate with a computing device 930 (e.g., a remote server, such as a server in a cloud computing environment) via a network 912. In the illustrated embodiment, the computing device 920 is configured to transmit input data to the computing device 930, and the computing device 930 is configured to implement a technique for controlling a quantum computing device to perform phase arithmetic according to any of the disclosed embodiments and/or a circuit generation/compilation/synthesis technique for generating quantum circuits for performing any of the phase arithmetic techniques disclosed herein. The computing device 930 can output results to the computing device 920. Any of the data received from the computing device 930 can be stored or displayed on the computing device 920 (e.g., displayed as data on a graphical user interface or web page at the computing devices 920). In the illustrated embodiment, the illustrated network 912 can be implemented as a Local Area Network (“LAN”) using wired networking (e.g., the Ethernet IEEE standard 802.3 or other appropriate standard) or wireless networking (e.g. one of the IEEE standards 802.11a, 802.11b, 802.11g, or 802.11n or other appropriate standard). Alternatively, at least part of the network 912 can be the Internet or a similar public network and operate using an appropriate protocol (e.g., the HTTP protocol).  Another example of a possible network topology 1000 (e.g., a distributed computing environment) for implementing a system according to the disclosed technology is depicted in
FIG. 10 . Networked computing device 1020 can be, for example, a computer running a browser or other software connected to a network 1012. The computing device 1020 can have a computer architecture as shown inFIG. 8 and discussed above. In the illustrated embodiment, the computing device 1020 is configured to communicate with multiple computing devices 1030, 1031, 1032 (e.g., remote servers or other distributed computing devices, such as one or more servers in a cloud computing environment) via the network 1012. In the illustrated embodiment, each of the computing devices 1030, 1031, 1032 in the computing environment 1000 is used to perform at least a portion of a technique for controlling a quantum computing device to perform phase arithmetic according to any of the disclosed embodiments and/or a circuit generation/compilation/synthesis technique for generating quantum circuits for performing any of the phase arithmetic techniques disclosed herein. In other words, the computing devices 1030, 1031, 1032 form a distributed computing environment in which aspects of the techniques for performing phase arithmetic in a quantum computing device as disclosed herein and/or quantum circuit generation/compilation/synthesis processes are shared across multiple computing devices. The computing device 1020 is configured to transmit input data to the computing devices 1030, 1031, 1032, which are configured to distributively implement such as process, including performance of any of the disclosed methods or creation of any of the disclosed circuits, and to provide results to the computing device 1020. Any of the data received from the computing devices 1030, 1031, 1032 can be stored or displayed on the computing device 1020 (e.g., displayed as data on a graphical user interface or web page at the computing devices 1020). The illustrated network 1012 can be any of the networks discussed above with respect toFIG. 9 .  With reference to
FIG. 11 , an exemplary system for implementing the disclosed technology includes computing environment 1100. In computing environment 1100, a compiled quantum computer circuit description (including quantum circuits for performing any of the disclosed phase arithmetic techniques as disclosed herein) can be used to program (or configure) one or more quantum processing units such that the quantum processing unit(s) implement the circuit described by the quantum computer circuit description (and thus the desired phase arithmetic).  The environment 1100 includes one or more quantum processing units 1102 and one or more readout device(s) 1108. The quantum processing unit(s) execute quantum circuits that are precompiled and described by the quantum computer circuit description. The quantum processing unit(s) can be one or more of, but are not limited to: (a) a superconducting quantum computer; (b) an ion trap quantum computer; (c) a faulttolerant architecture for quantum computing; and/or (d) a topological quantum architecture (e.g., a topological quantum computing device using Majorana zero modes). The precompiled quantum circuits, including any of the disclosed circuits, can be sent into (or otherwise applied to) the quantum processing unit(s) via control lines 1106 at the control of quantum processor controller 1120. The quantum processor controller (QP controller) 1120 can operate in conjunction with a classical processor 1110 (e.g., having an architecture as described above with respect to
FIG. 8 ) to implement the desired quantum computing process. In the illustrated example, the QP controller 1120 further implements the desired quantum computing process via one or more QP subcontrollers 1104 that are specially adapted to control a corresponding one of the quantum processor(s) 1102. For instance, in one example, the quantum controller 1120 facilitates implementation of the compiled quantum circuit by sending instructions to one or more memories (e.g., lowertemperature memories), which then pass the instructions to lowtemperature control unit(s) (e.g., QP subcontroller(s) 1104) that transmit, for instance, pulse sequences representing the gates to the quantum processing unit(s) 1102 for implementation. In other examples, the QP controller(s) 1120 and QP subcontroller(s) 1104 operate to provide appropriate magnetic fields, encoded operations, or other such control signals to the quantum processor(s) to implement the operations of the compiled quantum computer circuit description. The quantum controller(s) can further interact with readout devices 1108 to help control and implement the desired quantum computing process (e.g., by reading or measuring out data results from the quantum processing units once available, etc.)  With reference to
FIG. 11 , compilation is the process of translating a highlevel description of a quantum algorithm into a quantum computer circuit description comprising a sequence of quantum operations or gates, which can include the circuits as disclosed herein (e.g., the circuits configured to perform one or more phase arithmetic procedures as disclosed herein). The compilation can be performed by a compiler 1122 using a classical processor 1110 (e.g., as shown inFIG. 8 ) of the environment 1100 which loads the highlevel description from memory or storage devices 1112 and stores the resulting quantum computer circuit description in the memory or storage devices 1112.  In other embodiments, compilation and/or verification can be performed remotely by a remote computer 1160 (e.g., a computer having a computing environment as described above with respect to
FIG. 8 ) which stores the resulting quantum computer circuit description in one or more memory or storage devices 1162 and transmits the quantum computer circuit description to the computing environment 1100 for implementation in the quantum processing unit(s) 1102. Still further, the remote computer 1100 can store the highlevel description in the memory or storage devices 1162 and transmit the highlevel description to the computing environment 1100 for compilation and use with the quantum processor(s). In any of these scenarios, results from the computation performed by the quantum processor(s) can be communicated to the remote computer after and/or during the computation process. Still further, the remote computer can communicate with the QP controller(s) 1120 such that the quantum computing process (including any compilation, verification, and QP control procedures) can be remotely controlled by the remote computer 1160. In general, the remote computer 1160 communicates with the QP controller(s) 1120, compiler/synthesizer 1122, and/or verification tool 1123 via communication connections 1150.  In particular embodiments, the environment 1100 can be a cloud computing environment, which provides the quantum processing resources of the environment 1100 to one or more remote computers (such as remote computer 1160) over a suitable network (which can include the internet).
 In this appendix, techniques are presented based on ideas used for Hamiltonian simulation. See Andrew M. Childs et al., “Quantum linear systems algorithm with exponentially improved dependence on precision,” arxiv 1511.02306 (2015). The basic ideas are already known from the literature, but here they are slightly generalized and improved upon in order to improve the disclosed phase arithmetics applications.


$L=\sum _{m=M}^{M}\ue89e\left({\beta}_{m}^{*}\ue89e{\alpha}_{m}\right)\ue89e{U}^{m},$ 
$\begin{array}{c}\left(\uf6030\u3009\ue89e\u30080\uf604\otimes I\right)\ue89eC0\u3009\psi \u3009=\ue89e\left(\uf6030\u3009\ue89e\u30080\uf604\ue89e{B}^{\u2020}\otimes I\right)\ue89eU(A0\u3009\psi \u3009)\\ =\ue89e(\phantom{\rule{0.3em}{0.3ex}}\ue89e\uf6030\u3009\ue89e\left(\sum _{m\in \left[M\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\beta}_{m}^{*}\ue89e\u3008m\uf604\right)\otimes I)\\ \ue89e\sum _{m\in \left[M\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\uf603m\u3009\ue89e\u3008m\uf604\otimes {U}_{m}\left(\left(\sum _{m\in \left[M\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\alpha}_{m}\ue89e\uf603m\u3009\right)\ue89e\uf603\psi \u3009\right)\\ =\ue89e\left(\uf6030\u3009\ue89e\left(\sum _{m\in \left[M\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\beta}_{m}^{*}\ue89e\u3008m\uf604\right)\otimes I\right)\ue89e\left(\sum _{m\in \left[M\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\alpha}_{m}\ue89e\uf603\phantom{\rule{0.3em}{0.3ex}}\ue89em\u3009\ue89e{U}_{m}\ue89e\uf603\psi \u3009\right)\\ =\ue89e\uf6030\u3009\ue89e\sum _{m\in \left[M\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e\left({\beta}_{m}^{*}\ue89e{\alpha}_{m}\right)\ue89e{U}_{m}\uf604\ue89e\psi \u3009\\ =\ue89e\uf6030\u3009\ue89eL\uf604\ue89e\psi \u3009.\end{array}$  Using the state preparation techniques of Vivek V. Shende, et. al., “Synthesis of quantumlogic circuits,” IEEE Trans. on CAD of Integrated Circuits and Systems, vol. 25, no. 6, pgs. 10001010 (2006) to construct the unitaries A, B in the above lemma one can prove the following variant of the LCU Lemma, which is suited for implementing functions represented by a Fourier series:


${{C\ue89e\text{:}\ue89e\phantom{\rule{0.8em}{0.8ex}}\ue89e\uf603\psi \u3009\uf604\ue89e0\u3009}^{\otimes a}\to \frac{L}{B}\ue89e\uf603\psi \u3009\uf604\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e0\u3009}^{\oplus a}+\gamma \uf604\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\Phi}^{\perp}\u3009,$  where (I⊗0 0^{⊗a})Φ^{⊥} =0, and γ∈[0, 1], Φ^{⊥} might be ψdependent. Moreover C can be implemented using a single application of the (controlled) U^{−2} ^{ b }gate and a single use of the (controlled) gates U^{2} ^{ b−1 }, U^{2} ^{ b−2 }, . . . , U^{1 }with using (M) other twoqubit gates and a=(log(M)) additional ancilla qubits.
 Here, a signed binary (qu)bit representation is used for the integers in [2^{−b}, 2^{b}−1], Such that the (qu)bitstring (m_{b}m_{b−1 }. . . m_{0}) represents the number m=−m_{b}2^{b}+Σ_{v=0} ^{b−1}m_{v}2^{v}. Let the subnormalized state (in the definition of α any of two possible complex square roots work, one can choose arbitrarily) α=Σ_{m=−M} ^{M }√{square root over (β_{m}/B)}, then one can construct unitaries A, A′ such that A:0→α+√{square root over (1−√{square root over (∥β∥_{1}/B)})}M+1 and A′:0→α+√{square root over (1−√{square root over (∥β∥_{1}/B)})}−M−1, using (2^{b})=(M) twoqubit gate as shown by Vivek V. Shende, et. al., “Synthesis of quantumlogic circuits,” IEEE Trans. on CAD of Integrated Circuits and Systems, vol. 25, no. 6, pgs. 10001010 (2006). Finally the General LCU Lemma shows, that C can be implemented using the circuit in
FIG. 3 , which is a schematic block diagram 300 showing a quantum circuit for implementing a Fourier series of H=log(U).  Now the discussion turns to proving an improved analysis of robust oblivious amplitude amplification, which proves better approximation bounds. First, one can invoke Jordan's result on orthogonal projectors:


$\mathscr{H}=\underset{j\in \left[J\right]}{\oplus}\ue89e{\mathscr{H}}_{j}^{\left(1\right)}\oplus \underset{k\in \left[K\right]}{\oplus}\ue89e{\mathscr{H}}_{k}^{\left(2\right)}.$  For all j∈J: _{j} ^{(1)}=Span(φ_{j} ) is a 1dimensional subapace satisfying ∥Π_{1}φ∥∈{0, 1}, ∥Π_{2}φ_{j} ∥∈{0, 1}. For all k∈[K]: _{k} ^{(2)}=Span(ψ_{k} , ψ_{k} ^{⊥} )=Span(ϕ_{k} , ϕ_{k} ^{⊥} ), is a 2dimensional subspace satisfying Π_{1}ψ_{k} =ψ_{k} , Π_{2}ϕ_{k} =ϕ_{k} , Π_{1}ψ_{k} ^{⊥} =0=Π_{2}ϕ_{k} ^{⊥} , moreover ψ_{k}ϕ_{k} ∉{0, 1}.
 Inspired by Kothari's “2D subspace lemma”, a generalization of Grover's search in terminology related to Jordan's result is proved.
 Let W be a unitary such that Wψ=sin(θ)ϕ+cos(θ)ϕ^{⊥} , where ϕϕ^{⊥}=0. Suppose Π_{1}, Π_{2 }are orthogonal projectors, such that Π_{2}ϕ=ϕ and Π_{2}ϕ^{⊥} =0 and similarly Π_{1}ψ=ψ and Π_{1}W^{†}(cos(θ)ϕ−sin(θ)ϕ^{⊥} )=0. (Note that the requirements on Π_{1 }are not contradicting, because ψW^{†}(cos(θ)ϕ)−sin(θ)ϕ^{⊥} )=0.) Let G:=W(2Π_{1}−I)W^{†}(2Π_{2}−I), then

 Now one can prove an improved error bound on robust oblivious amplitude amplification.


$\begin{array}{cc}\uf605{\Pi}_{2}\ue89eW\uf604\ue89e\psi \u3009\uf606\in \left[\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\ue89e\left(1\varepsilon \right),\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\ue89e\left(1+\varepsilon \right)\right].& \left(1\right)\end{array}$ 
$\uf605{G}^{r}\ue89eW\ue89e\uf603\phantom{\rule{0.3em}{0.3ex}}\ue89e\psi \u3009\frac{{\Pi}_{2}\ue89eW\uf604\ue89e\psi \u3009}{\mathrm{sin}\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf606\le \frac{7}{2}\ue89e\varepsilon .$  or in other words

$\uf605{G}^{r}\ue89eW\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\Pi}_{1}\frac{{\Pi}_{2}\ue89eW\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\Pi}_{1}}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf606\le \frac{7}{2}\ue89e\varepsilon ,$  Let {tilde over (Π)}_{1}:=WΠ_{1}W^{†}. One can apply Jordan's Theorem 15 on the projectors {tilde over (Π)}_{1}, Π_{2 }to decompose to 1 and 2 dimensional subspaces. By (1) one knows that for each φ∈Im(WΠ_{1}W^{†}) one has ∥Π_{2}φ∥∈(0, 1), and thus no φ∈Im(WΠ_{1}W^{†}) can satisfy ∥Π_{2}φ∥∈{0, 1}. Therefore using the notation of Theorem 15, one knows that

$\mathrm{Im}\ue8a0\left(W\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\Pi}_{1}\ue89e{W}^{\u2020}\right)=\underset{k\in K}{\mathrm{Span}}\ue89e\{\uf604\ue89e{\psi}_{k}\u3009\}.$  Let {tilde over (ψ)}_{k} :=W^{†}ψ_{k} and θ_{k}=arcsin(∥Π_{2}W{tilde over (ψ)}_{k} ∥), then one can assume without loss of generality that W{tilde over (ψ)}_{k} =sin(θ_{k})ϕ_{k} +cos(θ_{k})ϕ_{k} ^{⊥} , because in the definition _{k} ^{(2)}=Span(ϕ_{k} , ϕ_{k} ^{⊥} ) one can multiply the vectors with a unit length complex number (phase). This shows that that {tilde over (ψ)}_{k} , θ_{k }satisfy the requirements of Lemma 16, and so

$\uf603{\upsilon}_{k}\u3009:={G}^{r}\ue89eW\uf604\ue89e{\stackrel{~}{\psi}}_{k}\u3009\frac{{\Pi}_{2}\ue89eW}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf604\ue89e{\stackrel{~}{\psi}}_{k}\u3009.$ 
$\begin{array}{c}\uf605{\upsilon}_{k}\uf606=\ue89e\uf605{G}^{r}\ue89eW\ue89e\uf603{\stackrel{~}{\psi}}_{k}\u3009\frac{{\Pi}_{2}\ue89eW\uf604\ue89e{\stackrel{~}{\psi}}_{k}\u3009}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf606\le \\ \ue89e\uf605{G}^{r}\ue89eW\ue89e\uf603{\stackrel{~}{\psi}}_{k}\u3009\uf604\ue89e{\phi}_{k}\u3009\uf606+\uf605\uf603{\phi}_{k}\u3009\frac{{\Pi}_{2}\ue89eW\uf604\ue89e{\stackrel{~}{\psi}}_{k}\u3009}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf606\\ =\ue89e\uf605\mathrm{sin}\ue8a0\left(\left(2\ue89er+1\right)\ue89e{\theta}_{k}\right)\ue89e\uf603{\phi}_{k}\u3009+\mathrm{cos}\ue8a0\left(\left(2\ue89er+1\right)\ue89e{\theta}_{k}\right)\uf604\ue89e{\theta}_{k}^{\perp}\u3009\uf604\ue89e{\phi}_{k}\u3009\uf606+\\ \ue89e\uf605\uf603{\phi}_{k}\u3009\frac{\uf605{\Pi}_{2}\ue89eW\uf604\ue89e{\stackrel{~}{\psi}}_{k}\u3009\uf606}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf604\ue89e{\phi}_{k}\u3009\uf606\le \\ \ue89e\uf603\left(2\ue89er+1\right)\ue89e{\theta}_{k}\frac{\pi}{2}\uf604+\varepsilon \\ =\ue89e\left(2\ue89er+1\right)\ue89e\underset{\pm}{\mathrm{max}}\ue89e\uf603\mathrm{arcsin}\ue8a0\left(\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\ue89e\left(1+\varepsilon \right)\right)\frac{\pi /2}{2\ue89er+1}\uf604+\varepsilon .\end{array}$  Next let arcsin ′ be the derivative of arcsin. It then follows from the fact that arcsin ′ is monotonically increasing on [0, 1) that ∥v_{k}∥ is bounded above by

$\left(2\ue89er+1\right)\ue89e\uf603{\mathrm{arcsin}}^{\prime}\ue8a0\left(\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\ue89e\left(1+\varepsilon \right)\right)\ue89e\varepsilon \ue89e\phantom{\rule{0.6em}{0.6ex}}\ue89e\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\uf604+\varepsilon \le \left(2\ue89er+1\right)\ue89e\uf603\left(\frac{4}{\sqrt{7}}\right)\ue89e\varepsilon \ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)\uf604+\varepsilon \le \frac{7}{2}\ue89e\varepsilon ,$  where above one can use the fact that sin(π/2/[2r+1])(1+ϵ)≤sin(π/2/[2r+1])(3/2)≤¾ since r≥1 and that sin(x)≤x.


$\uf605{G}^{r}\ue89eW\ue89e\uf603\psi \u3009\frac{{\Pi}_{2}\ue89eW\uf604\ue89e\psi \u3009}{\mathrm{sin}\ue8a0\left(\frac{\pi /2}{2\ue89er+1}\right)}\uf606=\uf605\sum _{k\in \left[K\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\lambda}_{k}\ue89e\uf603{\upsilon}_{k}\u3009\uf606=\sqrt{\sum _{k\in \left[K\right]}^{\phantom{\rule{0.3em}{0.3ex}}}\ue89e\phantom{\rule{0.3em}{0.3ex}}\ue89e{\lambda}_{k}^{2}\ue89e{\uf605\uf603{\upsilon}_{k}\u3009\uf606}^{2}}\le \uf605\lambda \uf606\ue89e\frac{7}{2}\ue89e\varepsilon =\frac{7}{2}\ue89e\varepsilon .$  In this disclosure, a new class of phase arithmetic has been provided that explicitly uses linear combinations of unitaries (LCU) methods to approximate an arbitrary analytic function on the phases output by unknown diagonal quantum circuits (which are referred to as phase oracles). Unlike existing phase arithmetic approaches, embodiments of the disclosed techniques run in time that is polynomial in the number of bits of precision required and furthermore require fewer (e.g., minimal) qubit overheads. These methods are significant because they allow one to postprocess data that comes back from phase kickback circuits without needing to cache the results in qubits through amplitude estimation. In some cases, such ideas can lead to exponentially better scaling of algorithms with respect to the number of bits of precision required because of the overheads of phase estimation. This work is especially significant in cases when the functions that are wished to be applied are multivariate wherein the results can be used to generalize existing methods from both the LCU literature and the quantum signal processing literature, Low et al “Optimal Hamiltonian simulation by quantum signal processing.” Physical review letters 118.1 pgs. 010501 (2017) and Low et al “Hamiltonian simulation by uniform spectral amplification.” arXiv preprint arXiv:1707.05391 (2017), for performing functions of input phases considerably.
 Further, the techniques that are disclosed here are useful in implementing the arithmetic needed to set the phases properly in linearcombinations circuits (e.g., as used in quantum chemistry simulations). This endtoend version of quantum chemistry not only promises to reduce the time complexity of simulations but also promises to make such schemes simpler by allowing the entire protocol to be performed within an LCU framework. The generality of the disclosed technology allows these methods to applied more broadly than chemistry simulation and also may be useful as an oracle replacement technique in quantum linearsystems algorithms and elsewhere in quantum machine learning.
 Having described and illustrated the principles of the disclosed technology with reference to the illustrated embodiments, it will be recognized that the illustrated embodiments can be modified in arrangement and detail without departing from such principles. For instance, elements of the illustrated embodiments shown in software may be implemented in hardware and viceversa. Also, the technologies from any example can be combined with the technologies described in any one or more of the other examples. It will be appreciated that procedures and functions such as those described with reference to the illustrated examples can be implemented in a single hardware or software module, or separate modules can be provided. The particular arrangements above are provided for convenient illustration, and other arrangements can be used.
Claims (20)
1. A method, comprising:
in a quantum computing device, performing phase arithmetic using linear combinations of more than one unitaries; and
reading out the result of the phase arithmetic from the quantum computing device.
2. The method of claim 1 , wherein the phase arithmetic is performed without using a repeatuntilsuccess process or circuit.
3. The method of claim 1 , wherein the phase arithmetic comprises a smooth multivariable function.
4. The method of claim 1 , wherein the phase arithmetic comprises a multiplication function of two phases.
5. The method of claim 1 , wherein the phase arithmetic comprises a multiplication function of a phase with a fixed real number.
6. The method of claim 1 , wherein phase estimation is used to output the phase as a bit string.
7. The method of claim 1 , wherein the function to be computed represents the classification output by a quantum neural network.
8. The method of claim 1 , wherein the functions computed represent part of or the entirety of the kinetic or potential energy of a quantum system within a quantum simulation.
9. One or more computerreadable media storing computerexecutable instructions, which when executed by a classical computer cause the classical computer to perform the method of claim 1 .
10. A quantum computing system, comprising:
a quantum computing device comprising a quantum circuit; and
a classical computing device in communication with the quantum computing device and adapted to perform a method, the method comprising:
performing phase arithmetic in the quantum computing device using linear combinations of more than one unitaries; and
reading out the result of the phase arithmetic from the quantum computing device.
11. The quantum computing system of claim 10 , wherein the performing phase arithmetic is performed without using a repeatuntilsuccess process or circuit.
12. The quantum computing system of claim 10 , wherein the phase arithmetic comprises a smooth multivariable function.
13. The quantum computing system of claim 10 , wherein the phase arithmetic comprises a multiplication function of two phases.
14. The quantum computing system of claim 10 , wherein the phase arithmetic comprises a multiplication function of a phase with a fixed real number.
15. The quantum computing system of claim 10 , wherein phase estimation is used to output the phase as a bit string.
16. The quantum computing system of claim 10 , wherein the function to be computed represents the classification output by a quantum neural network.
17. The quantum computing system of claim 10 , wherein the functions computed represent part of or the entirety of the kinetic or potential energy of a quantum system within a quantum simulation.
18. A method comprising: using (a) linear combinations of unitary methods to implement arithmetic functions, other than addition, of more than one variable in phase in a quantum computing device; (b) linear combinations of unitary methods to implement arithmetic functions over more than one variable in phase in the quantum computing device using Fourier series approximations; or (c) linear combination of unitary methods in the quantum computing device to implement a fractional query of a diagonal phase oracle which outputs a range of phases.
19. The method of claim 18 , wherein the method comprises using (a) or (b) to implement generic smooth functions of many variables in phase on the quantum computing device.
20. The method of claim 18 , wherein the method comprises using (c).
Priority Applications (2)
Application Number  Priority Date  Filing Date  Title 

US201862619027P true  20180118  20180118  
US16/252,288 US20190220497A1 (en)  20180118  20190118  Phase arithmetic for quantum computation 
Applications Claiming Priority (1)
Application Number  Priority Date  Filing Date  Title 

US16/252,288 US20190220497A1 (en)  20180118  20190118  Phase arithmetic for quantum computation 
Publications (1)
Publication Number  Publication Date 

US20190220497A1 true US20190220497A1 (en)  20190718 
Family
ID=65324659
Family Applications (1)
Application Number  Title  Priority Date  Filing Date 

US16/252,288 Pending US20190220497A1 (en)  20180118  20190118  Phase arithmetic for quantum computation 
Country Status (3)
Country  Link 

US (1)  US20190220497A1 (en) 
EP (1)  EP3740909A1 (en) 
WO (1)  WO2019144006A1 (en) 
Cited By (1)
Publication number  Priority date  Publication date  Assignee  Title 

US20200167278A1 (en) *  20181127  20200528  International Business Machines Corporation  Cached result use through quantum gate rewrite 
Family Cites Families (2)
Publication number  Priority date  Publication date  Assignee  Title 

US20060123363A1 (en) *  20041207  20060608  Williams Colin P  Method and apparatus for automated design of quantum circuits 
US9412074B2 (en) *  20130628  20160809  Microsoft Technology Licensing, Llc  Optimized trotterization via multiresolution analysis 

2019
 20190118 US US16/252,288 patent/US20190220497A1/en active Pending
 20190118 WO PCT/US2019/014294 patent/WO2019144006A1/en unknown
 20190118 EP EP19703913.4A patent/EP3740909A1/en active Pending
Cited By (2)
Publication number  Priority date  Publication date  Assignee  Title 

US20200167278A1 (en) *  20181127  20200528  International Business Machines Corporation  Cached result use through quantum gate rewrite 
US10901896B2 (en) *  20181127  20210126  International Business Machines Corporation  Cached result use through quantum gate rewrite 
Also Published As
Publication number  Publication date 

EP3740909A1 (en)  20201125 
WO2019144006A1 (en)  20190725 
Similar Documents
Publication  Publication Date  Title 

Gilyén et al.  Quantum singular value transformation and beyond: exponential improvements for quantum matrix arithmetics  
US10565514B2 (en)  System and method for emulation of a quantum computer  
Amy et al.  A meetinthemiddle algorithm for fast synthesis of depthoptimal quantum circuits  
Kliuchnikov et al.  Practical approximation of singlequbit unitaries by singlequbit quantum Clifford and T circuits  
US9514415B2 (en)  Method and system for decomposing singlequbit quantum circuits into a discrete basis  
US9275011B2 (en)  Fast quantum and classical phase estimation  
US10423887B2 (en)  Compilation, memory management, and fault localization with ancillas in an unknown state  
US20190318053A1 (en)  Hamiltonian simulation in the interaction picture  
Katsura et al.  Entanglement in valencebondsolid states on symmetric graphs  
US11120359B2 (en)  Phase estimation with randomized hamiltonians  
Oszmaniec et al.  Simulating all quantum measurements using only projective measurements and postselection  
Bisio et al.  Free quantum field theory from quantum cellular automata  
Roetteler et al.  Quantum computing: Codebreaking and beyond  
US10997337B2 (en)  Trading tgates for qubits in arbitrary state and unitary synthesis  
US20190220497A1 (en)  Phase arithmetic for quantum computation  
US20180129965A1 (en)  Efficient topological compilation for metaplectic anyon model  
Travaglione et al.  Generation of eigenstates using the phaseestimation algorithm  
Potapov et al.  The quantum computer model structure and estimation of the quantum algorithms complexity  
Guo et al.  Implementing a fast unbounded quantum fanout gate using powerlaw interactions  
Zhou  Review on quantum walk algorithm  
Adedoyin et al.  Quantum algorithm implementations for beginners  
Bera et al.  Small depth quantum circuits  
US20190392343A1 (en)  Product decomposition of periodic functions in quantum signal processing  
US20210124567A1 (en)  Automatic quantum program optimization using adjointviaconjugation annotations  
US20210256416A1 (en)  Training of variational quantum classifiers by parametric coordinate ascent 
Legal Events
Date  Code  Title  Description 

AS  Assignment 
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:WIEBE, NATHAN O.;GILYEN, ANDRAS PAL;SIGNING DATES FROM 20190618 TO 20190707;REEL/FRAME:049697/0084 