* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download available here - Centre for High Energy Physics
Basil Hiley wikipedia , lookup
Renormalization wikipedia , lookup
Delayed choice quantum eraser wikipedia , lookup
Theoretical and experimental justification for the Schrödinger equation wikipedia , lookup
Topological quantum field theory wikipedia , lookup
Particle in a box wikipedia , lookup
Scalar field theory wikipedia , lookup
Quantum decoherence wikipedia , lookup
Copenhagen interpretation wikipedia , lookup
Measurement in quantum mechanics wikipedia , lookup
Quantum field theory wikipedia , lookup
Quantum dot wikipedia , lookup
Bell's theorem wikipedia , lookup
Hydrogen atom wikipedia , lookup
Path integral formulation wikipedia , lookup
Quantum entanglement wikipedia , lookup
Density matrix wikipedia , lookup
Coherent states wikipedia , lookup
Many-worlds interpretation wikipedia , lookup
Quantum fiction wikipedia , lookup
Probability amplitude wikipedia , lookup
Quantum electrodynamics wikipedia , lookup
EPR paradox wikipedia , lookup
Orchestrated objective reduction wikipedia , lookup
Symmetry in quantum mechanics wikipedia , lookup
Interpretations of quantum mechanics wikipedia , lookup
History of quantum field theory wikipedia , lookup
Quantum teleportation wikipedia , lookup
Quantum group wikipedia , lookup
Quantum key distribution wikipedia , lookup
Quantum computing wikipedia , lookup
Hidden variable theory wikipedia , lookup
Quantum cognition wikipedia , lookup
Quantum machine learning wikipedia , lookup
Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 Quantum Search Lov K. Grovera and Apoorva D. Patelb a Bell Labs, Alcatel-Lucent, Murray Hill, NJ, USA b Centre for High Energy Physics, Indian Institute of Science, Bangalore, India Keywords Amplitude amplification • Grover diffusion • Quantum walk • Unsorted database • Unstructured search Years and Authors of Summarized Original Work 1996; Grover Problem Definition Brief Description The search problem can be described informally as finding an item possessing a specific property, in a given set of N items. Each item either does or does not possess the specified property, and that can be checked by a binary query. The complexity of the problem is the number of such queries required to find the desired item (also called the target item). The items are often collected in a database and sorted to simplify the subsequent searches. When they are not sorted, there is no shortcut to the brute force method of checking each item one by one until the desired item is found. A familiar example of a database is a telephone directory. Its entries are sorted according to the names of persons but not according to the telephone numbers. Hence, it is easy to find the telephone number of a particular person, but difficult to find the name of a person to whom a particular telephone number belongs (i.e., a lookup is difficult when it is not in the same order in which the database is sorted). The .N / lower bound on search speed, based on inspection of one item at a time, is correct only for classical computers. Quantum computers can be in a superposition of multiple states, however, and so can inspect multiple items at the same time. There is no obvious lower bound on how fast a quantum search can be, nor is there an obvious technique faster than the brute force search. It turns out, p though, that there is an efficient and optimal quantum search algorithm that requires only O. N / queries [15]. This quantum algorithm is very different from the search on a classical computer [8]. The optimal classical strategy is to check the items one at a time in a random order, avoiding in later trials the items that have already been checked earlier. After ˜ items have been checked from a uniform distribution, the probability that the search hasn’t yet succeeded is .1 1=N /.1 1=.N 1// .1 1=.N ˜ C 1//. For N , the success probability is therefore roughly 1 .1 1=N /˜ ˜=N . Increasing this success probability to ‚.1/ requires the number of items checked, ˜, to be ‚.N /. E-mail: [email protected] Page 1 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 In contrast to classical computation, quantum computation is formulated in terms of wavelike complex amplitudes, whose interference can be used to cancel undesirable components and boost the desired component. Quantum search is then analogous to the design of a multi-element antenna array, where a careful choice of phases can boost the radiation in a particular direction. The analysis of such structures is carried out using the algebra of unitary transformations, and absolutevalue squares of the amplitudes give the observation probabilities. Unitary transformations include rotations and reflections (about various directions) in the space of amplitudes, as well as local phase shifts. Rotations and reflections redistribute the amplitudes and are similar to classical transformations. On the other hand, the phase shifts are uniquely quantum; they do not alter probabilities of individual components, but affect their subsequent interference pattern. The challenge of quantum computation is to find a sequence of elementary unitary operations (i.e., quantum logic gates) that solve the given computer science problem, while ensuring that the input and the output of the quantum algorithm have clear classical interpretations. The quantum search algorithm steadily increases the amplitudepof the desired item through a series of quantum operations. p Starting with an initial amplitude 1= .N /, in steps, the amplitude increases to roughly = N , and hence, the success probability (on observation of the state) p increases to 2 =N . Boosting this to ‚.1/ requires only O. N / steps, approximately the square root of the number of steps required by the best classical algorithm. The quantum search algorithm is of wide interest because of its versatility; it can be adapted to different settings in a variety of fields, giving a new class of quantum algorithms extending well beyond the search problems. Since its discovery, it has been incorporated in solutions of many quantum problems – several of them are mentioned later in this article. Even now, two decades after the algorithm’s discovery, new applications and extensions keep on appearing regularly. Formal Construction Let the items in the set be labeled by an index i D 1; 2; : : : ; N . Let the binary query be represented by an oracle f .i /, such that f .i / D 1 when i represents a desired item and f .i / D 0 otherwise. The quantum algorithm works in an N -dimensional vector space with complex coordinates, known as the Hilbert space. We use Dirac’s notation, which is standard in the literature of quantum mechanics and quantum computation. Then the items are mapped to the N orthogonal basis vectors ji i of the Hilbert space, and the binary query is mapped to the selective phase-shift operator defined by Uf ji i D .1/f .i/ ji i. Given the binary query f .i /, it is easy to construct the operator Uf using an ancilla qubit. The problem is to start from a specific initial state jsi and evolve to a target state satisfying Uf jt i D jt i, by applying a sequence of unitary operations. The number of times Uf is used in the algorithm is its query complexity. This search problem is unstructured because nothing is known about the solution, except the information available from the oracle that can tell whether or not a specific state is the target state. NP-complete problems can be represented as exhaustive search problems. For example, let ¥ be a 3-SAT formula on n Boolean variables. Then the search problem is to find an assignment for the variables, i 2 f1; 2; : : : ; N D 2n g, that satisfy ¥. This example does not involve a database and so bypasses concerns regarding how the items are stored in a physical memory device and the spatial relationship among them. Page 2 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 Key Results Grover [15] showed that there indeed exists a quantum search algorithm that provides a squareroot speedup over the optimal classical randomized algorithm. The algorithm has its simplest form when there is only one target item. Then the algorithm starts with an unbiased uniform N p p P ji i and performs Q D O. N / iterations to evolve to superposition state jsi D .1= N / iD1 the state (UD Uf /Q jsi. Each iteration consists of two reflection operations: 1. Uf D 12jt iht j is a reflection along jt i. It uses the binary query to flip the sign of the amplitude of the target state. 2. UD D 2jsihsj 1 is reflection about jsi. It can be carried out without any information about the target state. Since the action of jsihsj gives the average amplitude state, UD amounts to inversion about the average or overrelaxation. At the end, the final state is measured in the fji ig basis that encodes the item labels, and i is output. There are several ways of analyzing the algorithm, and the geometric picture is perhaps the simplest. We observe that throughout the evolution, the quantum state stays in the two-dimensional subspace (of the p Hilbert space) spanned by jsi and jt i. Initially, the amplitude of thep state along jt i is ht jsi D 1= N , and the angle between jt i and jsi is =2 ™ with sin D 1= N . It is a general property of linear transformations in two dimensions that a pair of reflections about two distinct axes produces a rotation, and the amount of rotation is twice the angle between the two axes. The quantum search algorithm is an alternating sequence of reflections about two different axes. Each application of the operator UD Uf rotates the quantum state from jsi toward jt i by angle 2™. The number of iterations QQ required to exactly reach the target state is therefore given by .2QQ C 1/ D =2. In practice, we have to truncate to integer Q D bQQ C 0:5c, introducing 2 a small error. p The success probability still remains at least cos ™ D 1 1=N . Asymptotically, Q D .=4/ N . The reflection about the uniform superposition state, UD , is known as the Grover diffusion n operation. When the indices are represented in binary notation, with N D 2 , we have jsi D 1 1 H ˝n j0i˝n in terms of the Hadamard operator H D p12 . Then UD D H ˝n U0 H ˝n , with 1 1 U0 D 2j0i˝n h0j˝n 1 being the reflection about the j0i˝n state, and it can be implemented using O.n/ qubit-level operations. In this case, the full quantum search algorithm evolves the state j0i˝n to the state (H ˝n U0 H ˝n Uf /Q H ˝n j0i˝n . When there are M target items, instead of just one, all that is required is to replace jt i by M p P jtj i= M in the algorithm. The final measurement then yields one of the target items after j D1 p O N=M queries. Thus, we have [15]: Theorem 1 (Grover search). There is a quantum black-box unstructured search algorithm with success ‚.1/, which finds any one of the M target items in a set of N items, using p probability N=M queries. O This algorithm has several noteworthy properties: Page 3 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 p • The algorithm is optimal. It saturates the N lower bound [5] on the number of queries required for an unstructured quantum search. The evolution from jsi to jt i follows the shortest geodesic route in the Hilbert space at constant speed. A variational analysis shows that the algorithm cannot be improved by even a single query [43]. • The best classical search algorithm has to walk randomly through all the items, while the quantum search algorithm performs a directed walk in the Hilbert space. The square-root speedup of the quantum search algorithm can therefore be understood as the well-known result that directed walk provides a square-root speedup over random walk while covering the same distance. • The algorithm can be looked upon as evolution of the quantum state from jsi to jt i, governed by a Hamiltonian containing two terms, jt iht j and jsihsj. The former represents a potential energy attracting the state toward jt i, and the latter represents a kinetic energy diffusing the state throughout the Hilbert space. The algorithm is then the discrete Trotter’s formula, generated by exponentiating the two terms in the Hamiltonian [17]. • Grover search does not require the full power of quantum dynamics and can be implemented using any system that obeys the superposition principle. Explicit examples using classical waves in the form of coupled oscillators have been constructed [20, 29]. In these mechanical systems, the role of the uniform superposition state is played by the center-of-mass mode, and the search problem becomes the energy focusing problem. The classical wave implementation requires the same number of queries as the quantum algorithm. The difference is that to represent N items, we need N wave modes but only n D log2 N qubits. • Grover search finds with certainty a single target state out of four possibilities using a single binary query, i.e., Q D 1 for N D 4. The best classical Boolean algorithm can distinguish only two items with a single binary query, and so it needs two binary queries to carry out the same task. When the query can be factored into subqueries, e.g., the item label is searched for one digit at a time and not as a whole, the best quantum (or wave) arrangement for a database is a quaternary tree. Then every subquery reduces the search space by a factor of 4, which is a factor-of-2 advantage over the classically optimal binary tree. An additional advantage following from commutativity of superposition is that, unlike the classical case, the quantum tree does not require sorting of the database [28]. • The quantum search algorithm is robust against changes in the initial state and the operators, in sharp contrast to many other quantum processes that are highly sensitive to errors. The initial state and the diffusion operator are related in Grover search, but can be separated in a more general context [2, 40]. Let UQ D be the modified diffusion operator with jsi as an eigenstate with eigenvalue 1, i.e., the diffusion is translationally invariant. The algorithm then succeeds with ‚.1/ probability, provided ’ D jht jsij as well as the angular spectral gap of UQ D in the vicinity of identity (say Q ) are bounded away from zero. The number of queries required is O.B 3 =’/, where B 2 is related to the second moment of the eigenvalue distribution of UQ D and obeys B 2 < 1 C .4=Q 2 /, in contrast to the classical result O.1=’2 /. Grover search, therefore, can be generalized to an entire class of algorithms that use different diffusion operators. This flexibility is one of the reasons why Grover search ideas appear frequently in quantum algorithms. • Quantum search can be implemented so as to be robust also against faulty queries, a problem known as bounded-error search. When the query has a bounded coherent error, say UQ f ji ij1i D p p pi .1/f .i/ ji ij1i C 1 pi jiQ ij0i with each pi 0:9 (jiQ i are arbitrary states pand the last qubit is a witness for the fault), quantum search can still be implemented using O N queries [22]. Page 4 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 The deterioration of the search algorithm depends on pi , but that is only in the scaling constant for the number of queries. A useful generalization of the quantum search algorithm is the amplitude amplification technique [10,16], which can be applied on top of nearly any quantum algorithm for any problem. It says that given a quantum algorithm that solves a problem with a small success probability , the success probability can be increased to roughly m2 using O.m/ calls to that algorithm. (Classically, the success probability can be increased to only about m.) For the standard search problem, the simple algorithm that picks a random item has success probability D 1=N , which the quantum search algorithm increases to ‚.1/. More formally, let V be the unitary operator corresponding to an algorithm that evolves the initial state jsi to V jsi. Its success probability is D jht jV jsij2 D jVt s j2 . The algorithm obtained by replacing jsi by V jsi in Grover search, i.e., replacing UD by V UD V , then increases the success p probability to ‚.1/ in O 1= jVt s j iterations. In particular, this algorithm evolves the quantum state in the two-dimensional subspace spanned by jt i and V jsi, rotating it by angle 2 sin1 jVt s j at every iteration. In order to implement Uf , the algorithm needs a witness for the correctness of the output. Thus, we have [10, 16]: Theorem 2 (Amplitude amplification). Let A be a quantum algorithm that outputs a correct answer with witness, with known probability D sin2 . Furthermore, let m D b =.4™/c. Then there is an algorithm A0 that uses 2m C 1 calls to A and A1 and outputs a correct answer with probability 0 1 . Depending on the actual implementation, it is possible to vary the quantum search algorithm somewhat from the preceding deterministic and optimal approach and obtain small improvements: p N log N qubit-level operations in order to implement H ˝n and • The algorithm needs O U0 . The log N factor in this count can be suppressed by adding a small number of queries to the algorithm. A simple scheme divides the n qubits into k sets of n=k qubits each and uses the Grover diffusion operators UD .i/ D H ˝.n=k/ U0 .i/ H ˝.n=k/ that act only on one set at a time leaving the other sets unchanged [18]. Sequentially going through all the sets generates the k Q .i/ .UD Uf /H ˝n , which is then used for amplitude amplification with the transformation V D iD1 initial state j0i˝n . Overall, the number of qubit-level operations reduce by a factor ‚.k/, while 1=k D o.1/. The choice the number of queries go up by a factor 1 C ‚.kN 1=k /, provided kN p k D ‚.n= log n/ reduces the qubit-level operations to O N log n , at the cost of increasing the queries by a factor 1 C ‚.1= log n/. • Consider the partial search problem where the items are separated into N=b blocks of size b each, and only the block containing the desired item is to p be located using the same Uf . In that case, the number of queries can be reduced by 0:34 b for large b [25]. The procedure first uses Grover search to make the amplitudes of nontarget blocks sufficiently small, then applies Grover search in parallel within each block to make the amplitudes of the target block sufficiently negative (amplitudes of nontarget blocks remain unchanged in this step), and then executes a final UD operation to reduce the amplitudes of nontarget blocks to zero. Page 5 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 • Though Grover search proceeds from jsi to jt i with uniform speed in the Hilbert space, it slows down in terms of the success probability as it nears the target state. So one can reduce the expected number of queries, by stopping the algorithm before reaching the target state and then looking for the desired item probabilistically. That amounts to minimizing .Q C 1/=p, with the p 2 1 success probability p D sin .2Q C 1/ sin .1= N / . This probabilistic search reduces the p required number of queries asymptotically to 0:6900 N [14]. • Consider the search problem where the times required for querying different items are not the same. This can happen when the query is an algorithm A acting on different input states ji i. When the query for the i th item takes time!ti to execute, unstructured quantum search can be N 1=2 P 2 accomplished in time O T D ti when ti are known apriori [3]. The strategy is to iD1 divide the items into multiple groups so that items in every group have query times within a constant factor, apply Grover search within each group, and then query the groups sequentially. The number of groups needed is O.log N /, and the result improves upon the global Grover p N tmax . Amplitude amplification can be used when A is probabilistic, and search bound O a polylogarithmic overhead in T is required when ti are not known in advance. Applications NP-complete problems: Even though NP-complete problems have some structure, there are few known algorithms that exploit this structure to solve them, and often the only recourse left is to solve them as exhaustive search problems. Since quantum search does not assume any structure or pattern in the input data, it provides a square-root speedup in such cases. Quantum counting: The counting problem is to find the number of items in a set that satisfy the given query. Its quantum solution is based on thefact thatthe iterative evolution in Grover p M=N . The phase estimation procedure search is periodic, with angular frequency ! D 2 sin1 (based on quantum transform) [24] can therefore determine M approximately, up to error p Fourier p p M , using O N queries. Then, using the property that ¨ differs by 1= M.N M / between p adjacent values of M , M can be determined exactly using O= M.N M / queries [27]. For M D o.N /, this quantum result is a power-law improvement over the classical result of ‚.N / queries, although not as good as a square-root speedup. Element distinctness: An early application of Grover search was to find collisions, i.e., given oracle access to a 2-to-1 function f , find distinct arguments x; y such that f .x/ D f .y/. The quantum collision problem has an O.N 1=3 / algorithm [9]. The more general element distinctness problem is to find distinct x; y such that f .x/ D f .y/, for an unknown function f that can be accessed only by an oracle. Ambainis discovered an optimal O.N 2=3 / quantum algorithm for this problem [2]. It searches a suitably constructed graph, with the Grover diffusion operation replaced by a certain quantum walk. The vertices of the graph correspond to various subsets of items Sj f1; 2; : : : ; N g, each of size N 2=3 , two vertices are connected by an edge when the corresponding subsets differ by only one item, and the target vertices are the subsets Sj that solve the element distinctness problem. Page 6 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 Distributed search: Grover search is also useful in improving communication complexity. For example, a straightforward distributed implementation of the quantum search algorithm solves the set intersection problem or the appointment problem. The result is, when A and B have respective N data pstrings x;y 2 f0; 1g , and they want to find an index i such that xi D yi D 1, only N log N qubits of communication is necessary [11]. This result has led to an exponential O classical/quantum separation in the memory required to evaluate a certain total function with a streaming input [26]. Fixed-point search: The iterative evolution in Grover’s search algorithm is cyclic, and knowledge of N is necessary to stop it at the right time to find the target item. In contrast, fixed-point search algorithms converge monotonically to the target state. For a long time, a fixed-point quantum algorithm was considered unlikely, since any iterative unitary evolution is periodic. Surprisingly, a way out was provided by recursive unitary evolution. When the reflection operations in the amplitude amplification algorithm are replaced by selective phase shifts of =3 (e.g., Ri D 1 C .e i =3 1/ji ihi j for the state ji i), jht jV jsij2 D 1 implies jht jVRs V Rt V jsij2 D 1 3 [19]. So each recursive substitution of the operator V by the operator VRs V Rt V reduces the deviation of the final state from the target state to the cube of what it was before. (The corresponding best classical reduction is O. 2 /, e.g., by majority rule selection after three trials.) This technique does not give a square-root speedup for search, but it is useful when is small, for instance, in error correction. It has been used to design composite pulse sequences for reducing systematic errors [35]. An iterative quantum search algorithm with similar properties has been obtained combining reflection operations with non-unitary projective measurements [41]. Another recent construction is a bounded-error quantum search algorithm (i.e., success probability p 1 •) that varies the phase shifts between and =3 as a function of the iteration number [42]. It exhibits square-root speedup as well as convergence to the target state, provided that both • and jht jsij are bounded away from zero. Spatial search: This is the search problem where the items belonging to a database are spread over distinct physical locations, say a d -dimensional lattice, and there is a restriction that one can proceed from any location to only its neighbors while searching for the target item. Its quantum solution replaces the global Grover diffusion operator by a local quantum walk, and Grover search becomes the d ! 1 limit. The required number of queries has to obey the double lower bound p 1=d dN ; N ; the former arises from the finite speed of movement on the lattice and the latter from the optimality of Grover search. p The best algorithms are found in the framework of relativistic quantum mechanics. They use O N queries for d > 2, with the scaling constant approaching =4 from above as d ! 1 [1, 33]. In the critical dimension d D 2, the algorithms are slowed down by logarithmic factors arising from the infrared divergence, and the best known algorithm p N log N queries [39]. For non-integer values of d , the scaling behavior of the requires O algorithm has been verified using numerical simulations on fractal lattices [32]. Markov chain evolution: Generic stationary stochastic processes (e.g., random walks) are defined in terms of transition matrices that encode the possible evolutionary changes at each step. Many properties of the resulting evolution (e.g., hitting time, detection, mixing, escape time) scale as negative powers of the spectral gap of the transition matrix. For Markovian evolution on bipartite graphs, the transition matrix can be separated into two disjoint parts, say fxg ! fyg and fyg ! fxg. Szegedy constructed two reflection operators from these parts and defined a quantum evolution operator as their product [38] (classical Markov chain evolution does not allow such Page 7 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 reflection operators). The spectral gap of this quantum evolution operator scales as the square root of the spectral gap of the original transition matrix and so speeds up the evolution the same way as Grover search does. Recursive search: Game-tree evaluation, which is a recursive search problem, is an extension of unstructured search. Classically, using the alpha-beta pruning technique, thevalue of a balanced p binary AND-OR tree can be computed with o(1) error in expected time O N log2 Œ.1C 33/=4 D O.N 0:754 / [36]. This is optimal even for bounded-error algorithms [37]. By applying quantum search recursively, a depth-d regular AND-OR tree can be evaluated with constant error in time p N O.log N /d 1 . The log factors come from amplifying the success probability of inner searches to be pclose toone. Bounded-error quantum search eliminates these log factors, reducing the time to O N c d for some constant c. Recently, an O.N 0:5Co.1/ / time algorithm has been discovered for evaluating an arbitrary AND-OR tree on N variables [4, 13]. Open Problems In several applications of the quantum search algorithm, only the leading asymptotic behavior of the query complexity is known, and attempts to suppress logarithmic corrections (when they appear) and reduce the scaling constants continue [34]. In this section, we point out some other offbeat applications. Hamiltonian evolution: Many conventional algorithms for simulations of quantum systems with sparse Hamiltonians use the Trotter formula with a small step size. They have a power-law dependence of the computational complexity on the simulation error and hence are not efficient. In contrast, Grover search amounts to a Trotter formula with the largest possible step size, given the projection operator nature of the terms in the Hamiltonian. A recent exciting realization is that this feature leads to only logarithmic dependence of the computational complexity on the simulation error, which is an exponential improvement. The general strategy is to decompose the sparse Hamiltonian as a sum of projection operators, formulate the evolution problem as a multiquery search problem, and then use a large step size Trotter formula to simulate it [7, 31]. This framework can also readily benefit classical simulations of quantum systems. Molecular biology: Many molecular processes of metabolism occur at scales, nanometer and picosecond, where quantum dynamics is relevant. They frequently involve unstructured search and transport, in the sense that correct ingredients for the processes have to be found from the mixture of molecules floating around. Evolution over billions of years has certainly produced complex machinery to carry out these searches efficiently, although we do not fully comprehend their optimization criteria. Attempts to understand some of these processes suggest that Grover search may have played a role in their design, quite likely exploiting coherent coupled vibrational modes and not quantum superposition. An intriguing example is that the universal genetic language uses an alphabet of four letters, while a binary alphabet would be sufficient and simpler to construct during evolution [30]. Coherent vibrational dynamics of molecules also contributes to efficient energy transport during photosynthesis and to the detection of smell [23]. Ordered search: A sequentially ordered database can be easily searched by factoring f .i / into subqueries for individual digits of i . An alternative is to use a different oracle g.i /, such that Page 8 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 g.i / D 0 when i represents items before the desired item and g.i / D 1 otherwise. Classically, binary search is the optimal algorithm given either f .i / or g.i / and requires dlog2 N e queries. The optimal quantum algorithm for f .i / is quaternary search with 0:5dlog2 N e queries, but surprisingly a quantum algorithm using g.i / can do better. In case of g.i /, though the optimal solution is unknown, the query complexity for an exact algorithm has a lower bound of 0:221 log2 N [21] and a known solution of 0:433 log2 N [12] (there also exists a quantum stochastic Las Vegas algorithm with 0:32 log2 N expected queries and o.1/ error [6]). Search with additional structure: It may be possible to speed up a search process beyond the square-root speedup of Grover search, when the problem has extra structure beyond the minimal information provided by the oracle f .i /. The details of the algorithm and the extent of speedup would then depend on the extra structure, and the possibilities are open to explorations. Some examples are symmetries among the items, associative memory recall with connections, and patterns in the Boolean function to be evaluated. Another problem of interest is determination of the complete path (with certain properties) from the initial to the target state instead of locations of just the end points. Perspective: In a lecture at the Bell Labs in 1985, Richard Feynman made an interesting observation. In the 1940s when airplanes were being developed, aeronautical engineers had proved bounds and theorems about why planes would never be able to fly faster than the speed of sound. For several years, this speed was regarded as fundamentally a bound for flights as the speed of light is for communications. However, gradually just by using intelligent design, it was discovered that airplanes could indeed fly faster than the speed of sound – only the rules of design in the new regime were pvery different. The question is whether the bounds on quantum computation (specifically the N bound for search) will continue to hold, or by making the rules of design very different, just as in the case of supersonic airplanes, someone will find a way around these bounds. No one has found any loophole in the arguments in the 20 years since the lower bound for quantum search was discovered, despite numerous scientists from different fields having tried their hand at it. On the other hand, even though this bound has been derived over and over again using different methods, no one has come up with a simple and short physical explanation for it, which would give one the assurance that one really understood it. Cross-References Quantum Algorithm for Element Distinctness Routing Recommended Reading 1. Aaronson S, Ambainis A (2005) Quantum search of spatial regions. Theory Comput 1:47–79 2. Ambainis A (2007) Quantum walk algorithm for element distinctness. SIAM J Comput 37(1):210–239 3. Ambainis A (2010) Quantum search with variable times. Theory Comput Syst 47(3): 786–807 Page 9 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 4. Ambainis A, Childs AM, Reichardt BW, Špalek R, Zhang S (2010) Any AND-OR formula of size N can be evaluated in time N 1=2 C o.1/ on a quantum computer. SIAM J Comput 39(6):2513–2530 5. Bennett CH, Bernstein E, Brassard G, Vazirani U (1997) Strengths and weaknesses of quantum computing. SIAM J Comput 26(5):1510–1523 6. Ben-Or M, Hassidim A (2007) Quantum search in an ordered list via adaptive learning. arXiv:quant-ph/0703231 7. Berry DW, Childs AM, Cleve R, Kothari R, Somma RD (2014) Exponential improvement in precision for simulating sparse Hamiltonians. In: Proceedings of the 46th ACM symposium on theory of computing (STOC’14), New York, 31 May–3 June 2014, pp 283–292 8. Brassard G (1997) Searching a quantum phone book. Science 275(5300):627–628 9. Brassard G, Høyer P, Tapp A (1998) Quantum cryptanalysis of hash and claw-free functions. In: Proceedings of the 3rd Latin American theoretical informatics symposium (LATIN’98). Lecture notes in computer science, vol 1380. Springer, Berlin/Heidelberg, pp 163–169 10. Brassard G, Høyer P, Tapp A (1998) Quantum Counting. In: Proceedings of the 25th international colloquium on automata, languages and programming (ICALP’98). Lecture notes in computer science, vol 1443. Springer, Berlin/Heidelberg, pp 820–831 11. Buhrman H, Cleve R, Wigderson A (1998) Quantum vs. classical communication and computation. In: Proceedings of the 30th ACM symposium on theory of computing (STOC’98), Dallas, 24–26 May 1998, pp 63–68 12. Childs AM, Landahl AJ, Parrilo PA (2007) Improved quantum algorithms for the ordered search problem via semidefinite programming. Phys Rev A 75(3):032335 13. Farhi E, Goldstone J, Gutmann S (2008) A quantum algorithm for the Hamiltonian NAND tree. Theory Comput 4:169–190 14. Gingrich RM, Williams CP, Cerf NJ (2000) Generalized quantum search with parallelism. Phys Rev A 61(5):052313 15. Grover LK (1996) A fast quantum mechanical algorithm for database search. In: Proceedings of the 28th ACM symposium on theory of computing (STOC’96), Philadelphia, 22–24 May 1996, pp 212–219 16. Grover LK (1998) A framework for fast quantum mechanical algorithms. In: Proceedings of the 30th ACM symposium on theory of computing (STOC’98), Dallas, 24–26 May 1998, pp 53–62 17. Grover LK (2001) From Schrödinger’s equation to the quantum search algorithm. Pramana 56:333–348 18. Grover LK (2002) Trade-offs in the quantum search algorithm. Phys Rev A 66(5):052314 19. Grover LK (2005) Fixed-point quantum search. Phys Rev Lett 95:150501 20. Grover LK, Sengupta AM (2002) From coupled pendulums to quantum search. In: Brylinski RK, Chen G (eds) Mathematics of quantum computation. CRC, Boca Raton, pp 119–134 21. Høyer P, Neerbak J, Shi Y (2002) Quantum complexities of ordered searching, sorting and element distinctness. Algorithmica 34(4):429–448 22. Høyer P, Mosca M, de Wolf R (2003) Quantum search on bounded-error inputs. In: Proceedings of the 30th international colloquium on automata, languages and programming (ICALP 2003). Lecture notes in computer science, vol 2719. Springer, Berlin/Heidelberg, pp 291–299 23. Huelga SF, Plenio MB (2013) Vibrations, quanta and biology. Contemp Phys 54(4):181–207 24. Kitaev AYu, Shen AH, Vyalyi MN (2002) Classical and quantum computation. Graduate studies in mathematics, vol 47. American Mathematical Society, Providence. Section 13.5 Page 10 of 11 Encyclopedia of Algorithms DOI 10.1007/978-3-642-27848-8_317-2 © Springer Science+Business Media New York 2015 25. Korepin VE, Grover LK (2006) Simple algorithm for partial quantum search. Quantum Inf Process 5(1):5–10 26. Le Gall F (2006) Exponential separation of quantum and classical online space complexity. In: Proceedings of the 18th annual ACM symposium on parallelism in algorithms and architectures (SPAA 2006), Cambridge, 30 July–2 Aug 2006, pp 67–73 27. Mosca M (2001) Counting by quantum eigenvalue estimation. Theor Comput Sci 264:139–153 28. Patel A (2001) Quantum database search can do without sorting. Phys Rev A 64(3):034303 29. Patel A (2006) Optimal database search: waves and catalysis. Int J Quantum Inf 4(5):815–825; Erratum: ibid. 5(3):437 (2007) 30. Patel A (2008) Towards understanding the origin of genetic languages. In: Abbott D, Davies PCW, Pati AK (eds) Quantum aspects of life. Imperial College Press, London, pp 187–219 31. Patel A (2014) Optimisation of quantum Hamiltonian evolution. In: Proceedings of the 32nd international symposium on lattice field theory, New York, 23–28 June 2014. PoS(LATTICE2014)324 32. Patel A, Raghunathan KS (2012) Search on a fractal lattice using a quantum random walk. Phys Rev A 86(1):012332 33. Patel A, Rahaman MdA (2010) Search on a hypercubic lattice using a quantum random walk: I. d>2. Phys Rev A 82(3):032330 34. Portugal R (2013) Quantum walks and search algorithms. Springer, New York 35. Reichardt BW, Grover LK (2005) Quantum error correction of systematic errors using a quantum search framework. Phys Rev A 72:042326 36. Saks M, Wigderson A (1986) Probabilistic Boolean decision trees and the complexity of evaluating game trees. In: Proceedings of the 27th annual IEEE symposium on foundations of computer science (FOCS), Toronto, 27–29 Oct 1986, pp 29–38 37. Santha M (1995) On the Monte Carlo decision tree complexity of read-once formulae. Random Struct Algorithms 6(1):75–87 38. Szegedy M (2004) Quantum speed-up of Markov chain based algorithms. In: Proceedings of the 45th annual IEEE symposium on foundations of computer science (FOCS’04), Rome, 17–19 Oct 2004, pp 32–41 39. Tulsi A (2008) Faster quantum-walk algorithm for the two-dimensional spatial search. Phys Rev A 78(1):012310 40. Tulsi A (2012) General framework for quantum search algorithms. Phys Rev A 86(4):042331 41. Tulsi T, Grover LK, Patel A (2006) A new algorithm for fixed point quantum search. Quantum Inf Comput 6(6):483–494 42. Yoder TJ, Low GH, Chuang IL (2014) Optimal fixed-point quantum amplitude amplification using Chebyshev polynomials. Phys Rev Lett 113:210501 43. Zalka C (1999) Grover’s quantum searching algorithm is optimal. Phys Rev A 60(4):2746–2751 Page 11 of 11