Toffoli gate

In logic circuits, the Toffoli gate, also known as the CCNOT gate (“controlled-controlled-not”), invented by Tommaso Toffoli,[when?]

It is a universal reversible logic gate, which means that any classical reversible circuit can be constructed from Toffoli gates.

An example of a reversible logic gate is a NOT, which can be described from its truth table below: The common AND gate is not reversible, because the inputs 00, 01 and 10 are all mapped to the output 0.

[1] More recent motivation comes from quantum computing.

In quantum mechanics the quantum state can evolve in two ways: by Schrödinger's equation (unitary transformations), or by their collapse.

Logic operations for quantum computers, of which the Toffoli gate is an example, are unitary transformations and therefore evolve reversibly.

[2] The classical Toffoli gate implemented in the hardware description language Verilog: Any reversible gate that consumes its inputs and allows all input computations must have no more input bits than output bits, by the pigeonhole principle.

For one input bit, there are two possible reversible gates.

The other is the identity gate, which maps its input to the output unchanged.

Unfortunately, there are reversible functions that cannot be computed using just those gates.

In other words, the set consisting of NOT and XOR gates is not universal.

To compute an arbitrary function using reversible gates, the Toffoli gate, proposed in 1980 by Toffoli, can indeed achieve the goal.

[4] The Toffoli gate is universal; this means that for any Boolean function f(x1, x2, ..., xm), there is a circuit consisting of Toffoli gates that takes x1, x2, ..., xm and some extra bits set to 0 or 1 to outputs x1, x2, ..., xm, f(x1, x2, ..., xm), and some extra bits (called garbage).

A NOT gate, for example, can be constructed from a Toffoli gate by setting the three input bits to {a, 1, 1}, making the third output bit (1 XOR (a AND 1)) = NOT a; (a AND b) is the third output bit from {a, b, 0}.

Essentially, this means that one can use Toffoli gates to build systems that will perform any desired Boolean function computation in a reversible manner.

Any reversible gate can be implemented on a quantum computer,[citation needed] and hence the Toffoli gate is also a quantum operator.

The Toffoli gate has to be implemented along with some inherently quantum gate(s) in order to be universal for quantum computation.

Specifically any single-qubit gate with real coefficients[clarification needed] that can create a nontrivial quantum state[clarification needed] suffices.

[11] A Toffoli gate based on quantum mechanics was successfully realized in January 2009 at the University of Innsbruck, Austria.

[12] While the implementation of an n-qubit Toffoli with circuit model requires

CNOT gates,[13] the best known upper bound stands at

[14] It has been suggested that trapped Ion Quantum computers may be able to implement an n-qubit Toffoli gate directly.

[15] The application of many-body interaction could be used for direct operation of the gate in trapped ions, Rydberg atoms, and superconducting circuit implementations.

[16][17][18][19][20][21] Following the dark-state manifold, Khazali-Mølmer Cn-NOT gate[17] operates with only three pulses, departing from the circuit model paradigm.

The iToffoli gate was implemented in a single step using three superconducting qubits with pair-wise coupling.

The Fredkin gate
The Toffoli gate can be constructed from single qubit T - and Hadamard -gates, and a minimum of six CNOTs .