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. 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 ancilla bits. The Toffoli gate has a direct quantum equivalent, showing that quantum circuits can perform all operations performed by classical circuits. Quantum gates are unitary operators, and are described as unitary matrices relative to some basis. Usually we use the computational basis, which unless we compare it with something, just means that for a d-level quantum system (such as a qubit, a quantum register, or qutrits and qudits) we have labeled the orthogonal basis vectors or use binary notation. History The current notation for quantum gates was developed by many of the founders of quantum information science including Adriano Barenco, Charles Bennett, Richard Cleve, David P. DiVincenzo, Norman Margolus, Peter Shor, Tycho Sleator, John A. Smolin, and Harald Weinfurter, building on notation introduced by Richard Feynman in 1986. Representation Quantum logic gates are represented by unitary matrices. A gate which acts on qubits is represented by a unitary matrix, and the set of all such gates with the group operation of matrix multiplication is the symmetry group U(2n). The quantum states that the gates act upon are unit vectors in complex dimensions, with the complex Euclidean norm (the 2-norm). The basis vectors (sometimes called eigenstates) are the possible outcomes if measured, and a quantum state is a linear combination of these outcomes. The most common quantum gates operate on vector spaces of one or two qubits, just like the common classical logic gates operate on one or two bits. Even though the quantum logic gates belong to continuous symmetry groups, real hardware is inexact and thus limited in precision. The application of gates typically introduces errors, and the quantum states fidelities decreases over time. If error correction is used, the usable gates are further restricted to a finite set. Later in this article, this is sometimes ignored as the focus is on the quantum gates' mathematical properties. Quantum states are typically