--- title: "Quantum gate" firstLetter: "Q" publishDate: 2021-03-29 categories: - Quantum information date: 2021-03-29T21:37:57+02:00 draft: false markup: pandoc --- # Quantum gate In quantum computing, **quantum gates** are the equivalent of classical binary logic gates such as $\mathrm{NOT}$, $\mathrm{AND}$, etc. Because of the continuous nature of qubits, the number of possible quantum gates is uncountably infinite, so we only consider the most important examples here. ## One-qubit gates As an example, consider the following must general single-qubit state $\ket{\psi}$: $$\begin{aligned} \ket{\psi} = \alpha \ket{0} + \beta \ket{1} = \begin{bmatrix} \alpha \\ \beta \end{bmatrix} \end{aligned}$$ Arguably the most famous and/or most fundamental quantum gates are the **Pauli matrices**: $$\begin{aligned} \boxed{ X = \begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix} } \qquad \boxed{ Y = \begin{bmatrix} 0 & -i \\ i & 0 \end{bmatrix} } \qquad \boxed{ Z = \begin{bmatrix} 1 & 0 \\ 0 & -1 \end{bmatrix} } \end{aligned}$$ They have the following effect on $\ket{\psi}$. Note that $X$ is equivalent to the classical $\mathrm{NOT}$ gate (and is often given that name), and $Z$ is sometimes called the **phase-flip gate**: $$\begin{aligned} X \ket{\psi} = \begin{bmatrix} \beta \\ \alpha \end{bmatrix} \qquad Y \ket{\psi} = \begin{bmatrix} -i \beta \\ i \alpha \end{bmatrix} \qquad Z \ket{\psi} = \begin{bmatrix} \alpha \\ -\beta \end{bmatrix} \end{aligned}$$ In fact, $Z$ is a specific case of the **phase shift gate** $R_\phi$, which modifies the qubit's phase without changing its amplitudes. For an angle $\phi$, it is given by: $$\begin{aligned} \boxed{ R_\phi = \begin{bmatrix} 1 & 0 \\ 0 & e^{i \phi} \end{bmatrix} } \end{aligned}$$ For $\phi = \pi$, we recover the Pauli-$Z$ gate. In general, the action of $R_\phi$ is as follows: $$\begin{aligned} R_\phi \ket{\psi} = \begin{bmatrix} \alpha \\ e^{i \phi} \beta \end{bmatrix} \end{aligned}$$ Two common special cases of $R_\phi$ are $\phi = \pi/2$ and $\phi = \pi/4$, respectively called $S$ and $T$: $$\begin{aligned} \boxed{ S = R_{\pi/2} = \begin{bmatrix} 1 & 0 \\ 0 & i \end{bmatrix} } \qquad \quad \boxed{ T = R_{\pi/4} = \frac{1}{\sqrt{2}} \begin{bmatrix} \sqrt{2} & 0 \\ 0 & 1 + i \end{bmatrix} } \end{aligned}$$ Finally, we have the **Hadamard gate** $H$, which is defined as follows: $$\begin{aligned} \boxed{ H = \frac{1}{\sqrt{2}} \begin{bmatrix} 1 & 1 \\ 1 & -1 \end{bmatrix} } \end{aligned}$$ Its action consists of rotating the qubit by $\pi$ around the axis $(X + Z) / \sqrt{2}$ of the Bloch sphere: $$\begin{aligned} H \ket{\psi} = \frac{1}{\sqrt{2}} \begin{bmatrix} \alpha + \beta \\ \alpha - \beta \end{bmatrix} \end{aligned}$$ Notably, it maps the eigenstates of $X$ and $Z$ to each other, and is its own inverse (i.e. unitary): $$\begin{aligned} H \ket{0} = \ket{+} \qquad H \ket{1} = \ket{-} \qquad H \ket{+} = \ket{0} \qquad H \ket{-} = \ket{1} \end{aligned}$$ The **Clifford gates** are a set including $X$, $Y$, $Z$, $H$ and $S$, or more generally any gates that rotate by multiples of $\pi/2$ around the Bloch sphere. This set is **not universal**, meaning that if we start from $\ket{0}$, we can only reach $\ket{0}$, $\ket{1}$, $\ket{+}$, $\ket{-}$, $\ket{+i}$ $\ket{-i}$ using these gates. If we add *any* non-Clifford gate, for example $T$, then we can reach any point on the Bloch sphere, which means that the set is **universal**. However, there is a problem: a qubit has an uncountable infinity of states, but a quantum circuit consists of a countably infinite sequence of gates, at most. Therefore, technically, we can never reach the whole Bloch sphere, but we *can* come up with circuits that approximate a target state to some degree $\varepsilon$. This is the definition of universality: any state can be approximated. ## Two-qubit gates As an example, let us consider the following two pure one-qubit states $\ket{\psi_1}$ and $\ket{\psi_2}$: $$\begin{aligned} \ket{\psi_1} = \alpha_1 \ket{0} + \beta_1 \ket{1} = \begin{bmatrix} \alpha_1 \\ \beta_1 \end{bmatrix} \qquad \quad \ket{\psi_2} = \alpha_2 \ket{0} + \beta_2 \ket{1} = \begin{bmatrix} \alpha_2 \\ \beta_2 \end{bmatrix} \end{aligned}$$ The composite state of both qubits, assuming they are pure, is then their tensor product $\otimes$: $$\begin{aligned} \ket{\psi_1 \psi_2} = \ket{\psi_1} \otimes \ket{\psi_2} &= \alpha_1 \alpha_2 \ket{00} + \alpha_1 \beta_2 \ket{01} + \beta_1 \alpha_2 \ket{10} + \beta_1 \beta_2 \ket{11} \\ &= c_{00} \ket{00} + c_{01} \ket{01} + c_{10} \ket{10} + c_{11} \ket{11} \end{aligned}$$ Note that a two-qubit system may be [entangled](/know/concept/quantum-entanglement/), in which case the coefficients $c_{00}$ etc. cannot be written as products, i.e. $\ket{\psi_2}$ cannot be expressed separately from $\ket{\psi_1}$, and vice versa. In other words, the general action of a two-qubit quantum gate can be expressed in the basis of $\ket{00}$, $\ket{01}$, $\ket{10}$ and $\ket{11}$, but not always in the basis of $\ket{0}_1$, $\ket{1}_1$, $\ket{0}_2$ and $\ket{1}_2$. With that said, the first two-qubit gate is $\mathrm{SWAP}$, which simply swaps $\ket{\psi_1}$ and $\ket{\psi_2}$: $$\begin{aligned} \boxed{ \mathrm{SWAP} = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} } \end{aligned}$$ This matrix is given in the basis of $\ket{00}$, $\ket{01}$, $\ket{10}$ and $\ket{11}$. Note that $\mathrm{SWAP}$ cannot generate entanglement, so if its input is separable, its output is too. In any case, its effect is clear: $$\begin{aligned} \mathrm{SWAP} \ket{\psi_1 \psi_2} &= c_{00} \ket{00} + c_{10} \ket{01} + c_{01} \ket{10} + c_{11} \ket{11} \end{aligned}$$ Next, there is the **controlled NOT gate** $\mathrm{CNOT}$, which "flips" (applies $X$ to) $\ket{\psi_2}$ if $\ket{\psi_1}$ is true: $$\begin{aligned} \boxed{ \mathrm{CNOT} = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 1 & 0 \end{bmatrix} } \end{aligned}$$ That is, it swaps the last two coefficients $c_{10}$ and $c_{11}$ in the composite state vector: $$\begin{aligned} \mathrm{CNOT} \ket{\psi_1 \psi_2} &= c_{00} \ket{00} + c_{01} \ket{01} + c_{11} \ket{10} + c_{10} \ket{11} \end{aligned}$$ More generally, from every one-qubit gate $U$, we can define a two-qubit **controlled U gate** $\mathrm{CU}$, which applies $U$ to $\ket{\psi_2}$ if $\ket{\psi_1}$ is true: $$\begin{aligned} \boxed{ \mathrm{CU} = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & u_{00} & u_{01} \\ 0 & 0 & u_{10} & u_{11} \end{bmatrix} } \end{aligned}$$ Where the lower-right 2x2 block is simply $U$. The general action of this gate is given by: $$\begin{aligned} \mathrm{CU} \ket{\psi_1 \psi_2} &= c_{00} \ket{00} + c_{01} \ket{01} + (c_{10} u_{00} + c_{11} u_{01}) \ket{10} + (c_{10} u_{10} + c_{11} u_{11}) \ket{11} \end{aligned}$$ A set of gates is **universal** if all possible mappings from $n$ to $n$ qubits can be approximated using only these gates. A minimal universal set is $\{\mathrm{CNOT}, T, S\}$, and there exist many others. ## References 1. J.S. Neergaard-Nielsen, *Quantum information: lectures notes*, 2021, unpublished. 2. S. Aaronson, *Introduction to quantum information science: lecture notes*, 2018, unpublished.