Академический Документы
Профессиональный Документы
Культура Документы
Arbitrary quantum gates acting on any number of qubits can be constructed (approximated to
arbitrary precision) from a small number of one-and two-bit gates.
Single-qubit gates
Decomposition into products of rotations about a small number of different axes is possible, at
least approximately. Precision depends on the number of factors in the product,
The 8 gate:
exp i 8
1 0 0
T= = exp i = exp i exp i Z
0 exp i 4 8 0 exp i 8 8 8
1 0
S = T2 = , S2 = Z
0 i
The NOT and NOT gates:
cos i sin
exp (iX) = 1 cos + iX sin =
i sin cos
NOT for = 2; NOT for = 4 .
The Hadamard gate (Jacques Salomon Hadamard, 1865-1963)
1 1 1 1
H = (X + Z) = .
2 2 1 1
1 1
H| i = (| i + | i); H| i = (| i | i)
2 2
The CNOT gate (controlled not) flips the target qubit when the control qubit is 1.
As a truth table: In matrix notation with respect to the usual
computational basis (|00i, |01i, |10i, |11i):
control-qubit target-qubit result
0 0 00
1 0 0 0
0 1 01
0 1 0 0
1 0
1 0 11 CNOT = =
0 0 0 1 0 X
1 1 10 0 0 1 0
0 1
Note that X = is the single-qubit NOT gate.
1 0
The CNOT gate and the single-qubit gates discussed above suffice to perform any unitary
operation on a finite number of qubits.
Universal set of gates
1. Two-level gates are universal. Any d d unitary matrix U can be written (exactly) as a
product of d(d1)
2 two level unitary matrices (affecting only two vector components).
2. CNOT and single-qubit gates are universal. Any two-level matrix can be expressed (exactly)
by these building blocks.
1
3. Single-qubit gates can be approximated using H 2 and 8 gates.
exp i 4
1 21
H = 2
(1 iH) = H
2
Be careful: 1
1 1 1 2
H=H H = H
2
and so 1
21 1 1 1
H 6= H 2 since H 2 H 2 = H.
The true inverse is obtained from 1
12
2
H+H =1
Step 2 of the proof: constructing two-level gates
Rearrange the computational basis such that the two levels of interest are the basis states of
one qubit, apply arbitrary single-qubit operation, rearrange the basis back to original order.
Step 2 of the proof: constructing two-level gates
Rearrange the computational basis such that the two levels of interest are the basis states of
one qubit, apply arbitrary single-qubit operation, rearrange the basis back to original order.
Example: How to achieve operation U between basis vectors |ABCi = |000i and |111i: