BHT algorithm

The BHT algorithm is a quantum algorithm that solves the collision problem. In this problem, one is given n and an r-to-1 function f:\,\{1,\ldots,n\}\rightarrow\{1,\ldots,n\} and needs to find two inputs that f maps to the same output. The BHT algorithm only makes O(n^{1/3}) queries to f, which matches the lower bound of \Omega(n^{1/3}) in the black box model.[1][2]

The algorithm was discovered by Brassard, Hoyer, and Tapp in 1997.[3] It uses Grover's algorithm, which was discovered in the previous year.

Algorithm

Intuitively, the algorithm combines the square root speedup from the birthday paradox using (classical) randomness with the square root speedup from Grover's (quantum) algorithm.

First, n1/3 inputs to f are selected at random and f and is queried at all of them. If there is a collision among these inputs, then we return the colliding pair of inputs. Otherwise, all the these inputs map to distinct values by f. Then Grover's algorithm is used to find a new input to f that collides. Since there are only n2/3 such inputs to f, Grover's algorithm can find one (if it exists) by making only O(\sqrt{n^{2/3}}) = O(n^{1/3}) queries to f.

See also

References

  1. Ambainis, A. (2005). "Polynomial Degree and Lower Bounds in Quantum Complexity: Collision and Element Distinctness with Small Range". Theory of Computing 1 (1): 37–46. doi:10.4086/toc.2005.v001a003.
  2. Kutin, S. (2005). "Quantum Lower Bound for the Collision Problem with Small Range". Theory of Computing 1 (1): 29–36. doi:10.4086/toc.2005.v001a002.
  3. Brassard, Gilles; Hoyer, Peter; Tapp, Alain (1997). "Quantum Algorithm for the Collision Problem". arXiv:quant-ph/9705002.
This article is issued from Wikipedia - version of the Sunday, July 21, 2013. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.