表示
布洛赫球表面的任何一点表示一个量子比特的状态,换句话说,任何一个量子比特的状态 ∣ψ⟩ 都可以用三个参数 γ,θ,φ 来表示:
∣ψ⟩=eiγ(cos2θ∣0⟩+sin2θeiφ∣1⟩)
其中全局相位因子 eiγ 在实验中是不可观测的。
运算
基础
转置:∣ψ⟩,⟨ψ∣ 共轭转置。
内积:⟨ψ1∣ψ2⟩ 得到复数值。
∥∣ψ⟩∥=⟨ψ∣ψ⟩,如果 ∣ψ⟩ 是一个量子态,那么一定有 ⟨ψ∣ψ⟩=1.
外积:∣ψ1⟩⟨ψ2∣ 得到 m×n 的矩阵。
张量积:∣ψ1⟩⊗∣ψ2⟩ 得到 Cm×n 中的向量,相当于空间维度扩大,常缩写为 ∣ψ1ψ2⟩.
∣ψ1⟩⊗∣ψ2⟩=∣ψ1ψ2⟩=[c1c2]⊗⎣⎡d1d2d3⎦⎤=⎣⎡c1d1c1d2c1d3c2d1c2d2c2d3⎦⎤
张量积满足分配律:
∣ψ1⟩⊗∣ψ2⟩=(α1∣0⟩+β1∣1⟩)⊗(α2∣0⟩+β2∣1⟩)=α1α2∣00⟩+α1β2∣01⟩+β1α2∣10⟩+β1β2∣11⟩
- A⊗B=⎣⎡a11B⋮am1B⋯⋯a1nB⋮amnB⎦⎤
- (A⊗B)∗=A∗⊗B∗
- (A⊗B)⊤=A⊤⊗B⊤
- (A⊗B)†=A†⊗B†
- (A⊗B)(C⊗D)=AC⊗BD
迹: 矩阵对角线上元素之和。
- tr(AB)=tr(BA)
- tr(A+B)=tr(A)+tr(B)
- 对任何线性算子 A 和标量 c∈C,有 tr(cA)=c×tr(A).
- 对任何酉算子 U,有 tr(UAU†)=tr(A).
- 令 {∣ψi⟩} 是希尔伯特空间 H 上的一组标准正交基,A∈L(H) 是 H 上的一个线性算子,有 tr(A)=i∑⟨ψi∣A∣ψi⟩.
- 对任何密度算子 ρ,有 tr(ρ)=1。如果 ρ 是一个纯态,那么 tr(ρ2)=1;如果 ρ 是一个混合态,那么 tr(ρ2)<1.
单量子比特门
多量子比特门
CNOT门:CNOT:∣A,B⟩→∣A,B⊕A⟩.
Toffoli门:Toffoli:∣A,B,C⟩→∣A,B,C⊕A⋅B⟩.
算法
量子隐形传态
问题:利用仅能传输经典比特的信道传输量子比特Q1。
过程:Alice和Bob先共同制备贝尔态 ∣Q2Q3⟩。分开后,Alice通过对她的量子比特Q2以及想要传输的量子比特Q1做一系列操作后测量,将测量结果M1,M2通过经典比特传输信道告知Bob,Bob根据M1,M2对Q3施加相应门,使Q3变为Q1。
量子并行
问题:对于函数 f:{0,1,2,⋯,2n−1}→{0,1},得到所有可能的 (x,f(x)) 二元组的均匀叠加。
过程:先对 ∣00..0⟩ 的每个比特施加H门,得到 {∣0⟩,∣1⟩,∣2⟩,⋯,∣2n−1⟩} 的均匀叠加,再经过 Uf门。
Deutsch算法
问题:用一次对 f 的求值操作判断 f:{0,1}→{0,1} 是否为一个常函数。
过程:测量 ∣ψ3⟩ 的第一个量子比特的结果就是 f(0)⊕f(1).
Deutsch-Jozsa算法
问题:用一次对 f 的求值操作判断 f:{0,1}n→{0,1} 是常函数还是平衡函数(对一半的输入,输出 1)。
过程:测量 ∣ψ3⟩ 的前 n 个量子比特,如果全为 0,则 f 是常函数,否则是平衡函数。
Bernstein-Vazirani算法
电路图同Deutsch-Jozsa算法。
问题:有 fs:{0,1}n→{0,1},fs(x)=s⋅x(mod2),用一次对 fs 的求值操作求出 s∈{0,1}n.
过程:测量 ∣ψ3⟩ 的前 n 个量子比特,结果就是 s.
Simon算法
问题:有 f:{0,1}n→{0,1}n 一定是双射的(one-to-one)或者二对一(two-to-one)的函数,且若 f 是二对一的函数,必定存在 s 使得:f(x1)=f(x2) 当且仅当 x1⊕x2=s,求出 s∈{0,1}n.
过程:多次测量 ∣ψ3⟩ 的前 n 个量子比特,直至观测到 n 个不同的 z∈{0,1}n,分别记为 z1,z2,⋯,zn,则得到以下方程组:
s⋅z1=0s⋅z2=0⋮s⋅zn=0
高斯消元法求解方程组,结果就是 s.
量子超密编码
问题:利用一对贝尔态 q0,q1 和仅能传输量子比特的信道传输两个经典比特 x0,x1.
过程:Alice和Bob先共同制备贝尔态 ∣q0q1⟩。分开后,Alice根据 x0,x1 的值,向 q0 施加X门以及Z门。Alice把 q0 传输给Bob,Bob向 q0q1 作用CNOT门,再向 q0 作用H门。最后,Bob测量 q0q1,结果即为 x0x1.
数学
线性算子
定义: 令 H,K 为两个希尔伯特空间(每个柯西序列都有极限的完备的内积空间),如果一个映射 A:H→K 满足下面两个条件,则称 A 是一个线性算子。
- A(∣u⟩+∣v⟩)=A∣u⟩+A∣v⟩
- A(c∣v⟩)=cA∣v⟩
线性算子上的运算:
- (A+B)∣v⟩=A∣v⟩+B∣v⟩
- (cA)∣v⟩=c(A∣v⟩)
- (BA)∣v⟩=B(A∣v⟩)
矩阵表示: 通常,线性算子存在矩阵表示。令H,K 分别是 n 维,m 的希尔伯特空间,基分别为 {∣v1⟩,⋯,∣vn⟩},{∣w1⟩,⋯,∣wm⟩},A:H→K 是一个线性算子,A 的矩阵记为表示 MA. 则当 {∣v1⟩,⋯,∣vn⟩},{∣w1⟩,⋯,∣wm⟩} 都是标准正交基时,MA 的第 i 行第 j 列的元素 Aij=⟨wi∣A∣vj⟩.
对角化表示: 如果线性算子 A 的特征向量 ∣k⟩ 是标准正交的,分别对应特征值 λk,那么有 A=k∑λk∣k⟩⟨k∣.
伴随: 对任何线性算子 A∈L(H),存在唯一的算子 A† 满足:(A∣u⟩,∣v⟩)=(∣u⟩,A†∣v⟩).
A† 的矩阵表示等于 A 的矩阵表示的共轭转置。
对任何线性算子 A,B,有 (AB)†=B†A† 且 (A†)†=A.
正规算子
定义: 如果一个线性算子 A 与其伴随 A† 对易,即 AA†=A†A,则称 A 是一个正规算子。
性质:
- 正规算子可以进行谱分解:A=k∑λk∣k⟩⟨k∣.
- 正规算子 A 上的函数 f 可以被定义为 f(A)=i∑f(λi)∣i⟩⟨i∣.
厄米算子
定义: 如果一个正规算子 M 是自伴随的,即 M†=M,则称 M 是一个厄米算子。
性质:
- 厄米算子的所有特征值都是实数。
- 空间 H 上一个算子 M 是厄米的当且仅当对所有 ∣v⟩∈H,数值 ⟨v∣M∣v⟩ 是实数。
投影算子
定义: 一组正交基 ∣1⟩,∣2⟩,⋯,∣m⟩,则 P=i=1∑m∣i⟩⟨i∣ 是一个投影算子。
性质:
- 一个投影算子一定是一个厄密算子。
- 对一个厄密算子 M 进行谱分解 M=λ∈spec(M)∑λPλ. 则得到的 Pλ=∣λ⟩⟨λ∣ 是一个投影算子,从 H 投影到 λ 对应的特征空间。
酉算子
定义: 如果一个正规算子 U 满足 U†U=UU†=I,则称 U 是一个酉算子。
性质:
- 所有酉算子保持内积,即 (U∣u⟩,U∣v⟩)=⟨u∣v⟩.
- tr(UAU†)=tr(A)
量子力学基本假设
量子状态
一个封闭量子系统的状态空间可以由一个希尔伯特空间表示,这个系统的纯态可由状态空间上的一个单位向量表示。
量子演化
一个封闭系统的演化可以由一个酉变换来描述。如果这个系统在 t0 和 t1 时刻的状态为 ∣ψ0⟩ 和 ∣ψ1⟩,那么存在一个酉算子 U 使得 ∣ψ1⟩=U∣ψ0⟩.
量子测量
一般测量:
对一个状态空间为 H 的系统进行的一般测量可以由一组测量算子 {Mm}⊆L(H) 描述。
要求: 这组测量算子满足完备性等式:∑mMm†Mm=IH,其中下标 m 代表实验中可能出现的测量结果。
若测量前的系统状态为 ∣ψ⟩,那么对于每个 m,
- 测量结果 m 出现的概率为 p(m)=∥Mm∣ψ⟩∥2=⟨ψ∣M†M∣ψ⟩.
- 测量结果 m 出现后系统状态变为 ∣ψm⟩=p(m)Mm∣ψ⟩.
投影测量:
是一般测量的一种特殊情况。
要求: 除了要求测量算子满足完备性等式外,还要求它是一个投影算子,即满足 Pm†Pm=Pm2=Pm,它把 ∣ψ⟩ 投影到希尔伯特空间上的一组完备基 {∣ψm⟩} 上,其中 Pm=∣ψm⟩⟨ψm∣.
若测量前的系统状态为 ∣ψ⟩,那么对于每个 m,
- 测量结果 m 出现的概率为 p(m)=⟨ψ∣Pm∣ψ⟩.
- 测量结果 m 出现后系统状态变为 p(m)Pm∣ψ⟩.
任何一个可观测的量 M 都是一个厄密算子,它定义了一个测量 {Pm∣m∈spec(M)},这个测量必定是投影测量。观测量 M 对状态 ∣ψ⟩ 的测量结果期望值为:⟨M⟩ψ=⟨ψ∣M∣ψ⟩.
海森堡不确定性原理: 令 M,N 是两个可观测的量,它们在状态 ∣ψ⟩ 上的标准差满足 ΔMΔN≥21∥∣ψ⟩[M,N]⟨ψ∣∥,即无法使两个可观测量都有低标准差。
复合系统
一个复合系统的状态空间是各子系统状态空间的张量积。否则这个复合系统的状态是纠缠的。纠缠的系统不能描述为 ∣q0q1⟩ 的形式。
密度算子
定义: 对于混合态,可以用纯态的系综 {(∣ψ⟩,pi)} 来表示。也可以用密度算子 ρ=i∑pi∣ψi⟩⟨ψi∣ 来表示。
性质:
- 对任何密度算子 ρ,ρ 是正算子且 tr(ρ)=1.
- 一个系综对应一个密度算子,但一个密度算子可以对应多个系综。
- 如果 ρ 是一个纯态,那么 tr(ρ2)=1;如果 ρ 是一个混合态,那么 tr(ρ2)<1.
约简密度算子
定义: 用于刻画一个复合系统的子系统的密度算子。令 S,T 是两个量子系统,分别处于希尔伯特空间 HS,HT. 令 ρ 是复合系统 HS⊗HT 的密度算子。它在系统 S 上的约简密度算子为 ρS=trT(ρ),其中 trT(ρ) 表示在系统 T 上的偏迹操作:trT(∣ψ⟩⟨ϕ∣⊗∣θ⟩⟨ξ∣)=⟨ξ∣θ⟩⋅∣ψ⟩⟨ϕ∣.
Grover算法
问题: 在一个无结构的数据库中(即没有红黑树之类),从 N 条记录中找出一条指定的记录,时间复杂度 O(N).
量子电路: Grover算法需要 n 个量子位来对应 N=2n 条记录的编号,以及一些额外的工作位以完成神谕机(oracle)受控的操作。
过程: 首先对 n 个量子位做 H 门,使各记录都有相同的概率 N1 被选中,再通过多次Grover迭代(G门)以逐步增大目标记录被选中的概率,最后测量。
Grover迭代(G门):
- 作用神谕机受控操作 O,使得目标记录乘以相位 −1.
- 作用H门 H⊗n.
- 执行条件相位变换,使得除了 ∣0⟩ 以外的每个计算基态乘以相位 −1,即 ∣x⟩→−∣x⟩ if x=0⊗n. 对应酉算子 2∣0⟩⟨0∣−I.
- 再作用H门 H⊗n.
步骤2-4对应酉算子 H⊗n(2∣0⟩⟨0∣−I)H⊗n=2H⊗n∣0⟩⟨0∣H⊗n−H⊗nIH⊗n=2∣ϕ⟩⟨ϕ∣−I,其中 ∣ϕ⟩=N1∑x=0N−1∣x⟩.
Grover迭代对应酉算子 (2∣ϕ⟩⟨ϕ∣−I)O.
随着Grover迭代,搜索成功的概率:sin2(2θ)→sin2(23θ)→sin2(25θ)→⋯.
Shor算法
量子傅里叶变换
傅里叶变换
定义: 一个复数向量之间的映射 (x0,…,xN−1)→(y0,…,yN−1),具体为 yk=N1j=0∑N−1xje2πijk/N,其中 k=(0,1,…,N−1).
FT是一个酉变换,令 ωN=e2πi/N 是 xN=1 的单位根,则
快速傅里叶变换
yk=21(ykmodN/2even+ωNkykmodN/2even)
其中 ykmodN/2even=N/21∑2∣jωN/2jk/2xj 为 FT(xeven) 中下标为 kmodN/2 的元素,ykmodN/2odd=N/21∑2∤jωN/2(j−1)k/2xj 为 FT(xodd) 中下标为 kmodN/2 的元素。
时间复杂度 O(NlogN).
量子傅里叶变换
定义:
∣j⟩→N1k=0∑N−1e2πijk/N∣k⟩
化简:
量子电路:
定义旋转门:Rk=[100e2πi/2k].
- 对输入 ∣jn⟩ 执行H门,得到第一个因子 [∣0⟩+e2πi0.jn∣1⟩]/2.
- 对输入 ∣jn−1⟩ 执行H门,得到 [∣0⟩+e2πi0.jn−1∣1⟩]/2,再执行由 ∣jn⟩ 控制的旋转门 R2,得到第二个因子 [∣0⟩+e2πi0.jj−1jn∣1⟩]/2.
- 以此类推。
- 最后用 ⌊n/2⌋ 个交换门,把序列翻转。
相位估计
相位: 一个酉算子 U 作用在状态 ∣u⟩ 上,假设 ∣u⟩ 是 U 的一个特征态,则有 U∣u⟩=e2πiφ∣u⟩,其中 e2πiφ 是 U 的特征值,φ 是 U 的相位。求出相位后即确定了特征值,就可以通过谱分解确定酉算子 U.
问题: 有一个黑盒酉算子 U,假设已有 U 的各阶完全平方次幂 U20,U21,U22,⋯ 以及特征态 ∣u⟩,求出对应的相位 φ.
过程:
- 第一阶段:构造由 Uj∣u⟩ 组成的几何级数的叠加态。
- 第二阶段:用量子傅里叶逆变换还原相位。
第一阶段量子电路:
完整量子电路:
得到 φ~ 是 φ⋅2t 的最佳近似值。
周期计算
问题: 给定两个互素的正整数 x,N,求满足 xr≡1modN 的最小正整数 r.
定义酉算子 U∣y⟩=∣x⋅ymodN⟩.
可证 ∣us⟩≡N1∑k=0r−1exp[r−2πisk]∣xkmodN⟩ 是 U 的一个特征态,其对应的相位为 s/r,它的分母就是周期 r.
由于不知道 r,故无法制备具体的 s 对应的 ∣us⟩,但可以制备所有 ∣us⟩ 的叠加 r1∑s=0r−1∣us⟩=∣1⟩.
量子电路:
- 制备 ∣u⟩=∣1⟩,即所有特征态的叠加 r1∑s=0r−1∣us⟩=∣1⟩.
- 相位估计得到小数形式的 s/r.
- 利用Stern-Brocot树转化为分数形式,得到分母 r 即为周期。
整数分解