BACKGROUND
[0001] Quantum algorithms promise computational speed-ups over their classical counterparts. Quantum phase estimation is a technique used in quantum algorithms, including algorithms for quantum chemistry (see,
A. Aspuru-Guzik, A. D. Dutoi, P. J. Love, and M. Head-Gordon, Science 309, 1704 (2005), and
B. P. Lanyon, J. D. Whitfield, G. G. Gillet, M. E. Goggin, M. P. Almeida, I. Kassal, J. D. Biamonte, M. Mohseni, B. J. Powell, M. Barbieri, A. Aspuru-Guzik, and A. G. White, Nature Chemistry 2, 106, 2008, arXiv:0905.0887), and quantum field theory (see,
S. P. Jordan, K. S. M. Lee, and J. Preskill, "Quantum computation of scattering in scalar quantum field theories," (2011), arXiv: 1112.4833), Shor's algorithm for prime factorization (see,
P. Shor, SIAM Journal of Computing 26, 1484 (1997)), and algorithms for quantum sampling (see,
M. Ozols, M. Roetteler, and J. Roland, in 3rd Innovations in Theoretical Computer Science Conference (ITCS), (ACM, 2012) pp. 290{308, arXiv: 1103.2774, and also
K. Temme, T. Osborne, K. Vollbrecht, D. Poulin, and F. Verstraete, Nature 471 (2011), 10.1038/nature09770, arXiv:0911.3635). Quantum phase estimation can also be used to find eigenvalues of a unitary matrix efficiently.
BRIEF DESCRIPTION OF THE DRAWINGS
[0004] The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same reference numbers in different figures indicate similar or identical items.
Fig. 1 is a schematic diagram of an illustrative environment usable for estimating phases.
Fig. 2 is a schematic diagram of an illustrative circuit for estimating quantum phases.
Fig. 3 is a schematic diagram of another illustrative circuit for estimating quantum phases.
Fig. 4 is a schematic diagram of another illustrative circuit for estimating quantum phases.
Fig. 5 is a schematic diagram of yet another illustrative circuit for estimating quantum phases.
Fig. 6 is a schematic diagram of an illustrative non-quantum computing device for estimating phases and/or for classical post-processing of quantum phase estimations.
DETAILED DESCRIPTION
Overview
[0005] This disclosure describes techniques for performing quantum phase estimation based on basic measurements and classical post-processing. The techniques may use purely random measurements that involve a number of measurements that may be optimal up to constant factors, albeit at the cost of exponential classical post-processing. The technique can also be used to improve classical signal processing. A quantum technique for phase estimation that yields an asymptotic improvement in runtime is discussed, and in some instances, the quantum technique comes within a factor of log* of the minimum number of measurements required while still utilizing minimal classical post-processing. The corresponding quantum circuit provides asymptotically lower depth and width (number of qubits) than previous quantum phase estimation circuits.
[0006] This disclosure includes the following sections: Section A describes an example environment for performing quantum phase estimation; and Section B describes an example framework for quantum phase estimation based on basic measurements and classical post-processing.
[0007] The process and systems described herein may be implemented in a number of ways. Example implementations are provided below with reference to the following figures.
A: Illustrative Environment
[0008] FIG. 1 is a schematic diagram of an example environment 100 for performing quantum phase estimation. The environment 100 includes a quantum computing system 102 and a non-quantum computing device 104. The non-quantum computing device 104 may be a digital computing system.
[0009] The quantum computing system 102 may include a quantum processor/memory 106 and input/output devices 108. The input/output devices 108 may include interferometers and other devices for, among other things, reading and setting states of qubits in the quantum processor/memory 106 and may include devices for interfacing with the non-quantum computing device 104.
[0010] The quantum processor/memory 106 may include topological quantum processor/memory 110, non-topological quantum processor/memory 112, quantum gates 114, quantum bus 116, and quantum phase estimator 118. The topological quantum processor/memory 110 may include devices and components for providing topological based quantum computing, e.g., 5/2/ quantum Hall systems and systems exhibiting Majorana modes such as, but not limited to, 1-dimensional or quasi 1-dimensional wires. See
U.S. Patent Application Serial No. 13/860,246, filed April 10, 2013, entitled "Multi-Band Topological Nanowires," for details of an exemplary system exhibiting Majorana modes.
[0011] The non-topological quantum processor/memory 112 may include devices and components for providing non-topological based quantum computing. For example, the non-topological quantum processor/memory 112 may include Josephson junctions for providing flux qubits.
[0012] The quantum bus 116 may include devices and components for providing an interface between quantum processor/memory 106 and the input/output devices 108. The quantum bus 116 may include devices and components for providing an interface between the topological quantum processor/memory 110 and the non-topological quantum processor/memory 112. An example quantum bus is described in
U.S. Patent Application Serial No. 13/292,217,
U.S. Patent Publication No. 20120112168, entitled "Coherent Quantum Information Transfer between Topological and Conventional Qubit," filed November 9, 2011.
[0013] The quantum gates 114 may include various devices and components for performing various operations on qubit states. For example, quantum gates 114 may include devices and components for, among others, Hadamard gates, phase gates, controlled gates (e.g., controlled unitary gates), adder gates, and corresponding adjoint adder gates. The Hadamard gate acts on a single qubit and maps the basis state |0⟩ to
and the basis state |1⟩ to
and represents a rotation of
π about the x- and z-axes. A phase gate acts on a single qubit and may alter the phase of one basis state of the qubit while leaving the other basis state unchanged. A controlled gate may act on multiple qubits, where one or more of the qubits provide a control for an operation. An adder gate such as, but not limited to, a 3-2 quantum adder (also called a carry save adder), may add multiple qubits, and a corresponding adjoint adder gate may undo operations of an adder gate.
[0014] The quantum phase estimator 118 includes devices and components for estimating quantum phases.
Illustrative Quantum Phase Estimators
[0015] FIGS. 2-4 show non-limiting examples of example quantum phase estimators. The operation of the various quantum phase estimators are discussed hereinbelow in subsequent sections of this disclosure.
[0016] FIG. 2 is a schematic diagram of an example sequential quantum phase estimator 200 that may be employed by the quantum processor/memory 106 of FIG. 1. The sequential quantum phase estimation circuit 200 receives a calculational state (|
A⟩) 202, ancillary qubits (|0⟩), individually referenced as 204(1)-204(ms) and collectively referenced as 204, and includes a plurality of measurement circuits, individually referenced as 206(1)-206(ms) and collectively referenced as 206. Each measurement circuit 206 may be comprised of a controlled unitary gate 208, a pair of Hadamard gates 210 and 212, a phase gate 214, and a measurement device 216. A "slash" 218 indicates that the calculational state (|
A⟩) 202 is comprised of multiple qubits. The calculational state (|
A⟩) 202 may be, among other things, a quantum state employed in decryption (e.g., for prime factorization), quantum chemistry, sorting, and/or noisy signal analysis.
[0017] Features having the same indices, which are enclosed by parenthesis and appended to reference numerals, are part of the same measurement circuit 206. For example, the measurement circuit 206(1) includes the controlled unitary gate 208(1), the Hadamard gates 210(1) and 212(1), the phase gate 214(1), and the measurement device 216(1).
[0018] Each one of the controlled unitary gates 208(1)-208(ms) has a corresponding applied unitary operator
Y_{1} through
Y_{ms}. The calculational state (|
A⟩) 202 is an eigenvector of each of the applied unitary operators
Y_{1} -
Y_{ms} (i.e.,
Y_{j}|
A⟩ =
λ_{j}|
A⟩,
j = 1, 2, ...
ms), and
λ_{j} =
e^{2πiϕj} due to
Y_{j} being unitary) and is an eigenvector of a base unitary operator
U (i.e.,
U|
A⟩ =
λ|
A⟩ =
e^{2πiϕ}|
A⟩). Each of the applied unitary operators
Y_{1} -
Y_{ms} is equivalent to corresponding multiple applications of the base unitary operator
U (i.e.,
Y_{j} =
U^{Mj}, where
M_{j} is an integer), and consequently, the eigenvalues are given by
λ_{j} =
e^{2πiϕj} =
e^{2πiMjϕ}.
[0019] In some examples, the controlled unitary gates 208 may be programmable such that the applied unitary operators Y may be changeable. For example, the applied unitary operators Y may be changed for different rounds of measurements, e.g., consider the controlled unitary gate 208(j), in an n
^{th} round of measurements
and in an (n+1) round of measurements
where multiples
and
may be different.
[0020] In some instances, multiples (i.e.,
) may correspond to random values, or a sum of random values, or may correspond to non-random values. For example, in one round of measurements, e.g., in a first round of measurements, multiples
for j=1, 2, ..., ms may be assigned in a predetermined, non-random, manner, and in a second round of measurements, multiples
for j=1, 2, ..., ms may correspond to random values or a sum of random values.
[0021] The sequential quantum phase estimation circuit 200 performs operations from left to right. Thus, the measurement circuits 206 are arranged to perform sequential measurements of the calculational state (|
A⟩) 202 starting with the measurement circuit 206(ms) and ending with the measurement circuit 206(1).
[0022] Operations of the measurement circuit 206(ms) are discussed in detail. The operations of the remaining measurement circuits 206(1)-206(ms-1) are identical, or essentially identical, and a detailed discussion of such is omitted in the interest of brevity.
[0023] The Hadamard gate 210(ms) operates on the ancillary qubit 204(ms), thereby changing the state of the ancillary qubit 204(ms) from state |0⟩ to superposition of states |0⟩ and |1⟩, having equal amplitude (i.e.,
). The phase gate 214(ms) operates on the ancillary qubit 204(ms)
and provides a phase factor (
e^{2πiθms}) to one of the basis states while leaving the other basis state unchanged, e.g.,
The ancillary qubit 204(ms)
is a control to the controlled unitary gate 208(ms).
[0024] When the ancillary qubit 204(ms) is in the state |0⟩, the applied unitary operator (
Y_{ms}) is not applied to the calculational state (|
A⟩) 202. Thus, the calculational state (|
A⟩) 202 is unchanged and is provided to the subsequent controlled unitary gate 208(ms-1) (not shown).
[0025] However, when the ancillary qubit 204(ms) is in the state 11), the applied unitary operator (
Y_{ms}) is applied to the calculational state (|
A⟩) 202. The calculational state (|
A⟩) 202 picks up a phase factor
e^{2}^{πiMmsϕ} and is provided to the subsequent controlled unitary gate 208(ms-1) (not shown). The ancillary qubit 204(ms) also picks up the phase factor
e^{2πiMmsϕ}.
[0026] The Hadamard gate 212(ms) operates on the ancillary qubit 204(ms) to undo the operations of the first Hadamard gate 210(ms). The measurement device 216 measures the current state (i.e., |0⟩ or |1⟩) of the ancillary qubit 204(ms). The probability of the measurement device 216 measuring the ancillary qubit 204(ms) being in the zero base state (|0⟩) is different from the probability of the measurement device 216 measuring the ancillary qubit 204(ms) being in the one base state (|1⟩). The probabilities are a function of
θ_{ms}, M_{ms} and
ϕ.
[0027] The measurement results from the measurement devices 216(1)-216(ms) may be provided to the non-quantum computing device 104, which may apply various statistical algorithms/techniques to determine the phase
ϕ.
[0028] In some examples, the quantity "ms" may be approximately equal to the product of "m" times "s," where "m" represents the number of bits for which the phase
ϕ is to be determined and "s" represents a sample size of measurements.
[0029] In some embodiments, the phases (
θ_{j}, for j=1, 2 ...ms) by the phase gates 214(1)-214(ms) and the multiples (
M_{j}, for j=1, 2 ...ms) by the controlled unitary gates 208(1)-208(ms) may be selected randomly.
[0030] FIG. 3 is a schematic diagram of an example parallel quantum phase estimator 300 that may be employed by the quantum processor/memory 106 of FIG. 1. The parallel quantum phase estimator 300 receives a calculational state (|
A⟩) 302 and ancillary qubits (|0⟩) 304 and includes a measurement circuit 306. The measurement circuit 306 may be comprised of a controlled unitary gate 308, a pair of Hadamard gates 310 and 312, a phase gate 314, and a measurement device 316. The measurement circuit 306 may further include an adder gate 318 and adjoint adder gate 320. The "slashes" 322 indicates that the calculational state (|
A⟩) 302 and the ancillary qubits 304 are comprised of multiple qubits.
[0031] The parallel phase estimation circuit 300 performs operations from left to right.
[0032] The Hadamard gate 310 operates on the ancillary qubits 304, thereby changing the state of the ancillary qubits 304 from state |0⟩ to superposition of states |0⟩ and 11), having equal amplitude (i.e.,
). The phase gate 314 operates on the ancillary qubit 304
and provides a phase factor (
e^{2πiθms}) to one of the basis states while leaving the other basis state unchanged, e.g.,
[0033] After the Hadamard gate 310 and the phase gate 314, the adder gate 318 computes a state |
S⟩, which is a sum of the ancillary qubit 304. The state |
S⟩ is a control to the controlled unitary gate 308.
[0034] The controlled unitary gate 308 may operate on the calculational state (|
A⟩) 302 with the applied unitary operator
Y =
U^{M}. The state |
S⟩ may pick up a phase factor (
e^{2πiMϕ}) through the application of the applied unitary operator
Y.
[0035] The adjoint adder gate 320 operates to uncompute the state |
S⟩ (i.e., to reverse the operation of the adder gate 318).
[0036] The Hadamard gate 312 operates on the ancillary qubits 304 to undo, or reverse, the operations of the first Hadamard gate 310. The measurement device 316 measures the current states (i.e., |0⟩ or |1⟩) of the ancillary qubits 304. In some examples, the measurement device 316 measures the current states (i.e., |0⟩ or |1⟩) of the ancillary qubits 304 concurrently or approximately simultaneously.
[0037] The measurement results from the measurement device 316 may be provided to the non-quantum computing device 104, which may apply various statistical algorithms/techniques to determine the phase
ϕ.
[0038] In some examples, the ancillary qubits 304 may be comprised of "s" qubits, where "s" represents a sample size of measurements. In such examples, there may be "m" iterations of measuring samples - the ancillary qubits 304 may be provided "m" times and each time the measuring device 316 may measure "s" states, and the phase (θ) employed by the phase gate 314 and the multiple "M" employed by the controlled unitary gate 308 may be programmable. In some instances, values for the phase (θ) employed by the phase gate 314 and the multiple "M" employed by the controlled unitary gate 308 may be selected in accordance with a non-random scheme, and in other instances, the values may be selected randomly. From the "m" iterations, the phase of the calculational state may be determined.
[0039] FIG. 4 is a schematic diagram of an example cluster 400 of parallel quantum phase estimators that may be employed in a cluster of quantum computing systems 102 of FIG. 1. The cluster 400 of parallel quantum phase estimators may be comprised of nodes 402(1)-402(m). Each node 402 receives a calculational state (|
A⟩) 404, ancillary qubits (|0⟩) 406 and includes a measurement circuit comprised of a controlled unitary gate 408, a pair of Hadamard gates 410 and 412, a phase gate 414, a measurement device 416, an adder gate 418 and adjoint add gate 420. The "slashes" 422 indicates that the calculational state (|
A⟩) 404 and the ancillary qubits 406 are comprised of multiple qubits.
[0040] In some examples, the ancillary qubits 406 may be comprised of "s" qubits, where "s" represents a sample size. In some examples, the number of nodes (m) may correspond to the number of bits for which the phase
ϕ is to be determined.
[0041] Each node 402 of the cluster 400 of parallel quantum phase estimators operates in the same, or essentially the same, manner as the parallel quantum phase estimator 300, and in the interest of brevity, a detailed discussion of the operation of the nodes is omitted.
[0042] In some instances, for each node 402(j), the phase (
θ_{j}) employed by the phase gate 414 and the multiple (
M_{j}) employed by the controlled unitary gate 408 may be selected randomly, and in other instances, the values for the phase (
θ_{j}) and the multiple (
M_{j}) may be selected non-randomly.
[0043] FIG. 5 is a schematic diagram of an example cluster 500 of sequential quantum phase estimators that may be employed in a cluster of quantum computing systems 102 of FIG. 1. The cluster 500 of sequential quantum phase estimators may be comprised of nodes 502(1)-502(m). Each node 502 receives a calculational state (|
A⟩) 504, ancillary qubits (|0⟩), individually referenced as 506(1)-506(s) and collectively referenced as 506, and includes a plurality of measurement circuits, individually referenced as 508(1)-508(s) and collectively referenced as 508. Each measurement circuit 508 is comprised of a controlled unitary gate 510, a pair of Hadamard gates 512 and 514, a phase gate 516, and a measurement device 518. A "slash" 520 indicates that the calculational state (|
A⟩) 504 is comprised of multiple qubits.
[0044] In some examples, "s" (the number of ancillary number of qubits 406 received at a node 502, may represents a sample size. In some examples, the number of nodes (m) may correspond to the number of bits for which the phase
ϕ is to be determined.
[0045] Each node 502 of the cluster 500 of sequential quantum phase estimators operates in the same, or essentially the same, manner as the sequential quantum phase estimator 200, and in the interest of brevity, a detailed discussion of the operation of the nodes is omitted.
[0046] In some instances, for each node 502, the phases (
θ_{j}, j=1, 2 ..., s) employed by the phase gates 516 and the multiples (
M_{j}, j=1, 2 ...s) employed by the controlled unitary gates 508 may be selected randomly, and in other instances, the phases (
θ_{j}, j=1, 2 ...s) and the multiples (
M_{j}, j=1, 2 ...s) may be selected non-randomly.
Illustrative Non-Quantum Computing Device
[0047] FIG. 6 shows an illustrative non-quantum computing device 104 that may be used in environment 100. It will readily be appreciated that the various embodiments described above may be implemented in other computing devices, systems, and environments. The non-quantum computing device 104 shown in FIG. 6 is only one example of a computing device and is not intended to suggest any limitation as to the scope of use or functionality of the computer and network architectures. The non-quantum computing device 104 is not intended to be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in the example computing device.
[0048] In a very basic configuration, the non-quantum computing device 104 typically includes at least one processor 602 and system memory 604. The processor 602 is a non-quantum processing unit such as, for example, a conventional computer processor such as a digital processor. Depending on the exact configuration and type of computing device, the system memory 604 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. The system memory 604 typically includes an operating system 606, one or more program modules 608, and may include program data 610. The computing device 600 is of a very basic configuration demarcated by a dashed line 614.
[0049] The program modules 608 may include instructions for, among other things, implementing classical phase estimation, which may be based on purely random measurements, and for classical post processing of quantum phase estimations. The program modules 608 may include, among other things, algorithms and techniques for iteratively determining bits of a phase and for statistical analysis of measured outcomes including determining phases that maximize conditional probabilities for measured outcomes.
[0050] The non-quantum computing device 104 may have additional features or functionality. For example, the computing device 600 may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated in FIG. 6 by removable storage 616 and non-removable storage 618. Computer-readable media may include, at least, two types of computer-readable media, namely computer storage media and communication media. Computer storage media may include volatile and non-volatile, removable, and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. The system memory 604, the removable storage 616 and the non-removable storage 618 are all examples of computer storage media. Computer storage media includes, but is not limited to, random-access-memory (RAM), read-only-memory (ROM), electrically erasable programmable ROM (EEPROM), flash memory or other memory technology, compact disk (CD), CD-ROM, digital versatile disks (DVD), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store the desired information and which can be accessed by the non-quantum computing device 104. Any such computer storage media may be part of the non-quantum computing device 104. Moreover, the computer-readable media may include computer-executable instructions that, when executed by the processor(s) 602, perform various functions and/or operations described herein.
[0051] In contrast, communication media embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave, or other transmission mechanism. As defined herein, computer storage media does not include communication media.
[0052] The non-quantum computing device 104 may also have input device(s) 620 such as keyboard, mouse, pen, voice input device, touch input device, etc. Output device(s) 622 such as a display, speakers, printer, etc. may also be included. These devices are well known in the art and are not discussed at length here.
[0053] The non-quantum computing device 104 may also contain communication connections 624 that allow the device to communicate, such as over a network, with other computing devices 626 including the quantum computing system 102. These networks may include wired networks as well as wireless networks. The communication connections 624 are one example of communication media.
[0054] The illustrated non-quantum computing device 104 is only one example of a suitable device and is not intended to suggest any limitation as to the scope of use or functionality of the various embodiments described. Other well-known computing devices, systems, environments and/or configurations that may be suitable for use with the embodiments include, but are not limited to personal computers, server computers, handheld or laptop devices, multiprocessor systems, microprocessor-base systems, set top boxes, game consoles, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and/or the like.
B: Quantum Phase Estimation
[0055] There are two main approaches to quantum phase estimation: (1) invoking an inverse Quantum Fourier Transform (QFT) to extract information about the phase or (2) performing a basic measurement operation followed by classical post-processing in place of the QFT. An advantage to approach (2) is that it uses classical post-processing in place of quantum operations, trading off an expensive resource for an inexpensive classical computation. In particular, the QFT requires many small controlled-rotations, each of which must be approximated to precision ε by a sequence of basic quantum operations of length 0(log(1/ε)). In practice, it may be desirable to significantly reduce the circuit depth of the phase estimation algorithm in exchange for a small increase in circuit width, i.e., the number of qubits. Therefore, this disclosure focuses on approach (2) and utilizes quantum measurements to infer information about the phase.
[0056] A phase estimation technique that may be based on random measurements to infer the phase is discussed. This technique uses the fewest number of measurements of any currently known technique (and it is shown that it is within a constant factor of optimal). However, in some instances, the technique may require an impractical amount classical post-processing for use in, say, Shor's algorithm, with a complexity that is exponential in the number of bits being inferred. However, this technique may be practical for other applications. As non-limiting examples, this technique may be practiced in certain classical noisy signal processing and inference applications, where the number of bits being inferred is smaller.
[0057] A fast phase estimation technique is discussed. This phase estimation technique considers inference across multiple qubits, and it is shown that this technique requires asymptotically fewer measurements, and in turn has a correspondingly (asymptotically) smaller circuit width and depth, while still allowing efficient classical post-processing.
[0058] Four non-limiting models of computation are discussed below: the first is a sequential model with limited parallelism, the second is a parallel model, the third is a model based on a cluster of parallel quantum computers, and the fourth is a model based on a cluster of sequential quantum computers.
Phase Estimation and the Basic Measurement Operation
[0059] The goal of quantum phase estimation and the basic measurement operator, following the algorithm of Kitaev (see,
A. Y. Kitaev, Electronic Colloquium on Computational Complexity (ECCC) 3 (1996) and
A. Y. Kitaev, A. Shen, and M. Vyalyi, Classical and Quantum Computation (American Mathematical Society, Providence, Rhode Island, 2002), are discussed below. The steps are derived slightly differently than Kitaev, in anticipation of extensions discussed in the later sections.
[0060] Assume a unitary operator U for which it is desired to estimate the eigenvalues λ
_{k} of U given U and the eigenvectors |ξ
_{k}⟩:
where the eigenvalues take the form λ
_{k} = e
^{2πi·ϕk}. The phase ϕ
_{k} is a real number modulo 1, which can be represented as a unit-length circle:
ϕ
_{k} ϕ
_{k} 0 ≤ k <
t < 2
^{m}, where m represents the number of bits of accuracy for which ϕ
_{k} is determined (while it may seem more natural at first to instead consider numbers that range between 0 and 2π, rather than choosing a number between 0 and 1 and multiplying by 2π, the latter is chosen because it will be more natural when later considering an expansion of ϕ
_{k} as a binary fraction). By measuring the eigenvalues of U, an estimate of the phase ϕ
_{k} may be obtained; this process is called quantum phase estimation. (In the context of Shor's algorithm, the corresponding eigenvector is defined as
)
[0061] The goal of phase estimation algorithms is to take a state of the form |ξ
_{k}⟩ and determine the corresponding eigenvalue λ
_{k}. The measurement operation described below commutes with U, so it may be applied multiple times to the same state with different parameters to improve the knowledge of the eigenvalue. There are two parameters in the measurement result: (1) the precision δ and (2) the probability of error ε. That is, some estimate α of ϕ
_{k} is obtained where, with probability at least 1 - ε, |α - ϕ
_{k}|
_{mod1} < δ, where mod1 is the distance on the unit circle. If ϕ
_{k} is chosen from a discrete set of angles
with fixed t and unknown k, the goal is to make the precision smaller than
so that ϕ
_{k} may be determined from this set. As discussed below, the problem may be simplified by directly inferring the angle ϕ
_{k} from the discrete set of possible angles, without bothering to introduce a real number precision. In this case ε is the probability of error in the discrete inference.
Basic Measurement Operation
[0062] A measurement operator may be constructed such that the conditional probability depends on ϕ
_{k}, that is, upon measuring this operator, information about ϕ
_{k} may be learned. This construction relies on the fact that if ξ
_{k} is an eigenvector of U, then it is also an eigenvector of powers M of U:
[0063] The operator takes as input two quantum registers: one initialized to |0⟩ and the other initialized to the eigenvector |ξ
_{k}⟩. The operator depends upon two parameters, a "multiple" M and an "angle" θ, where M is an integer between 1 and t - 1 and θ is a real number between 0 and 2π. In some embodiments, M may be restricted to positive integers.
[0064] The measurement operator used to measure the eigenvalues is as follows:
which acts on the quantum states by the following transformation:
[0065] A phase gate, R
_{Z}(θ), may be implemented and corresponds to the unitary:
[0066] It follows that the measurement outcome probabilities are given by:
and
These probabilities are written as conditional probabilities to emphasize that they depend upon the unknown k.
Relation To Classical Fourier Transform and Generalizations
[0067] With Eqs. (6,7) in hand, if a large number of measurements are applied using the same M at both θ = 0 and θ = π/2, cos(2πMϕ
_{k}) and sin(2πMϕ
_{k}) may be accurately estimated. Using a sufficiently accurate estimate of these cosines and sines at two different values of M allows ϕ
_{k} to be accurately determined. This is the problem of reconstructing a sparse signal (in this case, composed of a single Fourier mode) from its value at a small number of different "times" (i.e., different values of M). However, the accurate determination of cos(2πM·ϕ
_{k}) would require a very large number of measurements, polynomial in t, while other methods require many fewer measurements. The reason is that the large number of measurements at a fixed value of M means that each measurement imparts little additional information. By varying M, accurate results are obtained from a much smaller number of measurements. For example, M may be randomly varied in different measurements, e.g., in a first measurement, M may be 2 and in a second measurement, M may be 8.
[0068] This relates to a problem of reconstructing the Fourier transform of a signal from very noisy measurements. The quantum phase estimation problem involves a signal with a single Fourier mode. However, this gives rise to a natural generalization of reconstructing a problem with a small number of Fourier modes from very noisy measurements.
"Information Theory" Phase Estimation
[0069] One procedure for estimating the phase (or angle) is to perform a series of random measurements and then solve a hard classical reconstruction problem. The operator is measured at a set of randomly chosen multiples M
_{i} and angles θ
_{i} and classically reconstruct the angle 2πϕ
_{k}. As shown below, ϕ
_{k} can be determined with as few as 0(log(t)) measurements and this result is tight.
[0070] M
_{i} is randomly selected for each measurement i between 1 and t - 1, and a small randomized offset noise θ
_{i} = 2πr is assumed, where r is a random double. The conditional measurement probabilities for this measurement operator on the i
^{th} measurement are given by:
and
[0071] Let v
_{i} be the outcome of the i
^{th} measurement. Since different measurements are independent events, the probability of getting a given sequence of measurement outcomes is
[0072] Assuming a flat a priori distribution of k, the probability distribution of k given the measurement sequence is proportional to P(v
_{1}, ..., v
_{s}|k). A technique for computing k, given a sequence of s measurements, is as follows: for each k compute the probability P(v
_{1}, ..., v
_{s}|k), outputting the k which maximizes this. The post-processing time required is of order st, which is exponentially large in the number of bits inferred since the value of k that it outputs can be written with ┌log
_{2}(t)┐ bits.
Bounds on s
[0073] In the following discussion it is shown that 0(log(t)) measurements suffice to estimate the angle with high probability. This number of measurements required is asymptotically optimal (up to constant factors), as clearly └log
_{2}(t)┘ measurements are required to have an error probability greater than 1/2: after s measurements, there are at most 2
^{s} possible outcomes for the sequence of measurements, so to select an angle from a set of t choices with probability greater than 1/2, requires that 2
^{s} >
t/
2. A more sophisticated entropic argument would likely be able to improve the constant in front of this lower bound.
[0074] The next theorem implies that the number of measurements to obtain error probability at most
ε is -log
_{c}(
t/
ε) for some constant c < 1.
[0075] Theorem 1. Suppose the multiples M
_{i} and angles θ
_{i} are chosen randomly as discussed above, and suppose the measurement outcomes are chosen with probabilities given in Eqs. (8,9) for k = k
_{0}. Then, the probability ε that the algorithm described above chooses a k' ≠ k
_{0} as the choice with maximal likelihood is bounded by
for some numerical constant c strictly less than 1 (c does not depend upon t).
[0076] Proof. First consider a given k' ≠ k
_{0} and estimate the probability that after s measurements, the probability
is greater than or equal to P(v
_{1},...v
_{s}|k
_{0}). Consider the expectation value
where the expectation value is over measurement outcomes and choices of M
_{i} and θ
_{i}. This equals
where the sum is over all 2
^{s} possible sequences v
_{1},...,v
_{s} of measurement outcomes and the expectation value is now over all choices of θ
_{i}, M
_{i}. This equals
A direct calculation shows that for all k' ≠ k, the term in parenthesis E
_{M,θ}[Σ
_{v} P
_{M,θ}(v|k')
^{1/2}P
_{M,θ}(v|k
_{0})
^{1/2}] is bounded by some constant c < 1 for all t. Thus, the expectation value (12) is bounded by c
^{s}. Thus, for a given k', the probability that P(v
_{1}, ..., v
_{s}|k') ≥ P(v
_{1}, ..., v
_{s}|k
_{0}) is bounded by c
^{s}, as can be shown by applying Markov's inequality to
[0077] Thus, the probability that there is a k' such that P(v
_{1}, ..., v
_{s}|k') ≥ P(v
_{1}, ..., v
_{s}|k
_{0}) is bounded by tc
^{s}.
[0078] The estimate in the above theorem is not optimized: it is possible that a tighter bound could be considered by estimating the expectation value
for some constant 0 <
α < 1 and optimizing the choice of a in the spirit of the Chernoff bound.
[0079] Finally, while θ is selected randomly between 0 and 2π in the above technique and in the above theorem, in fact it would suffice to pick θ randomly from the set of angles {0,π/2}, or indeed from any set of a pair of angles that do not differ by exactly π (for example, the set {0,π} would not work). The proof of the theorem would be essentially the same in this case, and restricting to such a smaller set of angles may be more convenient for implementation on a quantum computer.
Classical Inference of Multiple Fourier Modes
[0080] The results above suggest a natural generalization of the problem. Define a classical channel E(x) which maps from a real number x between -1 and 1 to an output consisting of a single bit. The output probabilities of this channel are fixed:
and
[0081] Then Eqs. (8,9) can be interpreted as follows: for θ
_{i} = 0, for any M
_{i}, the number cos(2πM
_{i}·ϕ
_{k}) is taken and this number is input into the channel and the output of the channel is the measurement outcome, while for θ
_{i} = 1, sin(2πM
_{i}·ϕ
_{k}) is the input.
[0082] This then suggests a natural generalization. Consider a classical signal written as a sum of Fourier modes:
Here, M is an integer and the function is periodic with period t.
[0083] Then, the natural classical problem results:
Problem 1 Assume that f(M) is K-sparse, meaning that at most K of the coefficients a
_{k} are non-zero. Assume that the non-zero a
_{k} are chosen from a discrete set S of possible values (typically the case of |S| being small is most interesting), with min
_{v≠w,v∈S,w∈S}|v - w| ≥ d
_{min} for some d
_{min}. The a
_{k} may be complex.
[0084] Let A
_{max} be the maximum of |f(M)| over all such K-sparse a
_{k} and over all M.
[0085] Assume a channel C(x) (the channel need not be the same as that given above in Eqs. (14,15) which maps from a real number in the range [-A
_{max},A
_{max}] to an output chosen from a discrete set. For this channel to be useful in inferring x from measurements of the output, it will be required that different input numbers lead to different output probabilities, and this requirement is quantified more precisely below in Eq. (17).
[0086] Pick several different M
_{i}, and for each M
_{i} measure C(Re(f(M
_{i}))) or C(Im(f(M
_{i}))). Infer the coefficients a
_{k}.
[0087] This problem can be interpreted as inferring a classical sparse signal from noisy measurements at several different "times" (interpreting each M
_{i} as a time at which to infer the signal). As discussed below, given suitable assumptions on C(x), this problem can be solved using a number of measurements that is 0(log(N
_{choices})), where N
_{choices} is the number of possible choices of K-sparse f(M). As before, this number of measurements is asymptotically optimal. Note that for K <<
t, log(N
_{choices}) ≈ Klog(t|S|).
[0088] The procedure described is similar to that previously described: select random M
_{i} and randomly choose whether to measure C(Re(f(M
_{i}))) or C(Im(f(M
_{i}))) at each time. After s measurements, select the choice of a
_{k} which has the maximal a posteriori likelihood, assuming a flat initial distribution. Interestingly, since the number of measurements needed is asymptotically much smaller than
(indeed as few as log(t) measurements are needed), this random procedure typically does not ever pick M
_{i} = M
_{j} for i ≠ j. That is, interpreting the M
_{i} temporally, i.e., as "times", this means that the signal is not measured twice at the same time.
[0089] Note that that the non-zero coefficients are assumed to be chosen from a small set S of possible values. As the number of possible values of S increases, the number of measurements increases for two reasons. First N
_{choices} increases. Second, the values in the set become more closely spaced (d
_{min} becomes smaller compared to A
_{max}), and the measurement outcomes probabilities hence become less sensitive to the particular value of a
_{k}. This second problem is actually the more serious one. Suppose that a signal is 1-sparse, and it is known that the only non-zero a
_{k} is at k = 0. The question is to infer the magnitude of a
_{0}. Every measurement then consists of sending a
_{0} into the channel C(x). Using the channel C(x) before, it takes 1/ε
^{2} measurements to infer a
_{0} to precision ε. This number of measurements is exponential in the number of bits of precision in a
_{0}. That is, it takes many more measurements to infer the amplitude of a Fourier coefficient than it does to infer its frequency.
[0090] Theorem 2 Suppose the multiples M
_{i} are chosen at random as above and it is randomly determined whether to measure C(Re(f(M
_{i}))) or C(Im(f(M
_{i}))) at each time. Suppose also that C(x) has the probability that for any x, y ∈ [-A
_{max}, A
_{max}]
for some constant c
_{0}. Then, the probability ε that the algorithm described above chooses a k' ≠ k
_{0} as the choice with maximal likelihood is bounded by where
[0091] Proof. Assume the correct choice of a
_{k} is given by â
_{k}. Consider a given sequence
(such that for at least one k,
) and estimate the probability that after s measurements, the probability
is greater than or equal to P(v
_{1},...v
_{s}|â
_{k}), where v
_{1},...,v
_{s} are the measurement outcomes of the channel.
[0092] Let
and
[0093] Consider the expectation value
where the expectation value is over measurement outcomes and choices of M
_{i} and choices of real or imaginary part. This equals
where the sum is over all possible sequences v
_{1},...,v
_{s} of measurement outcomes and the expectation value is now over all choices of θ
_{i} and of real or imaginary part (R
_{i} = 0,1 is used to denote a measurement of real or imaginary part). This equals
where the probabilities P(v|x) are the probability that the channel C gives output v given input x.
[0094] Utilizing the assumptions on C(x) it is shown that the term in parenthesis in Eq. (23) is bounded by some constant c < 1 for all t. Thus, the expectation value (22) is bounded by c
^{s}. Thus, for given
the probability that
is bounded by c
^{s}.
[0095] Thus, the probability that there is an
such that
P(v
_{1}, ... , v
_{s}|â
_{k}) is bounded by N
_{choices}c
^{s}.
[0096] Consider
This is greater than for
Also, for every M,
So, for randomly chosen M, the probability that |f'(M)-f
_{0}(M)|
^{2} is greater than or equal to
is at least
So, the probability that if M is randomly chosen and it is randomly determined whether to measure real or imaginary part, that the corresponding parts (i.e., either real or imaginary) of f'(M) - f
_{0}(M) is greater than d
_{min}/2 in absolute value is at least
Hence, by the assumption (17) on C(x), the term in parenthesis in Eq. (23) is bounded by
[0097] A technique for "Information Theory" phase estimation may given by the pseudo code below:
"Information Theory" Phase Estimation Pseudo Code
- 1. for i = 1, ..., s do
- 2. Choose random M_{i}. Choose random θ_{i}.
- 3. Perform basic measurement operation with multiple M_{i} and angle θ_{i}
- 4. End for
- 5. Maximize
over all choices of k, where 0 ≤ k < t < 2^{m}. - 6. Return k/t, the estimate of the phase
Estimating ϕ_{k} with Constant Precision
[0098] Recall that
where
and 0 ≤
k <
t < 2
^{m}. Let θ
_{i} = {0,π/2} at random. Using the measurement operator above and Eqs. (6, 7), the conditional probability when measuring multiple M = 1 is given by:
[0099] Solving for the conditional probability P(0|k):
[0100] s measurements, with θ
_{i} ∈ {0,π/2} choosen randomly, are made to obtain approximations
and
close to cos(2π · ϕ
_{k}) and sin(2π · ϕ
_{k}), respectively. Let there be N
_{c} measurements with θ
_{i} = 0. Let N
_{c}(0) denote the number of these measurements having outcome 0 and let N
_{c}(1) denote the number having outcome 1. Then,
[0101] If there are N
_{s} measurements with θ
_{i} = π/2, with N
_{s}(0) of them having outcome 0 and N
_{s}(1) having outcome 1, then
[0102] Given
an estimate of the angle ϕ
_{k} is obtained by taking an arctangent of
choosing the appropriate quadrant.
[0103] Equivalently, multiples M
_{i} of ϕ
_{k} can be determined in the same manner by measuring and obtaining the probability
and computing similar estimates P* and again taking an arctangent.
Estimating ϕ_{k} with Exponential Precision
[0104] To efficiently achieve exponential precision in the estimate of ϕ
_{k}, multiples M
_{i} of ϕ
_{k} are measured. Then the measurement results in a classical inference technique are used to enhance the precision of the estimate. The technique begins by measuring multiple M
_{0} = 2
^{m-1}, then M
_{1} = 2
^{m-2}, increasing the precision as we move to M
_{m-1} = 2
^{0}.
[0105] To achieve the desired precision and probability of error, each multiple is measured s times, where in this section, s refers to the number of measurements per multiple for both cosine and sine, so that the total number of measurements required is 2ms. The estimate of 2
^{j}·ϕ
_{k}, using methods of constant precision of the estimate of ϕ
_{k}, is denoted as ρ
_{j}.
[0106] Introducing binary fraction notation, where
α
_{p} ∈ {0,1}. The output of the algorithm is
which is an exponentially precise estimate of ϕ
_{k}:
Fast Phase Estimation
[0107] This section discusses techniques for determining phase estimation by considering inference across multiple bits simultaneously. In particular, an example algorithm, which improves the number of measurements 0(mlog(m)) as provided by Kitaev's algorithm (see,
A. Y. Kitaev, A. Shen, and M. Vyalyi, Classical and Quantum Computation (American Mathematical Society, Providence, Rhode Island, 2002), which is hereinafter referred to as "Kitaev 2002") to 0(mlog(log(m)).
[0108] In some examples, the example algorithm comprises two "rounds", the first round is similar to Kitaev 2002 and measures powers of two (albeit a different number of times than Kitaev 2002), and the second round infers multiple bits simultaneously. In some instances, the cardinal number of random powers of two may be a small number, e.g., less than 50.
[0109] In some examples, the techniques may be further improved by considering more rounds, requiring 0(mlog(log(log(m)))) measurements for three rounds, and so on. Ultimately techniques that requires 0(mlog*(m)) measurements, where log*(m) is the iterated logarithm and is bounded for all practical purposes by 5. These techniques all require an amount of computational time for classical post-processing that is as little as 0(mlog(m)).
Two Round Technique
[0110] The measurements used in the first round of the two-round algorithm is similar to those of Kitaev's algorithm, except that the parameter s is chosen differently. Set s = s
_{1} for some s
_{1} chosen later (in the first round this quantity is s
_{1}, and in the second round it is s
_{2}, and so on). Using a Chernoff bound estimate as in Kitaev 2002, the probability can be bounded such that the difference between 2
^{j-1}·ϕ
_{k} and the best estimate of 2
^{j-1}·ϕ
_{k} is greater than 1/16 by exp(-cs
_{1}) for some constant c > 0. For notational simplicity, the one piece of notation that was used in Kitaev's original algorithm: for each j, let β
_{j} be the closest approximation in the set
to the estimate of 2
^{j-1}·ϕ
_{k}. So, the probability of an error larger than 1/8 in β
_{j} is bounded by exp(-cs
_{1}).
[0111] A goal in the first round of the two-round technique is to give, for almost every j, a quantity called ρ
_{j} that will be an estimate of 2
^{j-1}·ϕ
_{k} to a precision δ
_{1}, where the subscript 1 is to indicate that this is the precision on the first round. This quantity δ
_{1} will be much larger than the final precision δ of our two-round algorithm, but will be much smaller than 1. As discussed below, this precise estimate ρ
_{j} can be given for 0 ≤ j <
m - log(1/δ
_{1}); however, since log(δ
_{1}) will be much smaller than m, this will indeed be most of the j.
[0112] To compute ρ
_{j}, use β
_{j+l} for l = 0,..., log(1/δ
_{1}) in a Kitaev-style inference procedure to compute log(1/δ
_{1}) + 2 bits in the binary expansion of ρ
_{j}. That is, the three lowest order bits in the binary expansion are obtained from β
_{j+log(1/δ1)}. The estimate is sharpened by obtaining the l
^{th} bit in the binary expansion from β
_{j+l-1} and from the l + 1
^{th} and l + 2
^{th} bits, proceeding iteratively. The probability of error in ρ
_{j} can be bounded by
[0113] The factor of log(δ
_{1}) occurs because to obtain an error less than δ
_{1} requires log(1/δ
_{1}) bits of precision. This estimate of the probability of error is essentially the same as the estimate of the probability of having an error in Kitaev's original algorithm, except that instead of having m bits in the expansion, this technique results in log(1/δ
_{1}) bits. These events (having a difference greater than 1/8 for some given j) are not independent. However, the event of having large error for some given j is uncorrelated with the event of having large error for bits j' if |j' - j| is large enough compared to log(1/δ
_{1}). The fact that this technique has only obtained the accurate estimate of ρ
_{j} for j ≤ m - log(1/δ
_{1}) will not pose a difficulty in what follows. For one thing, most "sets of measurements" (as defined below) do not "contain" (also defined below) the j for which there is not an accurate estimate. Alternately on the first round, all ρ
_{j} for j ≤ m can be accurately inferred by running the first round on m + log(1/δ
_{1}) bits.
[0114] The second round uses s
_{2}m "sets" of measurements, for some parameter s
_{2} chosen later, where each set of measurements will consist of repeating the same measurement a total of C times, for some constant C. A parameter S, called the "sparsity" may be introduced in this round. For the i
^{th} set of measurements, S different random values of j in the range 1 ≤ j ≤ m are picked, calling these values
In some instances, it may be required that these values
all be distinct from each other in a given measurement (if any two are equal, another S-tuple of values may be generated; typically,
so a random tuple will have distinct entries with probability close to 1). Then, σ
_{i} is estimated, where
[0115] This estimate may be done using C applications of the basic measurement operation, with
M
_{i} for each measurement and θ
_{i} being chosen randomly in {0,π/2}. The constant C may be chosen so that
The constant C is of order unity and does not depend upon m.
[0116] This completes the description of the measurements in the two-round technique. The classical post-processing phase is described below and includes an explanation on how to estimate a quantity β'
_{j} for each j. This quantity will be an approximation to 2
^{j-1}ϕ
_{k}, chosen from the set
A goal of the technique is to obtain an estimate such that for all j
for some constant ε. Thus, by a union bound, the probability of an error greater than 1/8 in any of the β'
_{j} will be bounded by ε. Then the β'
_{j} are utilized to determine the α
_{j}. This procedure may be given by the pseudo-code below:
Fast Phase Estimation Pseudo Code
- 1. First Round:
- 2. for j = m - 1, ...,1 do
- 3. Estimate 2^{j-1} · ϕ_{k} using O(1) measurements per j
- 4. End for
- 5. Set sparsity, S, and number of measurements per bit, s.
- 6. For i = 1 to sm
- 7. Set M_{i} to a sum of S different powers of two, choosing these powers of two at random or with a pseudo-random distribution. Perform O(1) measurements with given M_{i} and random or pseudo-random θ.
- 8. End for
- 9. Perform multi-bit inference to determine estimate of 2^{j-1} · ϕ_{k} for all j.
- 10. Set
- 11. for j = m - 1, ...,1 do
- 12. Infer α_{j}:
- 13. End for
- 14. Return α, the estimate of the phase.
[0117] If the error is bounded by 1/8 for all β'
_{j}, then the estimate of the phase will be accurate to 2
^{-(2n+2)}.
[0118] To estimate 2
^{j-1} · ϕ
_{k}, consider all sets of measurements such that one that one of the random values of j
_{a} was equal to j; such a set of measurements is defined as "contains j". On average, there will be s
_{2}S such sets of measurements. In the following discussion, it is assumed that there are indeed exactly s
_{2}S sets of measurements. The more general case where there are fluctuations in the number of sets of measurements is dealt with later.
[0119] On the i
^{th} set of measurements, some estimate of σ
_{i} is obtained. Suppose this set contains j. Without loss of generality, suppose that j
_{1} = j. Then, given σ
_{i} and ρ
_{j2},... , ρ
_{jS}, the best estimate of 2
^{j-1} · ϕ
_{k} is:
[0120] Next, the probability that the estimate is off by more than 1/16 is bounded. This may be done by bounding the probability that our value of σ
_{i} differs by more than 1/32 from the correct value using Eq. (33) and also bounding the probability that our estimate of
differs by more than 1/32 from the correct value. To bound that probability, the following equation may be utilized:
where δ
_{1} = 1/32S in Eq. (31) so that if each quantity ρ
_{jl} - 2
^{jl-1} · ϕ is accurate to within δ
_{1} then the sum is accurate to within 1/32. Then a union bound is utilized: if the probability that any given measurement is inaccurate is bounded by log(1/δ
_{1})exp(-cs
_{1}), then the probability that at least one measurement is inaccurate is bounded by S times that quantity.
[0121] s
_{1}∼log(log(m)) and S∼log(m) may be chosen so that the right-hand side of Eq. (36) is bounded by 1/32. Then, using Eqs. (33,36), the probability that the quantity in Eq. (35) differs by at least 1/16 from 2
^{j-1} · ϕ
_{k} is bounded by 1/4. Approximately, s
_{2}S different estimates of 2
^{j-1} · ϕ
_{k}, one for each set of measurements involving the given j, may be determined. Assuming that certain events, namely that the quantity in Eq. (35) differs by more than 1/32 from 2
^{j-1}· ϕ
_{k} are independent (this is discussed further below). Then, these measurements may be combined to obtain an estimate of β'
_{j} by picking the value of β'
_{j} which is most frequently within 1/16 of
i.e., it is within 1/16 of that value for the greatest number of sets of measurements containing j.
[0122] The probability of error in β'
_{j} by more than 1/16 is then bounded by exp(-c's
_{2}S) for some constant c' > 0. Picking s
_{2}∼1, it is found that the probability of error is 1/poly(N) for any desired polynomial, with the power depending upon the ratio between S/log(m), which ensures that this probability is small compared to ε/m. The number of measurements required by this procedure is 0(mlog(log(m))).
[0123] Several issues of correlations and fluctuations that were left open in the above analysis are now discussed. First, consider the fluctuation in the number of sets of measurements that contain j, for any given j. On average this quantity is s
_{2}S, but there may be some fluctuations. However, the probability that there are fewer than s
_{2}S/2 different such sets of measurements is exponentially small in s
_{2}S, and hence for the given choice of s
_{2}S, the quantity is bounded by 1/poly(N) and so can be made negligible (in fact, this probability, being exponentially small in s
_{2}S, has a similar scaling as the probability that incorrectly infers a given 2
^{j-1} · ϕ
_{k} given s
_{2}S sets of that contain j, as that probability is also exponentially small in s
_{2}S). So, with high probability all j are contained in at least s
_{2}S/2 measurements, and so S may be doubled and the analysis above may be applied.
[0124] Another way to deal with fluctuations in the number of measurements is to change the distribution of choices of
and anti-correlate the choices in different sets of measurements to reduce the fluctuations in the number of sets of measurements containing a given j. In some instances, this will at best lead to a constant factor improvement.
[0125] Another kind of correlation that should be dealt with is correlation between the events that the quantity in Eq. (35) differs by more than 1/16 from 2
^{j-1} · ϕ
_{k}. For a given j, assume for a given set of measurements
and refer to
as the "partners" of j. For a given j, the different sets of measurements involving that j will typically have wildly different partners of j; that is, for two different sets of measurements, m, n, the following inequality will typically occur:
for a, b ≠ 1. So, for most sets of measurements, these will be independent. Similarly, in a given measurement the following inequality,
will typically be true, so correlations between errors in different ρ
_{ja} may be ignored.
[0126] Note that if for a given j there is a large number of (roughly) independent sets of measurements containing that j, then adding a small number of correlated sets of measurements will not prevent the inference from working.
Multiple Round Technique
[0127] In some examples, the above procedure may be modified by increasing the number of rounds. In modified procedure, the first and second rounds proceed as before, though the constants s
_{1},s
_{2},S may be changed. For the second round, write S = S
_{2}. The third round of the modified procedure is the same as the second round, except that s
_{3} sets of measurements are done, and in each measurement S
_{3} different random values of j are picked. On the third round, as in the second, each set of measurements is repeated C times. It is only the first round where the quantity C does not appear, for the reason that in that round, each measurement is already being repeated s
_{1} times. The number of rounds may be increased indefinitely. In each round, the sparsity may be exponentially increased as compared to the previous round, while keeping all constants s
_{a} of order unity. The number of measurements is then proportional to the number of rounds. Since S increases exponentially in each round and S∼log(m) is needed in the last round, the number of rounds required is ∼log*(m) and the total number of measurements is ∼mlog*(m).
Classical Post-processing Time Required
[0128] The simplest implementation of the technique above requires a time 0(mlog
^{2}(m)). A discussion of this provided first and then a discussion on how to improve to 0(mlog(m)) is provided. Each bit is contained in ∼log(m) sets of measurements. To compute the quantity in Eq. (35), the sum on the right-hand side require summing over S different quantities, and for S∼log(m), this means that it takes time ∼log(m) to do the computation for each bit for each set of measurements containing that bit. So, with m bits, each contained in log(m) sets of measurements, the time is 0(mlog
^{2}(m)).
[0129] However, this may be slightly improved by noting that Eq. (35) can be written as
[0130] The quantity in parentheses can be computed once for each set of measurements, and re-used in inferring each of the ρ
_{ji} for i ∈ {1,...,S}, and then the computation requires at little as 0(1) time to do the arithmetic for each of these i. This improves the total time to 0(mlog(m)).
[0131] Another technique for Fast Phase Estimation may be given by the pseudo-code below:
Fast Phase Estimation Pseudo Code
1. First Round:
2. for j = m - 1, ...,1 do
3. Estimate 2^{j-1} · ϕ_{k} using O(1) measurements per j
4. End for
5. Later Rounds:
6. for r = 2 to Number of Rounds do
7. Set sparsity, S, and number of measurements per bit, s_{r}, for given round.
8. For i = 1 to s_{r}m
9. Set M_{i} to a sum of S different powers of two, choosing these powers of two at random or with a pseudo-random distribution. Perform O(1) measurements with given M_{i} and random or pseudo-random θ.
10. End for
11. End for
12. Perform multi-bit inference to determine estimate of 2^{j-1} · ϕ_{k} for all j. Use estimates from previous round to give starting point for inference in next round.
13. Set
15. for j = m - 1, ...,1 do
16. Infer α_{j}:
17. End for
18. Return α, the estimate of the phase.
Analysis of Circuit Depth and Width
[0132] The fast phase estimation technique offers an asymptotic improvement in the number of measurements required to estimate the phase with exponential precision. The following discusses how the corresponding quantum circuit scale, in terms of depth, width and size. The depth of a quantum circuit is defined as the number of timesteps, where gates on disjoint qubits can occur in parallel in a given timestep. Here it is assumed that a given n-qubit gate takes one timestep. The width of a quantum circuit is defined as the number of qubits. The size of a quantum circuit is the total number of non-identity quantum gates. To emphasize tradeoffs in depth and width depending on resource availability, the circuits for three different computing settings are analyzed. A summary of the circuit resources required for each technique given the setting is provided below in Table 1.
Table 1 of circuit depth, width, and size for fast phase estimation.
Type | Fast Phase Estimation |
Depth | Width | Size |
Sequential |
0(mlog*(m)) |
0(mlog*(m)) |
0(mlog*(m)) |
Parallel |
0(log(m)) |
0(mlog*(m)) |
0(mlog*(m)) |
Cluster |
0(log*(m)) |
0(m^{2}) |
0(mlog*(m)) |
[0133] First, consider the setting where each measurement operator is performed sequentially. That is, the circuit is given by the sequence of gates (shown in FIG. 2)
where Λ
^{n}(U)[q
_{1},q
_{2}] denotes n-qubits in register q
_{1} controlling the application of gate U to register q
_{2}. The quantum register containing the eigenvector state is denoted by |A⟩ and is comprised of
α qubits. Each phase estimation algorithm performs 0(ms) measurements, resulting in a circuit of depth and size 0(ms). The circuit requires 0(ms) ancilla qubits, one per measurement, plus
α additional qubits. For Kitaev 2002 phase estimation and fast phase estimation,
s equals 0(log(m)) and 0(log*(m)), respectively. Thus in the sequential setting, fast phase estimation offers an asymptotic improvement in circuit depth and size, as well as in the number of ancilla qubits.
[0134] Second, consider a more parallel setting obtained by decreasing circuit depth at the cost of increasing circuit width. The quantum phase estimation may be parallelized. The idea is to apply one multi-controlled U
^{M} gate, where M is given by
In some examples, the quantum phase estimator 118 performs
[0135] Using a quantum addition circuit based on a 3-2 quantum adder (also called a carry-save adder), three m-bit numbers can be encoded as two numbers in 0(1) depth, with width 0(m) and size 0(m). Represent the value M as a sum of s m-bit integers. The circuit first uses a log(
s)-depth tree of 3-2 adders to produce two encoded numbers, and then adds these two numbers in place using a quantum carry-lookahead adder with O(m) ancillas, O(m) size, and O(log(
m)) depth. In total, a quantum circuit can be constructed to add s m-bit integers in depth 0(log(m) + log(s)) and 0(ms) size and O(ms) ancillae.
[0136] An example circuit for performing parallel phase estimation is shown in FIG. 3. The circuit begins with a quantum register containing qubits initialized to |0⟩. Each qubit
q_{i} undergoes a Hadamard operation, followed by a phase rotation by angle
θ_{i} about the z-axis. An addition circuit (e.g., adder gate 318) is applied to determine |
M⟩. A controlled
U^{M} operation is applied, followed by an addition circuit to uncompute |
M⟩. Finally, 0(ms) Hadamard operations, and then 0(ms) measurements, are performed, which can be done in depth 0(1). The complete circuit for parallel phase estimation requires 0(ms) size and 0(log (m) + log (s)) depth, up to the implementation of the controlled
U^{M} gate. Again, s equals 0(log(m)) for Kitaev's phase estimation and 0(log*(m)) for fast phase estimation yielding a significant reduction in circuit size to 0(mlog*(m)).
[0137] Third, consider access to a cluster of quantum computers containing m nodes. (See, FIGS. 4 and 5.) Each node 402, 502 performs s measurements, resulting in a depth of 0(s), with a size and width per node of 0(s) gates and 0(s + a) qubits, respectively. Considering the overall cost across all m nodes, then the result is 0(s) depth, 0(ms) gates, and 0(ms + ma) qubits. Again, fast phase estimation yields asymptotic improvements in all dimensions, and results, for all practical purposes, in a constant-depth phase estimation circuit. One potential advantage of the cluster model is that errors do not accumulate on the eigenvector state |A⟩, since subsets of measurements are done on separate nodes. This could be advantageous when designing a fault-tolerant phase estimation algorithm.