In quantum computing and specifically the quantum circuit model of computation, a quantum logic gate (or simply quantum gate) is a basic quantum circuit operating on a small number of qubits. They are the building blocks of quantum circuits, like classical logic gates are for conventional digital circuits.
Unlike many classical logic gates, quantum logic gates are reversible. However, it is possible to perform classical computing using only reversible gates. For example, the reversible Toffoli gate can implement all Boolean functions, often at the cost of having to use ancillary bits. The Toffoli gate has a direct quantum equivalent, showing that quantum circuits can perform all operations performed by classical circuits.
Quantum logic gates are represented by unitary matrices. The most common quantum gates operate on spaces of one or two qubits, just like the common classical logic gates operate on one or two bits. As matrices, quantum gates can be described by sized unitary matrices, where is the number of qubits that the gates act on. The variables that the gates act upon, the quantum states, are vectors in complex dimensions, where again is the number of qubits of the variable: The base vectors are the possible outcomes if measured, and a quantum state is a linear combination of these outcomes.
Quantum gates are usually represented as matrices. A gate which acts on k qubits is represented by a 2^{k} x 2^{k} unitary matrix. The number of qubits in the input and output of the gate have to be equal. The action of the gate on a specific quantum state is found by multiplying the vector which represents the state by the matrix representing the gate. In the following, the vector representation of a single qubit is:
and the vector representation of two qubits is:
where is the basis vector representing a state where the first qubit is in the state and the second qubit in the state .
The Hadamard gate acts on a single qubit. It maps the basis state to and to , which means that a measurement will have equal probabilities to become 1 or 0 (i.e. creates a superposition). It represents a rotation of about the axis . Equivalently, it is the combination of two rotations, about the Xaxis followed by about the Yaxis. It is represented by the Hadamard matrix:
The hadamard gate is the onequbit version of the quantum fourier transform.
Since where I is the identity matrix, H is indeed a unitary matrix.
The PauliX gate acts on a single qubit. It is the quantum equivalent of the NOT gate for classical computers (with respect to the standard basis , , which privileges^{[clarification needed]} the Zdirection) . It equates to a rotation of the Bloch sphere around the Xaxis by radians. It maps to and to . Due to this nature, it is sometimes called bitflip. It is represented by the Pauli matrix:
The PauliY gate acts on a single qubit. It equates to a rotation around the Yaxis of the Bloch sphere by radians. It maps to and to . It is represented by the Pauli Y matrix:
The PauliZ gate acts on a single qubit. It equates to a rotation around the Zaxis of the Bloch sphere by radians. Thus, it is a special case of a phase shift gate (which are described in a next subsection) with . It leaves the basis state unchanged and maps to . Due to this nature, it is sometimes called phaseflip. It is represented by the Pauli Z matrix:
Note the square roots of the identity matrix
The NOT gate acts on a single qubit.
.?., so this gate is a square root of the NOT gate.
Similar squared rootgates can be constructed for all other gates by finding the unitary matrix that, multiplied by itself, yields the gate one wishes to construct the squared root gate of. All rational exponents of all gates can be created in this way. (Only approximations of irrational exponents are possible to synthesize from composite gates whose elements are not themselves irrational, since exact synthesis would result in infinite gate depth.)
This is a family of singlequbit gates that leave the basis state unchanged and map to . The probability of measuring a or is unchanged after applying this gate, however it modifies the phase of the quantum state. This is equivalent to tracing a horizontal circle (a line of latitude) on the Bloch sphere by radians.
where is the phase shift. Some common examples are the gate (commonly written as T) where , the phase gate (written S, though S is sometimes used for SWAP gates) where and the PauliZ gate where .
The swap gate swaps two qubits. With respect to the basis , , , , it is represented by the matrix:
The sqrt(swap) gate performs halfway of a twoqubit swap. It is universal such that any manyqubit gate can be constructed from only sqrt(swap) and single qubit gates. The sqrt(swap) gate is not, however maximally entangling; more than one application of it is required to produce a Bell state from product states.
Controlled gates act on 2 or more qubits, where one or more qubits act as a control for some operation. For example, the controlled NOT gate (or CNOT or cX) acts on 2 qubits, and performs the NOT operation on the second qubit only when the first qubit is , and otherwise leaves it unchanged. With respect to the basis , , , , it is represented by the matrix:
More generally if U is a gate that operates on single qubits with matrix representation
then the controlledU gate is a gate that operates on two qubits in such a way that the first qubit serves as a control. It maps the basis states as follows.
The matrix representing the controlled U is
When U is one of the Pauli matrices, ?_{x}, ?_{y}, or ?_{z}, the respective terms "controlledX", "controlledY", or "controlledZ" are sometimes used.^{[1]}
The CNOT gate is generally used in quantum computing to generate entangled states.
The Toffoli gate, also CCNOT gate or Deutsch gate, is a 3bit gate, which is universal for classical computation. The quantum Toffoli gate is the same gate, defined for 3 qubits. If we limit ourselves to only accepting input qubits that are and , then if the first two bits are in the state it applies a PauliX (or NOT) on the third bit, else it does nothing. It is an example of a controlled gate. Since it is the quantum analog of a classical gate, it is completely specified by its truth table. The Toffoli gate is universal when combined with the single qubit Hadamard gate.^{[2]}
Truth table  Matrix form  



