In
quantum computing
Quantum computing is a type of computation whose operations can harness the phenomena of quantum mechanics, such as superposition, interference, and entanglement. Devices that perform quantum computations are known as quantum computers. Though ...
and specifically the
quantum circuit
In quantum information theory, a quantum circuit is a model for quantum computation, similar to classical circuits, in which a computation is a sequence of quantum gates, measurements, initializations of qubits to known values, and possibly othe ...
model of computation
In computer science, and more specifically in computability theory and computational complexity theory, a model of computation is a model which describes how an output of a mathematical function is computed given an input. A model describes how ...
, a quantum logic gate (or simply quantum gate) is a basic quantum circuit operating on a small number of
qubit
In quantum computing, a qubit () or quantum bit is a basic unit of quantum information—the quantum version of the classic binary bit physically realized with a two-state device. A qubit is a two-state (or two-level) quantum-mechanical system, ...
s. They are the building blocks of quantum circuits, like classical
logic gate
A logic gate is an idealized or physical device implementing a Boolean function, a logical operation performed on one or more binary inputs that produces a single binary output. Depending on the context, the term may refer to an ideal logic gate, ...
s 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
In logic circuits, the Toffoli gate (also CCNOT gate), invented by Tommaso Toffoli, is a universal reversible logic gate, which means that any classical reversible circuit can be constructed from Toffoli gates. It is also known as the "controlle ...
can implement all Boolean functions, often at the cost of having to use
ancilla bit
Ancilla bits are some extra bits being used to achieve some specific goals in computation (e.g. reversible computation). In classical computation, any memory bit can be turned on or off at will, requiring no prior knowledge or extra complexity. ...
s. 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
In functional analysis
Functional analysis is a branch of mathematical analysis, the core of which is formed by the study of vector spaces endowed with some kind of limit-related structure (e.g. inner product, norm, topology, etc.) and ...
, and are described as
unitary matrices
In linear algebra, a complex square matrix is unitary if its conjugate transpose is also its inverse, that is, if
U^* U = UU^* = UU^ = I,
where is the identity matrix.
In physics, especially in quantum mechanics, the conjugate transpose ...
relative to some
basis
Basis may refer to:
Finance and accounting
* Adjusted basis, the net cost of an asset after adjusting for various tax-related items
*Basis point, 0.01%, often used in the context of interest rates
* Basis trading, a trading strategy consisting ...
. 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
In quantum computing, a qubit () or quantum bit is a basic unit of quantum information—the quantum version of the classic binary bit physically realized with a two-state device. A qubit is a two-state (or two-level) quantum-mechanical system, ...
, a
quantum register In quantum computing, a quantum register is a system comprising multiple qubits. It is the quantum analogue of the classical processor register. Quantum computers perform calculations by manipulating qubits within a quantum register.
Definition ...
, or
qutrit
A qutrit (or quantum trit) is a unit of quantum information that is realized by a 3-level quantum system, that may be in a superposition of three mutually orthogonal quantum states.
The qutrit is analogous to the classical radix-3 trit, just as ...
s and
qudit
In quantum computing, a qubit () or quantum bit is a basic unit of quantum information—the quantum version of the classic binary bit physically realized with a two-state device. A qubit is a two-state (or two-level) quantum-mechanical system, ...
s) we have labeled the orthogonal basis vectors or use
binary notation
A binary number is a number expressed in the base-2 numeral system or binary numeral system, a method of mathematical expression which uses only two symbols: typically "0" (zero) and "1" (one).
The base-2 numeral system is a positional 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
Richard Erwin Cleve is a Canadian professor of computer science at the David R. Cheriton School of Computer Science at the University of Waterloo, where he holds the Institute for Quantum Computing Chair in quantum computing, and an associate me ...
,
David P. DiVincenzo,
Norman Margolus
Norman H. Margolus (born 1955) is a Canadian-American physicist and computer scientist, known for his work on cellular automata and reversible computing.. He is a research affiliate with the Computer Science and Artificial Intelligence Laborator ...
,
Peter Shor
Peter Williston Shor (born August 14, 1959) is an American professor of applied mathematics at MIT. He is known for his work on quantum computation, in particular for devising Shor's algorithm, a quantum algorithm for factoring exponentially fa ...
, Tycho Sleator,
John A. Smolin, and Harald Weinfurter,
building on notation introduced by
Richard Feynman
Richard Phillips Feynman (; May 11, 1918 – February 15, 1988) was an American theoretical physicist, known for his work in the path integral formulation of quantum mechanics, the theory of quantum electrodynamics, the physics of the superflu ...
in 1986.
Representation
Quantum logic gates are represented by
unitary matrices
In linear algebra, a complex square matrix is unitary if its conjugate transpose is also its inverse, that is, if
U^* U = UU^* = UU^ = I,
where is the identity matrix.
In physics, especially in quantum mechanics, the conjugate transpose ...
. A gate which acts on
qubit
In quantum computing, a qubit () or quantum bit is a basic unit of quantum information—the quantum version of the classic binary bit physically realized with a two-state device. A qubit is a two-state (or two-level) quantum-mechanical system, ...
s is represented by a
unitary matrix, and the
set
Set, The Set, SET or SETS may refer to:
Science, technology, and mathematics Mathematics
*Set (mathematics), a collection of elements
*Category of sets, the category whose objects and morphisms are sets and total functions, respectively
Electro ...
of all such gates with the group operation of
matrix multiplication
In mathematics, particularly in linear algebra, matrix multiplication is a binary operation that produces a matrix from two matrices. For matrix multiplication, the number of columns in the first matrix must be equal to the number of rows in the s ...
is the
symmetry group
In group theory, the symmetry group of a geometric object is the group of all transformations under which the object is invariant, endowed with the group operation of composition. Such a transformation is an invertible mapping of the ambient ...
U(2''n'').
The
quantum state
In quantum physics, a quantum state is a mathematical entity that provides a probability distribution for the outcomes of each possible measurement on a system. Knowledge of the quantum state together with the rules for the system's evolution in ...
s that the gates act upon are
unit vector
In mathematics, a unit vector in a normed vector space is a vector (often a spatial vector) of length 1. A unit vector is often denoted by a lowercase letter with a circumflex, or "hat", as in \hat (pronounced "v-hat").
The term ''direction vecto ...
s in
complex
Complex commonly refers to:
* Complexity, the behaviour of a system whose components interact in multiple ways so possible interactions are difficult to describe
** Complex system, a system composed of many components which may interact with each ...
dimensions, with the
complex Euclidean norm (the
2-norm). The
basis vectors
In mathematics, a set of vectors in a vector space is called a basis if every element of may be written in a unique way as a finite linear combination of elements of . The coefficients of this linear combination are referred to as componen ...
(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 space
In mathematics and physics, a vector space (also called a linear space) is a set whose elements, often called ''vectors'', may be added together and multiplied ("scaled") by numbers called '' scalars''. Scalars are often real numbers, but can ...
s of one or two qubits, just like the common
classical logic gates operate on one or two
bit
The bit is the most basic unit of information in computing and digital communications. The name is a portmanteau of binary digit. The bit represents a logical state with one of two possible values. These values are most commonly represente ...
s.
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
In information theory and coding theory with applications in computer science and telecommunication, error detection and correction (EDAC) or error control are techniques that enable reliable delivery of digital data over unreliable communica ...
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 represented by "kets", from a notation known as
bra-ket.
The vector representation of a single
qubit
In quantum computing, a qubit () or quantum bit is a basic unit of quantum information—the quantum version of the classic binary bit physically realized with a two-state device. A qubit is a two-state (or two-level) quantum-mechanical system, ...
is
:
Here,
and
are the complex
probability amplitude
In quantum mechanics, a probability amplitude is a complex number used for describing the behaviour of systems. The modulus squared of this quantity represents a probability density.
Probability amplitudes provide a relationship between the quan ...
s of the qubit. These values determine the probability of measuring a 0 or a 1, when measuring the state of the qubit. See
measurement
Measurement is the quantification of attributes of an object or event, which can be used to compare with other objects or events.
In other words, measurement is a process of determining how large or small a physical quantity is as compared ...
below for details.
The value zero is represented by the ket and the value one is represented by the ket
The
tensor product
In mathematics, the tensor product V \otimes W of two vector spaces and (over the same field) is a vector space to which is associated a bilinear map V\times W \to V\otimes W that maps a pair (v,w),\ v\in V, w\in W to an element of V \otimes W ...
(or
Kronecker product
In mathematics, the Kronecker product, sometimes denoted by ⊗, is an operation on two matrices of arbitrary size resulting in a block matrix. It is a generalization of the outer product (which is denoted by the same symbol) from vectors ...
) is used to combine quantum states. The combined state for a
qubit register is the tensor product of the constituent qubits. The tensor product is denoted by the symbol
The vector representation of two qubits is:
:
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. The result is a new quantum state
:
Notable examples
There exists an
uncountably infinite
In mathematics, an uncountable set (or uncountably infinite set) is an infinite set that contains too many elements to be countable. The uncountability of a set is closely related to its cardinal number: a set is uncountable if its cardinal num ...
number of gates. Some of them have been named by various authors,
and below follow some of those most often used in the literature.
Identity gate
The identity gate is the
identity matrix
In linear algebra, the identity matrix of size n is the n\times n square matrix with ones on the main diagonal and zeros elsewhere.
Terminology and notation
The identity matrix is often denoted by I_n, or simply by I if the size is immaterial o ...
, usually written as ''I'', and is defined for a single qubit as
:
where ''I'' is basis independent and does not modify the quantum state. The identity gate is most useful when describing mathematically the result of various gate operations or when discussing multi-qubit circuits.
Pauli gates (''X'',''Y'',''Z'')
The Pauli gates
are the three
Pauli matrices
In mathematical physics and mathematics, the Pauli matrices are a set of three complex matrices which are Hermitian, involutory and unitary. Usually indicated by the Greek letter sigma (), they are occasionally denoted by tau () when used in ...
and act on a single qubit. The Pauli ''X'', ''Y'' and ''Z'' equate, respectively, to a rotation around the ''x'', ''y'' and ''z'' axes of the
Bloch sphere
In quantum quantum mechanics, mechanics and Quantum computing, computing, the Bloch sphere is a geometrical representation of the pure state space of a two-level system, two-level quantum mechanical system (qubit), named after the physicist Felix ...
by
radians.
The Pauli-''X'' gate is the quantum equivalent of the
NOT gate for classical computers with respect to the standard basis which distinguishes the ''z'' axis on the
Bloch sphere
In quantum quantum mechanics, mechanics and Quantum computing, computing, the Bloch sphere is a geometrical representation of the pure state space of a two-level system, two-level quantum mechanical system (qubit), named after the physicist Felix ...
. It is sometimes called a bit-flip as it maps
to
and
to
. Similarly, the Pauli-''Y'' maps
to
and
to . Pauli ''Z'' leaves the basis state
unchanged and maps
to Due to this nature, Pauli ''Z'' is sometimes called phase-flip.
These matrices are usually represented as
:
:
:
The Pauli matrices are
involutory, meaning that the square of a Pauli matrix is the
identity matrix
In linear algebra, the identity matrix of size n is the n\times n square matrix with ones on the main diagonal and zeros elsewhere.
Terminology and notation
The identity matrix is often denoted by I_n, or simply by I if the size is immaterial o ...
.
:
The Pauli matrices also
anti-commute, for example
The
matrix exponential
In mathematics, the matrix exponential is a matrix function on square matrices analogous to the ordinary exponential function. It is used to solve systems of linear differential equations. In the theory of Lie groups, the matrix exponential gives ...
of a Pauli matrix
is a
rotation operator, often written as
Controlled gates
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
In computer science, the controlled NOT gate (also C-NOT or CNOT), controlled-''X'' gate'','' controlled-bit-flip gate, Feynman gate or controlled Pauli-X is a quantum logic gate that is an essential component in the construction of a gate-bas ...
(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
Hermitian {{Short description, none
Numerous things are named after the French mathematician Charles Hermite (1822–1901):
Hermite
* Cubic Hermite spline, a type of third-degree spline
* Gauss–Hermite quadrature, an extension of Gaussian quadrature m ...
unitary
Unitary may refer to:
Mathematics
* Unitary divisor
* Unitary element
* Unitary group
* Unitary matrix
* Unitary morphism
* Unitary operator
* Unitary transformation
* Unitary representation
* Unitarity (physics)
* ''E''-unitary inverse semigrou ...
matrix:
:
The CNOT (or controlled Pauli-''X'') gate can be described as the gate that maps the basis states
, where
is
XOR
Exclusive or or exclusive disjunction is a logical operation that is true if and only if its arguments differ (one is true, the other is false).
It is symbolized by the prefix operator J and by the infix operators XOR ( or ), EOR, EXOR, , ...
.
The CNOT can be expressed in the
Pauli basis as:
:
Being a Hermitian unitary operator, CNOT
has the property and
, and is
involutory.
More generally if ''U'' is a gate that operates on a single qubit with matrix representation
:
then the ''controlled-U 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 operators, ''X'',''Y'', ''Z'', the respective terms "controlled-''X''", "controlled-''Y''", or "controlled-''Z''" are sometimes used. Sometimes this is shortened to just C''X'', C''Y'' and C''Z''.
In general, any single qubit
unitary gate can be expressed as
, where ''H'' is a
Hermitian matrix
In mathematics, a Hermitian matrix (or self-adjoint matrix) is a complex square matrix that is equal to its own conjugate transpose—that is, the element in the -th row and -th column is equal to the complex conjugate of the element in the -th ...
, and then the controlled ''U'' is
Control can be extended to gates with arbitrary number of qubits
and functions in programming languages.
Functions can be conditioned on superposition states.
Classical control
Gates can also be controlled by classical logic. A quantum computer is controlled by a
classical computer, and behave like a
coprocessor
A coprocessor is a computer processor used to supplement the functions of the primary processor (the CPU). Operations performed by the coprocessor may be floating-point arithmetic, graphics, signal processing, string processing, cryptography o ...
that receives instructions from the classical computer about what gates to execute on which qubits.
Classical control is simply the inclusion, or omission, of gates in the instruction sequence for the quantum computer.
Phase shift gates
The phase shift is a family of single-qubit gates that map the basis states
and
. 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), or a rotation along the z-axis on the
Bloch sphere
In quantum quantum mechanics, mechanics and Quantum computing, computing, the Bloch sphere is a geometrical representation of the pure state space of a two-level system, two-level quantum mechanical system (qubit), named after the physicist Felix ...
by
radians. The phase shift gate is represented by the matrix:
:
where
is the ''phase shift'' with the
period
Period may refer to:
Common uses
* Era, a length or span of time
* Full stop (or period), a punctuation mark
Arts, entertainment, and media
* Period (music), a concept in musical composition
* Periodic sentence (or rhetorical period), a concept ...
. Some common examples are the ''T'' gate where
(historically known as the
gate), the phase gate (also known as the S gate, written as ''S'', though ''S'' is sometimes used for SWAP gates) where
and the
Pauli-''Z'' gate where
.
The phase shift gates are related to each other as follows:
:
:
: