量子算法的预备知识
量子计算的物理基础#
量子本质上可以通过量子化进行得到,当我们对一个宏观物体进行无限细分后,直到不得不靠“几个原子”这种单位去描述物体的长度时,量子效应就出场了。薛定谔方程告诉人们,一定会遇到不可分割的最小单位,这种最小单位,统称为量子;这种现象,被称为量子化。
量子化的属性有很多种,但在此优先考虑一种——能量。经过长期探索得知,原子的光谱只会有几个峰值,而不是连续的谱线,这代表了原子内电子的能量只会出现几种情况,电子不可能具有几种情况之外的中间值,这就是能量的量子化。每一种能量,被称之为一个“能级”。
以一栋楼为例,在微观的世界里面,一栋楼的楼梯被拆掉了,这使得微观粒子要么在一楼,要么在二楼,仅存在于整数的楼层,但是,这不代表微观粒子就失去了上下楼的机会,这就是量子的第二个特性——跃迁。
当一个原子中的电子获得了来自原子外的能量时,它就有可能克服能级之间能量的差距,跳跃到另外一个态上面,并且这个电子也可以将自己的能量释放出来,跳跃到能量较低的能级上面。当然,能级本身是稳定的,不管怎么跃迁,电子的能量都只能处在这几个能级上,这是原则(能级的个数与原子序数相关)。
Example
例如高中化学中所学到的,在孤立的原子中,电子占据的原子轨道(如 s、p、d 轨道)具有特定的形状和能量,在发生化学反应形成化合物的过程中(即形成杂化轨道的过程中),会进行以下步骤:
- 在形成分子之前,原子中的一个或多个电子可能被激发到更高的能级,以便有更多的未成对电子参与成键。例如,碳原子在基态下有 2 个未成对的电子(
),但在激发态下,一个 2s 电子可以被激发到 2p 轨道,形成 4 个未成对的电子( )。
量子叠加#
如果仅仅是把能级建成大楼,然后把大楼的楼梯、电梯全拆掉(并且不追问原因)这件事情倒也不难理解,然而剩余部分,就无法用普通的现实去想象了。
量子叠加性是量子的第三个特性,这个性质来源于一个非常出名的思想实验:薛定谔的猫,这个故事非常简单:
经过一小时以后,假若没有发生衰变事件,则猫仍旧存活;否则发生衰变,这套机构被触发,氰化氢挥发,导致猫随即死亡。用以描述整个事件的波函数竟然表达出了活猫与死猫各半纠合在一起的状态。显然这是反直觉的,但这种半死半活的叠加态在量子力学中确实存在。那么,作为宏观世界的我们,到底如何来判断猫是死了还是活着呢?
测量与坍塌#
薛定谔宣称,不打开盒子,猫就处于生和死的“叠加态”,又称:“当我们打开盒子,经过了我们的观察,猫就会坍塌到一个确定的生或着死的唯一的状态上”。
这里提出量子的第四个特性:“测量和坍塌假设”。测量和坍塌对量子态的影响仍然是一个争议话题,所以用了“假设”。这个特性的描述如下:
我们对上面这部分内容只做了解即可,明白量子具有的几大性质,尤其是叠加与坍塌,一旦测量,量子会立刻坍缩到某一个状态上,而不再处于状态的叠加
量子计算的数学基础#
态矢 (State Vector)#
量子态可用线性代数中的向量来描述,在量子理论中,描述量子态的向量称为态矢,态矢分为左矢(bra)和右矢(ket),我们用狄拉克符号来表示:
\begin{aligned}
\ket{\psi} &= [c_1, c_2, \dots, c_n]^T \\
\bra{\psi} &= [c_1^*, c_2^*, \dots, c_n^*]
\end{aligned}
其中,矢态中的分量均为复数,且相同描述的左右矢,其互为转置共轭
考虑
\begin{aligned}
\braket{\alpha | \beta} &= \sum^n_{i=1}a_i^*b_i \\
\ket{\alpha}\bra{\beta} &= [a_ib_j^*]_{n\times n}
\end{aligned}
两能级系统#
经典比特的取值为 1 或 0,由二极管的通电断电实现,量子比特的取值是二维复空间
\begin{aligned}
\ket{e} = \ket{1} &= [1, 0] \\
\ket{g} = \ket{0} &= [0, 1]
\end{aligned}
这样,任意一个量子比特
\ket{\psi} = \alpha \ket{0} + \beta \ket{1}
其中
显然,上面这个表达式我们可以知道,
几何表示#
量子态
Important
这里的推导过程较为简单,考虑
\ket{\psi} = e^{i\delta} (\cos \theta \ket{0} + \sin \theta e^{i\phi}\ket{1})其中
| 狄拉克符号 | 坐标轴方向 | ( | 量子态 | |
|---|---|---|---|---|
| (0, 0, 1) | (0, 0) | |||
| (0, 0, -1) | ( | |||
| (1, 0, 0) | ( | |||
| (-1, 0, 0) | ( | |||
| (0, 1, 0) | ( | |||
| (0, -1, 0) | ( |
可以发现,一个球面上的点
测量#
可观测量是一个物理量,可以简单理解为一个厄密算子
- 对
做谱分解 ,得到正交基 - 对
做正交分解 ,于是 为这 个状态的叠加态
我们测量本质上是对可观测量进行测量,每次测量有以下规则:
算子
我们记
状态的演化#
我们如何通过一个量子态来得到另一个量子态,换句话说,量子态之间是如何演化的?
这里,对于一个封闭的量子系统,其演化过程我们使用酉变换来描述,具体而言,在
\ket{\psi_2} = U\ket{\psi_1}
其中,酉变换
在量子计算中,各种形式的酉变换被称为量子门,例如最经典的泡利 X 门:
\sigma_1 \equiv \sigma_x \equiv X \equiv \begin{bmatrix}
0 & 1 \\
1 & 0
\end{bmatrix}
其作用在量子态上与经典比特门中的非门效果一致:
X\ket{\psi} = \begin{bmatrix}
0 & 1\\
1 & 0
\end{bmatrix}
\begin{bmatrix}
\alpha \\
\beta
\end{bmatrix}
= \begin{bmatrix}
\beta \\
\alpha
\end{bmatrix}
于是,
多量子比特#
上文中,我们只集中在单量子比特,对于存在两个及以上的量子比特系统,我们将其称为复合系统,我们首先介绍什么是张量积。
张量积是两个向量空间形成一个更大向量空间的运算。在量子力学中,量子的状态由希尔伯特空间中的单位向量来描述。
假设
\begin{bmatrix}
1 & 2 & 3 \\
4 & 5 & 6
\end{bmatrix}
\otimes
\begin{bmatrix}
b_{11} & b_{12} \\
b_{21} & b_{22}
\end{bmatrix}
= \begin{bmatrix}
b_{11} & b_{12} &|& 2b_{11} & 2b_{12} &|& 3b_{11} & 3b_{12} \\
b_{21} & b_{22} &|& 2b_{21} & 2b_{22} &|& 3b_{21} & 3b_{22} \\
\hline
4b_{11} & 4b_{12} &|& 5b_{11} & 5b_{12} &|& 6b_{11} & 6b_{12} \\
4b_{21} & 4b_{22} &|& 5b_{21} & 5b_{22} &|& 6b_{21} & 6b_{22} \\
\end{bmatrix}
对于上文中的狄拉克符号(纯态单量子),我们将其表示为:
\ket{\psi} \otimes \ket{\varphi} = \ket{\psi\varphi} = \begin{bmatrix}
\alpha_1\beta_1 \\
\alpha_1\beta_2 \\
\alpha_2\beta_1 \\
\alpha_2\beta_2
\end{bmatrix}
量子计算原理#
经典计算中,最基本的单元是比特,而最基本的控制模式是逻辑门,可以通过逻辑门的组合来达到控制电路的目的。类似地,处理量子比特的方式就是量子逻辑门,使用量子逻辑门,有意识的使量子态发生演化,所以量子逻辑门是构成量子算法的基础。
由#状态的演化 中提到的,本质上我们需要求得的就是将酉变换的算子
Problem-inspired ansatz#
举一个简单的例子,我们假定,问题的哈密顿量为
\mathcal{C}(\theta) = \braket{H} = \bra{\psi(\theta)}H\ket{\psi(\theta)}, \ket{\psi(\theta)} = U(\theta)\ket{\psi_0}
其中,

讨论
想法、补充,或只是打个招呼。