It can be also described as the gate which maps to .
The Fredkin gate (also CSWAP or cS gate) is a 3bit gate that performs a controlled swap. It is universal for classical computation. It has the useful property that the numbers of 0s and 1s are conserved throughout, which in the billiard ball model means the same number of balls are output as input.
Truth table  Matrix form  



The Ising gate (or XX gate) is a 2qubit gate that is implemented natively in some trappedion quantum computers.^{[3]}^{[4]} It is defined as
Deutsch (or ) gate is a threequbit gate. It is defined as
Unfortunately, a working Deutsch gate has remained out of reach, due to lack of a protocol. However, a method was proposed to realize such a Deutsch gate with dipoledipole interaction in neutral atoms.
Informally, a set of universal quantum gates is any set of gates to which any operation possible on a quantum computer can be reduced, that is, any other unitary operation can be expressed as a finite sequence of gates from the set. Technically, this is impossible since the number of possible quantum gates is uncountable, whereas the number of finite sequences from a finite set is countable. To solve this problem, we only require that any quantum operation can be approximated by a sequence of gates from this finite set. Moreover, for unitaries on a constant number of qubits, the SolovayKitaev theorem guarantees that this can be done efficiently.
One simple set of twoqubit universal quantum gates is the Hadamard gate , the gate , and the controlledNOT gate .^{[5]}
A singlegate set of universal quantum gates can also be formulated using the threequbit Deutsch gate , which performs the transformation^{[6]}
The universal classical logic gate, the Toffoli gate, is reducible to the Deutsch gate, , thus showing that all classical logic operations can be performed on a universal quantum computer.
Another set of universal quantum gates consists of the Ising gate and the phaseshift gate. These are the set of gates natively available in some trappedion quantum computers.^{[4]}
Measurement is irreversible and therefore not a quantum gate, because it assigns the observed variable to a singular value. Measurement takes a quantum state and projects it to one of the base vectors, with a likelihood equal to the square of the vectors depth along that base vector. This is a nonreversible operation as it sets the quantum state equal to the base vector that represents the measured state (the state "collapses" to a definite singular value). Why and how this is so is called the measurement problem.
If two different quantum registers are entangled (they cannot be expressed as a tensor product), measurement of one register affects or reveals the state of the other register by partially or entirely collapsing its state too. An example of such a linearly inseparable state is the EPR pair, which can be constructed with the CNOT and the Hadamard gates (described above). This effect is used in many algorithms: if two variables A and B are maximally entangled (the bell state is the simplest example of this), a function F is applied to A such that A is updated to the value of F(A), followed by measurement of A, then B will, when measured, be a value such that F(B) = A^{[]}. This way, measurement of one register can be used to assign properties to some other registers^{[]}. This type of valueassignment in theory occurs instantaneously over any distance and this has as of 2018 been experimentally verified for distances of up to 1200 kilometers^{[7]}^{[8]}. That the phenomena appears to violate the speed of light is called the EPR paradox and it is an open question in physics how to resolve this. Originally it was solved by giving up the assumption of local realism, but other interpretations have also emerged. For more information see the Bell test experiments.
If two or more qubits are viewed as a single quantum state, this combined state is equal to the tensor product of the constituent qubits. An entangled state is any state that cannot be tensorfactorized (the state cannot be separated into its constituent qubits). The CNOT, Ising and Toffoli gates are examples of gates that act on states constructed of multiple qubits.
The tensor product of two nqubit quantum gates generates the gate that is equal to the two gates in parallel. This gate will act on qubits. For example, the gate is the hadamard gate () applied in parallel on 2 qubits. It can be written as
This "twoqubit parallel hadamard gate" will when applied to, for example, the twoqubit zerovector () create a quantum state that have equal probability of being observed in any of its four possible outcomes; 00, 01, 10 and 11. We can write this operation as:
Here the amplitude is and the probability is equal to the amplitude squared. The probability to observe any state is the absolute value of the amplitude squared, which in the above example means that there is one in four that we observe any one of the individual four cases. (Strictly speaking, the probability is equal to the amplitude modulus squared, and therefore must be real and nonnegative. For amplitude , the probability is its modulus squared .)
If we have a set of N qubits that are entangled (their combined state can not be tensorfactorized into an expression of the individual qubits) and wish to apply a quantum gate on M < N qubits in the set, we will have to extend the gate to take N qubits. This can be done by combining the gate with an identity matrix such that their tensor product becomes a gate that act on N qubits. The identity matrix () is a representation of the gate that maps every state to itself (i.e., does nothing at all). In a circuit diagram the identity gate or matrix will appear as just a wire.
For example, the hadamard transform () acts on a single qubit, but if we for example feed it the second of the two qubits that constitute the entangled Bell state , we cannot write that operation easily. We need to extend the hadamard transform with the donothing gate so that we can act on quantum states that span two qubits:
The gate can now be applied to any twoqubit state, entangled or otherwise. The Mgate will leave the second qubit untouched and apply the Hadamard transform to the first qubit. If applied to the Bell state in our example, we may write that as:
Because the number of elements in the matrices is , where x is the number of qubits the gates act on, it is intractable to simulate large quantum systems using classical computers.
The current notation for quantum gates was developed by Barenco et al.,^{[9]} building on notation introduced by Feynman.^{[10]}