Deutsch-Jozsa algorithm

from Wikipedia, the free encyclopedia

The algorithm of German is a quantum algorithm for quantum computers , can determine with whom you whether operating on a bit function is constant or balanced. This task is known as the problem of German . Deutsch's algorithm is hardly of any practical use, but historically it was the first quantum algorithm that demonstrably solves a problem faster than a classic algorithm and thus demonstrates the theoretical possibilities of quantum computers.

One generalization is the Deutsch-Jozsa algorithm . The problem is transferred from German to several bits.

The algorithms were named after their creators David Deutsch and Richard Jozsa .

history

In a paper from 1985 David Deutsch dealt with the special case of the problem (problem of German, number of input bits: 1).

In 1992 the idea was generalized by David Deutsch and Richard Jozsa (problem from Deutsch-Jozsa, any number of input bits).

The algorithm originally proposed by Deutsch was de facto not deterministic . He was successful with a probability of 0.5. The original Deutsch-Jozsa algorithm was deterministic, but in contrast to Deutsch's algorithm, it required two function evaluations instead of just one.

R. Cleve, A. Ekert, C. Macchiavello and M. Mosca made further improvements in 1998, so that now only one function evaluation is required and the algorithm remains deterministic.

The Deutsch-Jozsa algorithm served as the inspiration for the Shor algorithm and the Grover algorithm , two of the most revolutionary quantum algorithms.

The problem of German

Problem formulation

Given a function . The task now is to find out whether the given function is constant ( ) or balanced / equilibrium ( ). It should be noted that it is only given as a black box, i.e. the exact definition is unknown - only one component is available which calculates the value for a bit . To underline the importance of the Deutsch algorithm, it should be assumed that this component is expensive to use.

To illustrate this, imagine being asked to decide whether a given coin is fair (heads on one side, tails on the other) or unfair (heads or tails on both sides of the coin).

Classic solution

In the classic way, there is nothing left but to evaluate and compare the function both for and. This is equivalent to looking at a coin on both sides. The black box (or oracle) is therefore required twice. In the following it is shown that the quantum algorithm of Deutsch gets by with only one call. This is advantageous when you consider that once accepted, a call is very expensive (but the cost is asymptotically the same).

The quantum algorithm

Quantum circuit that implements Deutsch's algorithm

The quantum algorithm applies the given function to a superposition of the two possible inputs. With only one application of the oracle, he receives sufficient information about and through skillful evaluation .

Since all calculation steps in quantum informatics must be reversible, a special variant of is required here, using (addition with subsequent modulo 2) described by the figure

The algorithm uses a register of two qubits (with the tensor product , which is usually represented with ) and consists of the following steps:

  1. Initialize as follows:
  2. Apply the Hadamard transform to both qubits:
  3. Values from:

    is in the constant case and otherwise
  4. Apply the Hadamard transform to the first qubit:
  5. Measure the first qubit:
    Has the value , it is constant, otherwise balanced.

So the trick is that we shift the function values ​​into the amplitude.

realization

The first experimental realization was reported by S. Gulde in Nature 421, 48 (2003) . The qubits required for this were implemented in a trap using the electronic and vibratory degrees of freedom of an ion.

The problem of Deutsch-Jozsa

Problem formulation

The function is now generalized to input bits: It is guaranteed that the function is either constant (all inputs are mapped to one and the same value) or balanced (half of the inputs are mapped to and the other half to ). It is now necessary to find out which of the two alternatives applies. It should again be noted that it is only given as a black box or oracle.

Classic solution

In the worst case, a classic computer would have to evaluate the function for more than half of all possible inputs. It can happen, for example, that even with the most skilful choice, the first (half as many as possible) tested entries lead to the value and it is still not known which alternative applies. If the next evaluation also results , then the function is constant, if it results, however , it is balanced.

In the worst case, a classic algorithm therefore requires evaluations of . As shown below, the Deutsch-Jozsa algorithm only needs a single evaluation. This represents an exponential gain in runtime, which is a real improvement in contrast to Deutsch's problem / algorithm .

The quantum algorithm

Quantum circuit that implements the Deutsch-Jozsa algorithm

The quantum algorithm applies the given function to a superposition of all possible inputs. With only one application of the oracle, he receives sufficient information about all function values ​​through skillful evaluation.

Due to the reversibility to be obtained, a special variant of is required again, described by the figure

where the input is the length .

The algorithm uses qubits and goes through the following steps:

  1. Initialization: set the first bits to and the last bit to :
  2. Apply the Hadamard transformation (i.e. to all qubits):
  3. Values from:
  4. Apply the Hadamard transform to:
  5. Measure the register :
    If it is , then it is constant, otherwise it is balanced.

The interpretation of the measurement result can be seen as follows: If the balance is balanced, the signs for equalize each other , so that the value is measured with a probability . In the other case, i.e. when is constant, the amplitudes for are exactly the same , since for those that can always be classified in such a way that half of the scalar multiplied by an even value results, the other half an odd value.

Individual evidence

  1. ^ David Deutsch : The Church-Turing principle and the universal quantum computer . (PDF) In: Proceedings of the Royal Society of London A . 400, 1985, p. 97. doi : 10.1098 / rspa.1985.0070 .
  2. ^ David Deutsch and Richard Jozsa: Rapid solutions of problems by quantum computation . (PDF) In: Proceedings of the Royal Society of London A . 439, 1992, p. 553. doi : 10.1098 / rspa.1992.0167 .
  3. ^ R. Cleve, A. Ekert, C. Macchiavello and M. Mosca: Quantum algorithms revisited . (pdf) In: Proceedings of the Royal Society of London A . 454, 1998, pp. 339-354. arxiv : quant-ph / 9708016 . doi : 10.1098 / rspa.1998.0164 .
  4. ^ Lov K. Grover : A fast quantum mechanical algorithm for database search . In: Proceedings of the Twenty-Eighth Annual ACM Symposium on Theory of Computing . 1996, pp. 212-219. arxiv : quant-ph / 9605043 . doi : 10.1145 / 237814.237866 .
  5. Peter W. Shor : Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer . (PDF) In: SIAM J. Sci. Extra Comput. . 26, 1997, p. 1484. arxiv : quant-ph / 9508027 . doi : 10.1137 / S0097539795293172 .

literature

  • M. Homeister: Understanding Quantum Computing Springer Vieweg, Wiesbaden 2018, fifth edition, ISBN 978-3-6582-2883-5 , p. 62ff.
  • B. Lenze: Mathematik und Quantum Computing Logos Verlag, Berlin 2020, second edition, ISBN 978-3-8325-4716-5 , p. 51ff.
  • RJ Lipton, KW Regan: Quantum Algorithms via Linear Algebra: A Primer MIT Press, Cambridge MA 2014, ISBN 978-0-2620-2839-4 , pp. 77ff.
  • MA Nielsen, IL Chuang: Quantum Computation and Quantum Information Cambridge University Press, Cambridge MA 2010, ISBN 978-1-1070-02173 , p. 32ff.