Jump to content

Deutsch–Jozsa algorithm

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Signalhead (talk | contribs) at 18:11, 26 July 2007 (→‎History: Spelling error corrected (origional -> original)). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The Deutsch-Jozsa algorithm is a quantum algorithm, proposed by David Deutsch and Richard Jozsa in 1992 with improvements by R. Cleve, A. Ekert, C. Macchiavello, and M. Mosca in 1998.[1][2]. Although it is of little practial use, it is one of first examples of a quantum algorithm that is more efficient than any possible classical algorithm.

The problem statement

In the Deutsch-Jozsa problem, we are given a black box quantum computer known as an oracle that implements the function . We know that the function is either constant (0 on all inputs or 1 on all inputs) or balanced (returns 1 for half of the input domain and 0 for the other half); the task then is to determine if constant or balanced by utilizing the oracle.

A classical solution

For a conventional deterministic algorithm, evaluations of will be required in the worst case. For a conventional randomized algorithm, a constant number of evaluation suffices to produce the correct answer with a high probability but evaluations are still required if we want an answer that is always correct. The Deutsch-Jozsa quantum algorithm produces an answer that is always correct with a single evaluation of .

History

The algorithm builds on an earlier 1985 work by David Deutsch which provided a solution for the case . Specifically we were given a boolean function and asked if it is constant.[3]

In 1992 this idea was generalized to a function which takes bits for it's input and we are asked if it is constant or balanced.[1]

Deutsch's Algorithm as he had originally proposed was not, in fact, deterministic. The algorithm was successful with a probability of one half. The original Deutsch-Jozsa algorithm was deterministic however unlike Deutsch's Algorithm it required two function evaluations instead of only one.

Futher improvements to the Deutsch-Jozsa algorithm were made by Cleve et al which resulted in an algorithm that is both deterministic and requires only a single query of . This algorithm is refered to as Deutsch-Jozsa algorithm in honour of the groundbreaking techniques they employed.[2]

The Deutsch-Jozsa algorithm provided insperation for Shor's algorithm and Grover's algorithm, two of the most revolutionary quantum algorithms.[4][5]

Deutsch's Algorithm, a special case

We need to check the condition . It is equivalent to check , if zero, then is constant, otherwise is not constant.

We begin with a two qubits in the state and apply a Hadamard transform to each qubit. This yields

We are given a quantum implementation of the function which maps to . Applying this function to our current state we obtain

We ignore the last bit and the global phase and therefore have the state

Applying a haddamard transform to this state we have

Obviously if and only if we measure a zero. Therefore the function is constant if and only if we measure a zero.

The Deutsch-Jozsa Algorithm, in detail

We begin with the n+1 bit state . That is, the first n bits are each in the state and the final bit is . We apply a Hadamard transformation to each bit to obtain the state

.

We have the function implemented as quantum oracle. The oracle maps the state to . Applying the quantum oracle gives us

.

A quick check of the two possibilities for yields

.

At this point we may ignore the last qubit. We apply a Hadamard transformation to each bit to obtain

where is the bitwise sum modulo 2.

Finally we examine the probability of measuring ,

which evaluates to 1 if is constant and 0 if is balanced.

References

  1. ^ a b David Deutsch and Richard Jozsa (1992). "Rapid solutions of problems by quantum computation". Proceedings of the Royal Society of London A. 439: 553.
  2. ^ a b R. Cleve, A. Ekert, C. Macchiavello, and M. Mosca (1998). "Quantum algorithms revisited" (PDF). Proceedings of the Royal Society of London A. 454: 339–354.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  3. ^ David Deutsch (1985). "The Church-Turing principle and the universal quantum computer" (PDF). Proceedings of the Royal Society of London A. 400: 97.
  4. ^ Lov K. Grover (1996). "A fast quantum mechanical algorithm for database search" (PDF). Proceedings of the Twenty-Eighth Annual ACM Symposium on Theory of Computing: 212–219.
  5. ^ Peter W. Shor (1994). "Algorithms for Quantum Computation: Discrete Logarithms and Factoring" (PDF). IEEE Symposium on Foundations of Computer Science: 124–134.

See also [1] Deutsch's lecture about Deutsch algorithm.