Quantum amplitude amplification and estimation

May 15, 2000
22 pages
Published in:
  • Contemp.Math. (2002) 53-74
  • Published: 2002
e-Print:

Citations per year

19992006201320202025020406080100
Abstract: (submitter)
Consider a Boolean function χ:X{0,1}\chi: X \to \{0,1\} that partitions set XX between its good and bad elements, where xx is good if χ(x)=1\chi(x)=1 and bad otherwise. Consider also a quantum algorithm A\mathcal A such that A0=xXαxxA |0\rangle= \sum_{x\in X} \alpha_x |x\rangle is a quantum superposition of the elements of XX, and let aa denote the probability that a good element is produced if A0A |0\rangle is measured. If we repeat the process of running AA, measuring the output, and using χ\chi to check the validity of the result, we shall expect to repeat 1/a1/a times on the average before a solution is found. *Amplitude amplification* is a process that allows to find a good xx after an expected number of applications of AA and its inverse which is proportional to 1/a1/\sqrt{a}, assuming algorithm AA makes no measurements. This is a generalization of Grover's searching algorithm in which AA was restricted to producing an equal superposition of all members of XX and we had a promise that a single xx existed such that χ(x)=1\chi(x)=1. Our algorithm works whether or not the value of aa is known ahead of time. In case the value of aa is known, we can find a good xx after a number of applications of AA and its inverse which is proportional to 1/a1/\sqrt{a} even in the worst case. We show that this quadratic speedup can also be obtained for a large family of search problems for which good classical heuristics exist. Finally, as our main result, we combine ideas from Grover's and Shor's quantum algorithms to perform amplitude estimation, a process that allows to estimate the value of aa. We apply amplitude estimation to the problem of *approximate counting*, in which we wish to estimate the number of xXx\in X such that χ(x)=1\chi(x)=1. We obtain optimal quantum algorithms in a variety of settings.