量子计算中的单比特和双比特门
立即解锁
发布时间: 2025-08-27 02:14:40 阅读量: 2 订阅数: 11 

### 量子计算中的单比特和双比特门
#### 1. 单比特门
在量子计算里,单比特门是基础操作,能对单个量子比特进行变换。下面我们来深入探究几种重要的单比特门。
##### 1.1 哈达玛门(Hadamard Gate)
哈达玛门是众多量子算法中常用的基本门之一。它的定义为:
\[
|0\rangle \to \frac{|0\rangle + |1\rangle}{\sqrt{2}}
\]
\[
|1\rangle \to \frac{|0\rangle - |1\rangle}{\sqrt{2}}
\]
这意味着哈达玛门能构建两个逻辑基态的线性叠加态。在逻辑基下,它由 2×2 的哈达玛矩阵表示:
\[
\hat{H} = \frac{1}{\sqrt{2}}
\begin{bmatrix}
1 & 1 \\
1 & -1
\end{bmatrix}
\]
在量子电路模型中,哈达玛门用标记为 “H” 的元素表示。
从几何角度看,哈达玛门相当于在布洛赫球上绕轴 (1, 0, 1) 旋转角度 $\pi$(最多有一个全局相位因子),即:
\[
\hat{H} = \frac{1}{\sqrt{2}}(\hat{X} + \hat{Z}) = i \exp\left(-i \frac{\pi}{2} (\hat{X} + \hat{Z})\right)
\]
哈达玛门的一个显著特性是,它能对逻辑基中的所有状态进行线性叠加。对于由 $n$ 个量子比特组成的量子寄存器,当对处于 $|0\rangle$ 态的每个量子比特应用哈达玛门时,会生成逻辑基中所有状态的线性叠加:
\[
\hat{H}^{\otimes n} |0\rangle^{\otimes n} = \frac{|0\rangle + |1\rangle}{\sqrt{2}} \otimes \cdots \otimes \frac{|0\rangle + |1\rangle}{\sqrt{2}} = \frac{1}{2^{n/2}} \sum_{x = 0}^{2^n - 1} |x\rangle
\]
更一般地,对于逻辑基中的任意态 $|y\rangle$,有:
\[
\hat{H}^{\otimes n} |y\rangle = \frac{1}{2^{n/2}} \sum_{x = 0}^{2^n - 1} |x\rangle (-1)^{x \cdot y}
\]
其中 $x \cdot y := x_1 y_1 + \cdots + x_n y_n \pmod{2}$。
下面通过代码示例展示哈达玛门的操作:
```
In[ ]:= op = HoldForm@Multiply[S[1, 6], S[2, 6], S[3, 6]]
Out[ ]= S1H S2H S3H
In[ ]:= qc = QuantumCircuit[S[{1, 2, 3}, 6], Null]
Out[ ]=
H
H
H
In[ ]:= out = ReleaseHold[op] ** Ket[];
out // LogicalForm
Out[ ]=
0S10S20S3 / 2 + 0S10S21S3 / 2 + 0S11S20S3 / 2 + 0S11S21S3 / 2 +
1S10S20S3 / 2 + 1S10S21S3 / 2 + 1S11S20S3 / 2 + 1S11S21S3 / 2
```
##### 1.2 旋转门
任何幺正算符 $\hat{U}$ 都可以写成 $\hat{U} = \exp(-i \hat{H})$ 的形式,其中 $\hat{H}$ 是厄米算符。在与量子比特相关的二维向量空间 $S$ 中,任何厄米算符 $\hat{H}$ 都可以用泡利算符 $\hat{S}_{\mu}$ 展开:
\[
\hat{H} = \varphi_0 + \hat{S}_x B_x + \hat{S}_y B_y + \hat{S}_z B_z
\]
其中 $\varphi_0, B_x, B_y, B_z$ 是实参数。将 $\mathbf{B} := (B_x, B_y, B_z)$ 视为三维向量,考虑与 $\mathbf{B}$ 同向的单位向量 $\mathbf{n}$ 以及另一个实参数 $\varphi := 2|\mathbf{B}|$,则 $\hat{H}$ 可表示为:
\[
\hat{H} = \varphi_0 + \hat{\mathbf{S}} \cdot \mathbf{n} \frac{\varphi}{2}
\]
其中 $\hat{\mathbf{S}} := (\hat{S}_x, \hat{S}_y, \hat{S}_z)$。因此,$S$ 上的任何幺正算符都具有 $\hat{U} = e^{-i\varphi_0} \hat{U}_{\mathbf{n}}(\varphi)$ 的形式,其中:
\[
\hat{U}_{\mathbf{n}}(\varphi) := \exp(-i \hat{\mathbf{S}} \cdot \mathbf{n} \frac{\varphi}{2})
\]
这里 $e^{-i\varphi_0}$ 改变全局相位因子,在物理上无关紧要,重要的是 $\hat{U}_{\mathbf{n}}(\varphi)$,它描述了在布洛赫球上绕轴 $\mathbf{n}$ 旋转角度 $\varphi$ 的操作。
在 $R^3$ 中,任何 3×3 旋转矩阵都可以分解为三个因子:
\[
R = R_z(\alpha) R_y(\beta) R_z(\gamma)
\]
其中 $\alpha, \beta, \gamma$ 是所谓的欧拉角,这种旋转组合称为欧拉旋转。同样,$S$ 上的任何幺正算符也可以写成:
\[
\hat{U} = e^{-i\varphi_0} \hat{U}_z(\alpha) \hat{U}_y(\beta) \hat{U}_z(\gamma)
\]
下面通过代码示例展示旋转门的相关操作:
```
In[ ]:= mat = {
{3 - I Sqrt[3], I - Sqrt[3]},
{I + Sqrt[3], 3 + I Sqrt[3]}
} / 4;
mat // MatrixForm
Out[ ]//MatrixForm=
(3 - Sqrt[3] I) / 4 (I - Sqrt[3]) / 4
(I + Sqrt[3]) / 4 (3 + Sqrt[3] I) / 4
In[ ]:= op = Elaborate@ExpressionFor[mat, S]
Out[ ]=
3 / 4 + Sx / 4 - Sqrt[3] Sy / 4 - Sqrt[3] Sz / 4
In[ ]:= Dagger[op] ** op
Out[ ]= 1
In[ ]:= angs = TheEulerAngles[mat]
Out[ ]= {Pi / 3, Pi / 3, 0}
In[ ]:= new = EulerRotation[angs, S] // Elaborate
op - new
Out[ ]=
3 / 4 + Sx / 4 - Sqrt[3] Sy / 4 - Sqrt[3] Sz / 4
Out[ ]= 0
```
##### 1.3 相位门
绕布洛赫空间中 $z$ 轴的旋转 $\hat{U}_z(\varphi)$ 会在两个逻辑基态 $|0\rangle$ 和 $|1\rangle$ 之间引入相对相位差 $\varphi$,这种旋转被称为(相对)相位门。两个常见的相位门是角度为 $2\pi/4$ 和 $2\pi/8$ 的 $\hat{Q}$ 和 $\hat{O}$ 门,分别称为象限相位门和八分之一相位门。在逻辑基下,它们由以下对角矩阵表示:
\[
\hat{Q} =
\begin{bmatrix}
1 & 0 \\
0 & i
\end{bmatrix}
\]
\[
\hat{O} =
\begin{bmatrix}
1 & 0 \\
0 & e^{i\pi/4}
\end{bmatrix}
\]
显然,$\hat{O}^2 = \hat{Q}$ 且 $\hat{Q}^2 = \hat{Z}$。
#### 2. 双比特门
接下来我们探讨作用于两个量子比特的量子逻辑门操作,这类操作由 4×4 幺正矩阵表示。任何双比特门操作都可以分解为受控幺正门,而受控幺正门又可以进一步分解为只包含 CNOT 门和单比特旋转门的因子,因此 CNOT 门对于任何双比特门来说是足够的。
##### 2.1 CNOT 门
CNOT 或受控非门是作用于两个量子比特的量子逻辑门,它将逻辑基态映射为:
\[
|c\rangle \otimes |t\rangle \to |c\rangle \otimes |c \oplus t\rangle
\]
其中 $c, t \in \{0, 1\}$,第一个量子比特通常称为控制比特,第二个量子比特称为目标比特。在逻辑基下,它的矩阵表示为:
\[
\text{CNOT} =
\begin{bmatrix}
1 & 0 & 0 & 0 \\
0 & 1 & 0 & 0 \\
0 & 0 & 0 & 1 \\
0 & 0 & 1 & 0
\end{bmatrix}
\]
用控制和目标比特上的泡利算符表示为:
\[
0
0
复制全文