我的意识因沉重和慵懒而黏糊糊地沉沦着,与此同时,新陈代谢也在无声地进行着。
# 一个简单的想法和 Szegedy quantum walk
给定一个图G = ( V , E ) G=(V,E) G = ( V , E ) ,我们希望在上面随机游走。这个游走的过程最朴素的想法就是,有这样一个变换:
对于任意一个点j ∈ V j\in V j ∈ V ,变换为:
∣ j ⟩ ↦ 1 deg ( j ) ∑ k : ( j , k ) ∈ E ∣ k ⟩ |j\rangle\mapsto \frac{1}{\sqrt{\deg(j)}}\sum_{k:(j,k)\in E}|k\rangle
∣ j ⟩ ↦ deg ( j ) 1 k : ( j , k ) ∈ E ∑ ∣ k ⟩
也就是把∣ j ⟩ |j\rangle ∣ j ⟩ 变化为j j j 能到达的邻居k k k 的均匀叠加态。
但是不难验证上述变换都不是酉的。
验证:设U ∣ j ⟩ = ∣ ∂ j ⟩ : = 1 deg ( j ) ∑ k : ( j , k ) ∈ E ∣ k ⟩ U|j\rangle=|\partial_j\rangle:=\frac{1}{\sqrt{\deg(j)}}\sum_{k:(j,k)\in E}|k\rangle U ∣ j ⟩ = ∣ ∂ j ⟩ : = d e g ( j ) 1 ∑ k : ( j , k ) ∈ E ∣ k ⟩ ,那么:
⟨ j ∣ U † U ∣ k ⟩ = ⟨ ∂ j ∣ ∂ k ⟩ ≠ 0 = ⟨ j ∣ k ⟩ \langle j|U^\dagger U|k\rangle=\langle\partial_j|\partial_k\rangle\neq 0=\langle j|k\rangle
⟨ j ∣ U † U ∣ k ⟩ = ⟨ ∂ j ∣ ∂ k ⟩ = 0 = ⟨ j ∣ k ⟩
即这个变换不保持内积,就不是酉变换。
怎么解决呢?对于一个转移矩阵P ∈ R N × N P\in\mathbb{R}^{N\times N} P ∈ R N × N ,其中N = ∣ V ∣ N=|V| N = ∣ V ∣ 。有∀ i , j ∈ [ N ] , P i , j ≥ 0 \forall i,j\in[N],P_{i,j}\geq 0 ∀ i , j ∈ [ N ] , P i , j ≥ 0 和∀ j ∈ [ N ] , ∑ i = 1 N P i , j = 1 \forall j\in [N],\sum_{i=1}^N P_{i,j}=1 ∀ j ∈ [ N ] , ∑ i = 1 N P i , j = 1 。(和经典的 Markov 转移矩阵类似,列和为 1)而P i , j P_{i,j} P i , j 意思是从结点j j j 转移到结点i i i 的概率。那么我们可以记:
∣ ψ j ⟩ : = ∣ j ⟩ ⊗ ∑ k ∈ [ N ] P k , j ∣ k ⟩ = ∑ j , k ∈ [ N ] P k , j ∣ j , k ⟩ |\psi_j\rangle:=|j\rangle\otimes \sum_{k\in [N]}\sqrt{P_{k,j}}|k\rangle=\sum_{j,k\in [N]}\sqrt{P_{k,j}}|j,k\rangle
∣ ψ j ⟩ : = ∣ j ⟩ ⊗ k ∈ [ N ] ∑ P k , j ∣ k ⟩ = j , k ∈ [ N ] ∑ P k , j ∣ j , k ⟩
即从j j j 转移到的结点的一个叠加态。我们也可以引入:
Π : = ∑ j = 1 N ∣ ψ j ⟩ ⟨ ψ j ∣ \Pi:=\sum_{j=1}^N|\psi_j\rangle\langle\psi_j|
Π : = j = 1 ∑ N ∣ ψ j ⟩ ⟨ ψ j ∣
很显然有Π 2 = Π \Pi^2=\Pi Π 2 = Π ,所以它是一个 projective operator。再引入交换算子:
S : = ∑ j , k ∈ [ N ] ∣ j , k ⟩ ⟨ k , j ∣ S:=\sum_{j,k\in [N]}|j,k\rangle\langle k,j|
S : = j , k ∈ [ N ] ∑ ∣ j , k ⟩ ⟨ k , j ∣
那么一步的 quantum random walk 可以定义为酉变换:
U : = S ( 2 Π − I ) U:=S(2\Pi-I)
U : = S ( 2 Π − I )
会发现这非常类似于 Grover 的式子。我们先验证它是一个酉变换:
U U † = S ( 2 Π − I ) ( 2 Π − I ) † S † = S ( 2 Π − I ) ( 2 Π − I ) S = S ( 4 Π 2 − 4 Π + I ) S = S ( 4 Π − 4 Π + I ) S = S 2 = I \begin{aligned}
UU^\dagger&=S(2\Pi -I)(2\Pi - I)^\dagger S^\dagger\\
&=S(2\Pi -I)(2\Pi - I) S\\
&=S(4\Pi^2-4\Pi+I)S\\
&=S(4\Pi-4\Pi+I)S\\
&=S^2\\
&=I
\end{aligned}
U U † = S ( 2 Π − I ) ( 2 Π − I ) † S † = S ( 2 Π − I ) ( 2 Π − I ) S = S ( 4 Π 2 − 4 Π + I ) S = S ( 4 Π − 4 Π + I ) S = S 2 = I
为什么这么定义量子游走?一个直观的感觉是:
U 2 = S ( 2 Π − I ) S ( 2 Π − I ) = ( 2 S Π 2 S − I ) ( 2 Π − I ) = ( 2 ( S Π ) ( S Π ) † − I ) ( 2 Π − I ) \begin{aligned}
U^2&=S(2\Pi-I)S(2\Pi-I)\\
&=(2S\Pi^2S-I)(2\Pi-I)\\
&=(2(S\Pi)(S\Pi)^\dagger-I)(2\Pi-I)
\end{aligned}
U 2 = S ( 2 Π − I ) S ( 2 Π − I ) = ( 2 S Π 2 S − I ) ( 2 Π − I ) = ( 2 ( S Π ) ( S Π ) † − I ) ( 2 Π − I )
其中( 2 Π − I ) (2\Pi-I) ( 2 Π − I ) 可以看作是:关于空间supp ( Π ) = span { ∣ ψ j ⟩ : j ∈ [ N ] } \text{supp}(\Pi)=\text{span}\{|\psi_j\rangle:j\in [N]\} supp ( Π ) = span { ∣ ψ j ⟩ : j ∈ [ N ] } 的一个 reflection。
因为对于一个向量∣ α ⟩ |\alpha\rangle ∣ α ⟩ ,你可以将其分解为属于supp ( Π ) \text{supp}(\Pi) supp ( Π ) 和属于supp ( Π ) ⊥ \text{supp}(\Pi)^\bot supp ( Π ) ⊥ 的两部分。
而作用( 2 Π − I ) (2\Pi-I) ( 2 Π − I ) ,就是前一部分不变,后一部分取反。直觉上这就是一个 reflection。
再关于span { S ∣ ψ j ⟩ : j ∈ [ N ] } \text{span}\{S|\psi_j\rangle:j\in [N]\} span { S ∣ ψ j ⟩ : j ∈ [ N ] } 做一次 reflection。
这个被称为 Szegedy quantum walk 。在第三部分我们再详细介绍它的使用和实现。
对于一个P ∈ R N × N P\in\mathbb{R}^{N\times N} P ∈ R N × N 满足∀ i , j ∈ [ N ] , P i , j ≥ 0 \forall i,j\in [N],P_{i,j}\geq 0 ∀ i , j ∈ [ N ] , P i , j ≥ 0 并且∀ j ∈ [ N ] , ∑ i = 1 N P i , j = 1 \forall j\in [N],\sum_{i=1}^NP_{i,j}=1 ∀ j ∈ [ N ] , ∑ i = 1 N P i , j = 1 。它可以诱导出一个 discriminative matrix D D D (D j , k = P j , k P k , j D_{j,k}=\sqrt{P_{j,k}P_{k,j}} D j , k = P j , k P k , j )。既然D D D 是对称的,那么有谱分解D = ∑ λ ∣ λ ⟩ ⟨ λ ∣ D=\sum\lambda|\lambda\rangle\langle\lambda| D = ∑ λ ∣ λ ⟩ ⟨ λ ∣ 。
定理说:U = S ( 2 Π − I ) U=S(2\Pi-I) U = S ( 2 Π − I ) 的特征值为± 1 \pm 1 ± 1 和λ ± i 1 − λ 2 \lambda\pm i\sqrt{1-\lambda^2} λ ± i 1 − λ 2 ,对于D D D 的每个特征值λ \lambda λ 。
证明 :我们定义T = ∑ j = 1 N ∣ ψ j ⟩ ⟨ j ∣ T=\sum_{j=1}^N|\psi_j\rangle\langle j| T = ∑ j = 1 N ∣ ψ j ⟩ ⟨ j ∣ ,不难验证T † T = I T^\dagger T=I T † T = I , T T † = Π TT^\dagger=\Pi T T † = Π 。并且T † S T = D T^\dagger ST=D T † S T = D 。
我们定义∣ λ ~ ⟩ : = T ∣ λ ⟩ |\tilde{\lambda}\rangle:=T|\lambda\rangle ∣ λ ~ ⟩ : = T ∣ λ ⟩ ,那么对于任意一个D D D 的特征值λ \lambda λ 都有:
U ∣ λ ~ ⟩ = S ∣ λ ~ ⟩ U S ∣ λ ~ ⟩ = 2 λ S ∣ λ ~ ⟩ − ∣ λ ~ ⟩ U|\tilde{\lambda}\rangle=S|\tilde{\lambda}\rangle\\
US|\tilde{\lambda}\rangle=2\lambda S|\tilde{\lambda}\rangle-|\tilde{\lambda}\rangle
U ∣ λ ~ ⟩ = S ∣ λ ~ ⟩ U S ∣ λ ~ ⟩ = 2 λ S ∣ λ ~ ⟩ − ∣ λ ~ ⟩
这其实说明了,span { ∣ λ ~ ⟩ , S ∣ λ ~ ⟩ } \text{span}\{|\tilde{\lambda}\rangle,S|\tilde{\lambda}\rangle\} span { ∣ λ ~ ⟩ , S ∣ λ ~ ⟩ } 这个二维子空间在U U U 下是不变的。那我们用待定系数法,在这个不变子空间内找U U U 的特征值。
假设特征向量为∣ μ ⟩ : = ∣ λ ~ ⟩ − μ S ∣ λ ~ ⟩ |\mu\rangle:=|\tilde{\lambda}\rangle-\mu S|\tilde{\lambda}\rangle ∣ μ ⟩ : = ∣ λ ~ ⟩ − μ S ∣ λ ~ ⟩ ,那么
U ∣ μ ⟩ = S ∣ λ ~ ⟩ − μ ( 2 λ S ∣ λ ~ ⟩ − ∣ λ ~ ⟩ ) = μ ∣ λ ~ ⟩ + ( 1 − 2 λ μ ) S ∣ λ ~ ⟩ U|\mu\rangle=S|\tilde{\lambda}\rangle-\mu(2\lambda S|\tilde{\lambda}\rangle-|\tilde{\lambda}\rangle)=\mu|\tilde{\lambda}\rangle+(1-2\lambda\mu)S|\tilde{\lambda}\rangle
U ∣ μ ⟩ = S ∣ λ ~ ⟩ − μ ( 2 λ S ∣ λ ~ ⟩ − ∣ λ ~ ⟩ ) = μ ∣ λ ~ ⟩ + ( 1 − 2 λ μ ) S ∣ λ ~ ⟩
所以我们希望,U ∣ μ ⟩ = μ ∣ μ ⟩ U|\mu\rangle=\mu|\mu\rangle U ∣ μ ⟩ = μ ∣ μ ⟩ ,即1 − 2 λ μ = − μ 2 1-2\lambda\mu=-\mu^2 1 − 2 λ μ = − μ 2 ,解得μ = λ ± i 1 − λ 2 \mu=\lambda\pm i\sqrt{1-\lambda^2} μ = λ ± i 1 − λ 2 。
□ \square □ .
# 一点经典的随机游走
如果一个矩阵P ∈ R N × N P\in\mathbb{R}^{N\times N} P ∈ R N × N 满足:
∀ i , j ∈ [ N ] . P i , j ≥ 0 \forall i,j\in [N].\;P_{i,j}\geq 0 ∀ i , j ∈ [ N ] . P i , j ≥ 0 .
∀ j ∈ [ N ] . ∑ i = 1 N P i , j = 1 \forall j\in [N].\;\sum_{i=1}^NP_{i,j}=1 ∀ j ∈ [ N ] . ∑ i = 1 N P i , j = 1 .
那么就称P P P 是一个 stochastic matrix。
1 1 1 是 stochastic matrix P P P 的一个特征值,并且对于任意一个特征值λ \lambda λ ,都有∣ λ ∣ ≤ 1 |\lambda|\leq 1 ∣ λ ∣ ≤ 1 。
证明 :首先根据线性代数知识,我们知道P P P 和P T P^T P T 有相同的特征值。而注意到:
P T ( 1 1 . . . 1 ) = ( 1 1 . . . 1 ) P^T\begin{pmatrix}1\\1\\...\\1\end{pmatrix}=\begin{pmatrix}1\\1\\...\\1\end{pmatrix}
P T ⎝ ⎜ ⎜ ⎜ ⎛ 1 1 . . . 1 ⎠ ⎟ ⎟ ⎟ ⎞ = ⎝ ⎜ ⎜ ⎜ ⎛ 1 1 . . . 1 ⎠ ⎟ ⎟ ⎟ ⎞
所以1 1 1 是P P P 的一个特征值。此外,对于任意特征值λ \lambda λ ,都有:
P T x = λ x ⇒ ∀ j ∈ [ N ] . λ x j = ∑ i = 1 N P i , j x i P^T\mathbf{x}=\lambda\mathbf{x}\Rightarrow \forall j\in [N].\;\lambda x_j=\sum_{i=1}^NP_{i,j}x_i
P T x = λ x ⇒ ∀ j ∈ [ N ] . λ x j = i = 1 ∑ N P i , j x i
那我们找出绝对值最大的x j x_j x j ,就有:
∣ λ ∣ ⋅ ∣ x j ∣ = ∣ ∑ i = 1 N P i , j x i ∣ |\lambda|\cdot|x_j|=\left |\sum_{i=1}^N P_{i,j}x_i\right |
∣ λ ∣ ⋅ ∣ x j ∣ = ∣ ∣ ∣ ∣ ∣ ∣ i = 1 ∑ N P i , j x i ∣ ∣ ∣ ∣ ∣ ∣
根据三角不等式,
∣ λ ∣ ⋅ ∣ x j ∣ = ∣ ∑ i = 1 N P i , j x i ∣ ≤ ∑ i = 1 N ∣ P i , j x i ∣ ≤ ∣ x j ∣ ∑ i = 1 N ∣ P i , j ∣ = ∣ x j ∣ |\lambda|\cdot|x_j|=\left |\sum_{i=1}^N P_{i,j}x_i\right |\leq\sum_{i=1}^N|P_{i,j}x_i|\leq|x_j|\sum_{i=1}^N|P_{i,j}|=|x_j|
∣ λ ∣ ⋅ ∣ x j ∣ = ∣ ∣ ∣ ∣ ∣ ∣ i = 1 ∑ N P i , j x i ∣ ∣ ∣ ∣ ∣ ∣ ≤ i = 1 ∑ N ∣ P i , j x i ∣ ≤ ∣ x j ∣ i = 1 ∑ N ∣ P i , j ∣ = ∣ x j ∣
所以∣ λ ∣ ≤ 1 |\lambda|\leq 1 ∣ λ ∣ ≤ 1 。
□ \square □ .
下面我们考虑击中时间的分析。譬如给定一个M ⊂ V M\subset V M ⊂ V ,我们认为M M M 中的顶点被 mark 了。同样给定一个顶点v ∈ V v\in V v ∈ V ,我们也有办法 check 是否v ∈ M v\in M v ∈ M 。那么我们主要分析,随机游走什么时候能走到被 mark 的结点。
不失一般性,我们可以假设被 mark 的结点编号都是最大的若干个点。
给定 stochastic matrix P P P ,可以诱导出一个新的 stochastic matrix:
P j , k ′ = { P j , k k ∉ M 1 k ∈ M , j = k 0 k ∈ M , j ≠ k P ′ : = ( P M 0 Q I ) P'_{j,k}=\begin{cases}
P_{j,k}& k\notin M\\
1 & k\in M,j=k\\
0 & k\in M,j\neq k
\end{cases}\qquad P':=\begin{pmatrix}
P_M & \mathbf{0}\\
Q & I
\end{pmatrix}
P j , k ′ = ⎩ ⎪ ⎪ ⎨ ⎪ ⎪ ⎧ P j , k 1 0 k ∈ / M k ∈ M , j = k k ∈ M , j = k P ′ : = ( P M Q 0 I )
直观地理解就是,走到被 mark 的点后,将不再走出去。那么走t t t 步的话,就为:
P ′ t = ( P M t 0 Q ( I + P M + . . . + P M t − 1 ) I ) P'^t=\begin{pmatrix}
P_M^t &\mathbf{0}\\
Q(I+P_M+...+P_M^{t-1})&I
\end{pmatrix}
P ′ t = ( P M t Q ( I + P M + . . . + P M t − 1 ) 0 I )
不失一般性,我们假设最开始我们有一个V − M V-M V − M 上的均匀概率分布。
这里为什么不失一般性?因为首先,我们可以有一个V V V 上的均匀概率分布,然后假如我们对这个概率分布进行 sample,sample 后进行 check,若 check 到属于M M M 就重新 sample,那就得到了一个V − M V-M V − M 上的均匀概率分布。
也就是我们分析时不考虑初始一随机 sample 直接 sample 到答案了这种情况。
注意,我们只关心 t 步后,没走到M M M 的概率 ,那么:
( P M t 0 Q ( I + P M + . . . + P M t − 1 ) I ) ⋅ 1 N − ∣ M ∣ ( 1 1 . . . 1 0 . . . 0 ) = 1 N − ∣ M ∣ ( ∑ k = 1 N − ∣ M ∣ [ P M t ] 1 , k ∑ k = 1 N − ∣ M ∣ [ P M t ] 2 , k . . . ∑ k = 1 N − ∣ M ∣ [ P M t ] N − ∣ M ∣ , k . . . ) \begin{pmatrix}
P_M^t &\mathbf{0}\\
Q(I+P_M+...+P_M^{t-1})&I
\end{pmatrix}\cdot\frac{1}{N-|M|}\begin{pmatrix}1\\1\\...\\1\\0\\...\\0\end{pmatrix}=\frac{1}{N-|M|}
\begin{pmatrix}
\sum_{k=1}^{N-|M|}[P_M^t]_{1,k}\\
\sum_{k=1}^{N-|M|}[P_M^t]_{2,k}\\
...\\
\sum_{k=1}^{N-|M|}[P_M^t]_{N-|M|,k}\\
...
\end{pmatrix}
( P M t Q ( I + P M + . . . + P M t − 1 ) 0 I ) ⋅ N − ∣ M ∣ 1 ⎝ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎛ 1 1 . . . 1 0 . . . 0 ⎠ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎞ = N − ∣ M ∣ 1 ⎝ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎛ ∑ k = 1 N − ∣ M ∣ [ P M t ] 1 , k ∑ k = 1 N − ∣ M ∣ [ P M t ] 2 , k . . . ∑ k = 1 N − ∣ M ∣ [ P M t ] N − ∣ M ∣ , k . . . ⎠ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎞
也就是,走t t t 步后,没走到M M M 的概率为:
P ( t ) = 1 N − ∣ M ∣ ∑ j , k ∉ M [ P M t ] j , k \mathbb{P}(t)=\frac{1}{N-|M|}\sum_{j,k\notin M}[P_M^t]_{j,k}
P ( t ) = N − ∣ M ∣ 1 j , k ∈ / M ∑ [ P M t ] j , k
我们记∣ v ⟩ = 1 N − ∣ M ∣ ( 1 , 1 , . . . , 1 ) T |v\rangle=\frac{1}{\sqrt{N-|M|}}\begin{pmatrix}1,1,...,1\end{pmatrix}^T ∣ v ⟩ = N − ∣ M ∣ 1 ( 1 , 1 , . . . , 1 ) T ,那么P ( t ) = ⟨ v ∣ P M t ∣ v ⟩ \mathbb{P}(t)=\langle v|P_M^t|v\rangle P ( t ) = ⟨ v ∣ P M t ∣ v ⟩ 。
我们知道对于∣ ⟨ v ∣ v ⟩ = 1 |\langle v|v\rangle=1 ∣ ⟨ v ∣ v ⟩ = 1 的话,有∣ ⟨ v ∣ A ∣ v ⟩ ∣ ≤ ∥ A ∥ |\langle v|A|v\rangle|\leq \| A\| ∣ ⟨ v ∣ A ∣ v ⟩ ∣ ≤ ∥ A ∥ 对于任意矩阵A A A ,其中,∥ A ∥ = max λ is an eigenvalue of A ∣ λ ∣ \|A\|=\max_{\lambda\text{ is an eigenvalue of }A}|\lambda| ∥ A ∥ = max λ is an eigenvalue of A ∣ λ ∣ 是A A A 的谱范数。
如果∥ P M ∥ = 1 − Δ \|P_M\|=1-\Delta ∥ P M ∥ = 1 − Δ ,那么
P ( t ) = ∣ ⟨ v ∣ P M t ∣ v ⟩ ∣ ≤ ∥ P M t ∥ ≤ ∥ P M ∥ t = ( 1 − Δ ) t \mathbb{P}(t)=|\langle v|P_M^t|v\rangle|\leq\|P_M^t\|\leq \|P_M\|^t=(1-\Delta)^t
P ( t ) = ∣ ⟨ v ∣ P M t ∣ v ⟩ ∣ ≤ ∥ P M t ∥ ≤ ∥ P M ∥ t = ( 1 − Δ ) t
所以我们期望走t = O ( 1 / Δ ) = O ( 1 / ( 1 − ∥ P M ∥ ) ) t=O(1/\Delta)=O(1/(1-\| P_M\|)) t = O ( 1 / Δ ) = O ( 1 / ( 1 − ∥ P M ∥ ) ) 步,就会以常数的概率走到M M M 。
Lemma : Assuming P P P is symmetric, if the second largest eigenvalue of P P P (in absolute value) is at most 1 − δ 1-\delta 1 − δ , (i.e. eigenvalue 1 1 1 has single multiplicity), and ∣ M ∣ ≥ ε N |M|\geq \varepsilon N ∣ M ∣ ≥ ε N , then
∥ P M ∥ ≤ 1 − ε δ \|P_M\|\leq 1-\varepsilon\delta
∥ P M ∥ ≤ 1 − ε δ
证明 :设∣ u ⟩ ∈ R N − ∣ M ∣ |u\rangle\in\mathbb{R}^{N-|M|} ∣ u ⟩ ∈ R N − ∣ M ∣ 是P M P_M P M 的最大特征根对应的特征向量。然后∣ w ⟩ ∈ R N |w\rangle\in\mathbb{R}^N ∣ w ⟩ ∈ R N 是在∣ u ⟩ |u\rangle ∣ u ⟩ 下面补齐一堆0 0 0 的向量。
因为我们假设了P P P 是对称的,那么它的行和、列和都是 1。那么∣ V ⟩ : = 1 N ∑ j ∈ V ∣ j ⟩ |V\rangle:=\frac{1}{\sqrt{N}}\sum_{j\in V}|j\rangle ∣ V ⟩ : = N 1 ∑ j ∈ V ∣ j ⟩ 是P P P 的一个特征值为 1 的特征向量。
由于∣ u ⟩ |u\rangle ∣ u ⟩ 就是最大特征根对应的特征向量,所以
∥ P M ∥ = max λ ∣ λ ∣ = ⟨ u ∣ P M ∣ u ⟩ = ⟨ w ∣ P ∣ w ⟩ \|P_M\|=\max_{\lambda}|\lambda|=\langle u|P_M|u\rangle=\langle w|P|w\rangle
∥ P M ∥ = λ max ∣ λ ∣ = ⟨ u ∣ P M ∣ u ⟩ = ⟨ w ∣ P ∣ w ⟩
因为P P P 是对称的,不妨设其谱分解为P = ∑ λ ∣ λ ⟩ ⟨ λ ∣ P=\sum\lambda|\lambda\rangle\langle\lambda| P = ∑ λ ∣ λ ⟩ ⟨ λ ∣ ,那么
∥ P M ∥ = ⟨ w ∣ P ∣ w ⟩ = ∑ λ ⟨ w ∣ λ ⟩ ⟨ λ ∣ w ⟩ = ∣ ⟨ V ∣ w ⟩ ∣ 2 + ∑ λ ≠ 1 λ ∣ ⟨ λ ∣ w ⟩ ∣ 2 ≤ ∣ ⟨ V ∣ w ⟩ ∣ 2 + ∑ λ ≠ 1 ( 1 − δ ) ∣ ⟨ λ ∣ w ⟩ ∣ 2 \begin{aligned}
\|P_M\|&=\langle w|P|w\rangle\\
&=\sum\lambda\langle w|\lambda\rangle\langle\lambda|w\rangle\\
&=|\langle V|w\rangle|^2+\sum_{\lambda\neq 1}\lambda |\langle\lambda|w\rangle|^2\\
&\leq|\langle V|w\rangle|^2+\sum_{\lambda\neq 1}(1-\delta)|\langle\lambda|w\rangle|^2\\
\end{aligned}
∥ P M ∥ = ⟨ w ∣ P ∣ w ⟩ = ∑ λ ⟨ w ∣ λ ⟩ ⟨ λ ∣ w ⟩ = ∣ ⟨ V ∣ w ⟩ ∣ 2 + λ = 1 ∑ λ ∣ ⟨ λ ∣ w ⟩ ∣ 2 ≤ ∣ ⟨ V ∣ w ⟩ ∣ 2 + λ = 1 ∑ ( 1 − δ ) ∣ ⟨ λ ∣ w ⟩ ∣ 2
注意到这个∑ λ ∣ ⟨ λ ∣ w ⟩ ∣ 2 = 1 \sum_\lambda|\langle\lambda|w\rangle|^2=1 ∑ λ ∣ ⟨ λ ∣ w ⟩ ∣ 2 = 1 ,对于任意一个归一化的向量∣ w ⟩ |w\rangle ∣ w ⟩ 都满足。所以
∥ P M ∥ ≤ ∣ ⟨ V ∣ w ⟩ ∣ 2 + ∑ λ ≠ 1 ( 1 − δ ) ∣ ⟨ λ ∣ w ⟩ ∣ 2 = ∑ λ ∣ ⟨ λ ∣ w ⟩ ∣ 2 − δ ∑ λ ≠ 1 ∣ ⟨ λ ∣ w ⟩ ∣ 2 = 1 − δ ( 1 − ∣ ⟨ V ∣ w ⟩ ∣ 2 ) \begin{aligned}
\|P_M\|&\leq|\langle V|w\rangle|^2+\sum_{\lambda\neq 1}(1-\delta)|\langle\lambda|w\rangle|^2\\
&=\sum_{\lambda}|\langle\lambda|w\rangle|^2-\delta\sum_{\lambda\neq 1}|\langle\lambda|w\rangle|^2\\
&=1-\delta(1-|\langle V|w\rangle|^2)
\end{aligned}
∥ P M ∥ ≤ ∣ ⟨ V ∣ w ⟩ ∣ 2 + λ = 1 ∑ ( 1 − δ ) ∣ ⟨ λ ∣ w ⟩ ∣ 2 = λ ∑ ∣ ⟨ λ ∣ w ⟩ ∣ 2 − δ λ = 1 ∑ ∣ ⟨ λ ∣ w ⟩ ∣ 2 = 1 − δ ( 1 − ∣ ⟨ V ∣ w ⟩ ∣ 2 )
我们定义Π V / M = ∑ j ∉ M ∣ j ⟩ ⟨ j ∣ \Pi_{V/M}=\sum_{j\notin M}|j\rangle\langle j| Π V / M = ∑ j ∈ / M ∣ j ⟩ ⟨ j ∣ ,那么Π V / M ∣ w ⟩ = ∣ w ⟩ \Pi_{V/M}|w\rangle=|w\rangle Π V / M ∣ w ⟩ = ∣ w ⟩ 。因为∣ w ⟩ |w\rangle ∣ w ⟩ 只有前∣ M ∣ |M| ∣ M ∣ 个 entry 是 1。那么根据柯西不等式:
∣ ⟨ V ∣ w ⟩ ∣ 2 = ∣ ⟨ V ∣ Π V / M ∣ w ⟩ ∣ 2 ≤ ∥ Π V / M ∣ V ⟩ ∥ 2 ⋅ ∥ ∣ w ⟩ ∥ 2 = ∥ Π V / M ∣ V ⟩ ∥ 2 = N − M N ≤ 1 − ε \begin{aligned}
|\langle V|w\rangle|^2&=|\langle V|\Pi_{V/M}|w\rangle|^2\\
&\leq\|\Pi_{V/M}|V\rangle\|^2\cdot\||w\rangle\|^2\\
&=\|\Pi_{V/M}|V\rangle\|^2\\
&=\frac{N-M}{N}\\
&\leq 1-\varepsilon
\end{aligned}
∣ ⟨ V ∣ w ⟩ ∣ 2 = ∣ ⟨ V ∣ Π V / M ∣ w ⟩ ∣ 2 ≤ ∥ Π V / M ∣ V ⟩ ∥ 2 ⋅ ∥ ∣ w ⟩ ∥ 2 = ∥ Π V / M ∣ V ⟩ ∥ 2 = N N − M ≤ 1 − ε
所以∥ P M ∥ ≤ 1 − ε δ \|P_M\|\leq 1-\varepsilon\delta ∥ P M ∥ ≤ 1 − ε δ 。
□ \square □ .
# 对 Szegedy 游走的理解
或许会很奇怪,U = S ( 2 Π − I ) U=S(2\Pi-I) U = S ( 2 Π − I ) 这是从哪来的,有何含义?
我们想一个更符合直观的,更好的理解。譬如我们现在有一个状态∣ u , v ⟩ |u,v\rangle ∣ u , v ⟩ ,它表示:我们现在在结点v v v ,但是是从u u u 走来的。
那么量子随机游走可以看作两个阶段:
Coin flip。保持第二寄存器∣ v ⟩ |v\rangle ∣ v ⟩ 不变,把第一寄存器变成一个v v v 能到达结点的一个概率分布,即∑ ( v , v ′ ) ∈ E p v ′ ∣ v ′ ⟩ ⊗ ∣ v ⟩ \sum_{(v,v')\in E}p_{v'}|v'\rangle\otimes |v\rangle ∑ ( v , v ′ ) ∈ E p v ′ ∣ v ′ ⟩ ⊗ ∣ v ⟩ 。
Deterministic phase。交换两个寄存器,得到∑ ( v , v ′ ) ∈ E p v ′ ∣ v , v ′ ⟩ \sum_{(v,v')\in E}p_{v'}|v,v'\rangle ∑ ( v , v ′ ) ∈ E p v ′ ∣ v , v ′ ⟩ 。
结束后我们从一个状态∣ u , v ⟩ |u,v\rangle ∣ u , v ⟩ (其中( u , v ) ∈ E (u,v)\in E ( u , v ) ∈ E )到达了一个状态上的概率叠加态∑ ( v , v ′ ) ∈ E p v ′ ∣ v , v ′ ⟩ \sum_{(v,v')\in E}p_{v'}|v,v'\rangle ∑ ( v , v ′ ) ∈ E p v ′ ∣ v , v ′ ⟩ 。
如果对第二寄存器进行测量,我们就可以得到一个新的合法状态∣ v , v ′ ⟩ |v,v'\rangle ∣ v , v ′ ⟩ 。
但是我们不这样。我们从任意一个状态开始,不断地进行以上两步,也就是在随机游走,随后就会获得一个结点上的概率分布∑ ( u , v ) ∈ E p u , v ∣ u , v ⟩ \sum_{(u,v)\in E}p_{u,v}|u,v\rangle ∑ ( u , v ) ∈ E p u , v ∣ u , v ⟩ ,只测量第二寄存器,我们可以理解为,走若干步后:
Prob [ 走到 v 0 ] = ∑ ( u , v 0 ) ∈ E ∣ p u , v 0 ∣ 2 \text{Prob}[\text{走到}v_0]=\sum_{(u,v_0)\in E}|p_{u,v_0}|^2
Prob [ 走到 v 0 ] = ( u , v 0 ) ∈ E ∑ ∣ p u , v 0 ∣ 2
这就是一个随机的概率分布。
而重点在于第一个 Coin flip。我们该怎么 flip 呢?有许多策略。其中一个策略是 Hadamard type,它做的事情很简单,就是:
∣ u , v ⟩ ↦ 1 deg ( v ) ∑ ( v , v ′ ) ∈ E ∣ v ′ ⟩ ⊗ ∣ v ⟩ |u,v\rangle\mapsto \frac{1}{\sqrt{\deg(v)}}\sum_{(v,v')\in E}|v'\rangle\otimes |v\rangle
∣ u , v ⟩ ↦ deg ( v ) 1 ( v , v ′ ) ∈ E ∑ ∣ v ′ ⟩ ⊗ ∣ v ⟩
就是均匀地走到v v v 的邻居上。不难发现,如果整个图是完全图,而且没有结构的,那么我们采用这样的均匀随机走法:
∣ u , v ⟩ ↦ 1 ∣ V ∣ ∑ u ∈ V ∣ u , v ⟩ |u,v\rangle\mapsto\frac{1}{\sqrt{|V|}}\sum_{u\in V}|u,v\rangle
∣ u , v ⟩ ↦ ∣ V ∣ 1 u ∈ V ∑ ∣ u , v ⟩
无论你走几步再测量第二寄存器,都和直接在原图上均匀随机没区别。但当在一条链上这样随机游走,可能会有一些其他性质。
但是 Grover 提出一种 Coin flip 的测量。他的朴素想法是,既然我们都知道从哪个结点来的,我们要分开讨论,走回上一个结点的概率和其他点的概率。即:
( C v ⊗ I ) ∣ u , v ⟩ = α ∣ u , v ⟩ + β ∑ v ′ ∈ N v \ { u } ∣ v ′ , v ⟩ (C_v\otimes I)|u,v\rangle=\alpha|u,v\rangle+\beta\sum_{v'\in N_v\backslash\{u\}}|v',v\rangle
( C v ⊗ I ) ∣ u , v ⟩ = α ∣ u , v ⟩ + β v ′ ∈ N v \ { u } ∑ ∣ v ′ , v ⟩
其中N v N_v N v 表示v v v 的邻居集合。我们就分开讨论了返回u u u 的概率α 2 \alpha^2 α 2 和其他情况的概率。那么为了让C v ⊗ I C_v\otimes I C v ⊗ I 是酉变换,就需要:
{ α 2 + ( ∣ N v ∣ − 1 ) β 2 = 1 2 α ⋅ β + ( ∣ N v ∣ − 2 ) β 2 = 0 \begin{cases}
\alpha^2+(|N_v|-1)\beta^2=1\\
2\alpha\cdot\beta+(|N_v|-2)\beta^2=0
\end{cases}
{ α 2 + ( ∣ N v ∣ − 1 ) β 2 = 1 2 α ⋅ β + ( ∣ N v ∣ − 2 ) β 2 = 0
这是将C v C_v C v 写成矩阵形式后,要求矩阵列形成了一个归一化的正交基。
所以我们解得
( α , β ) = ± ( 1 , 0 ) or ± ( 2 ∣ N v ∣ − 1 , 2 ∣ N v ∣ ) (\alpha,\beta)=\pm(1,0)\text{ or }\pm\left (\frac{2}{|N_v|}-1,\frac{2}{|N_v|}\right )
( α , β ) = ± ( 1 , 0 ) or ± ( ∣ N v ∣ 2 − 1 , ∣ N v ∣ 2 )
显然我们更关心后面这种情况。假设图是无向的,此时我们发现:
( C v ⊗ I ) ∣ u , v ⟩ = 2 ⋅ 1 ∣ N v ∣ ∑ v ′ ∈ N v ∣ v ′ , v ⟩ − ∣ u , v ⟩ (C_v\otimes I)|u,v\rangle=2\cdot\frac{1}{|N_v|}\sum_{v'\in N_v}|v',v\rangle-|u,v\rangle
( C v ⊗ I ) ∣ u , v ⟩ = 2 ⋅ ∣ N v ∣ 1 v ′ ∈ N v ∑ ∣ v ′ , v ⟩ − ∣ u , v ⟩
实际上就是
C v ⊗ I = 2 ∑ v ∣ ψ v ⟩ ⟨ ψ v ∣ − I C_v\otimes I=2\sum_v|\psi_v\rangle\langle\psi_v|-I
C v ⊗ I = 2 v ∑ ∣ ψ v ⟩ ⟨ ψ v ∣ − I
其中∣ ψ v ⟩ = 1 ∣ N v ∣ ∑ v ′ ∈ N v ∣ v ′ , v ⟩ |\psi_v\rangle=\frac{1}{\sqrt{|N_v|}}\sum_{v'\in N_v}|v',v\rangle ∣ ψ v ⟩ = ∣ N v ∣ 1 ∑ v ′ ∈ N v ∣ v ′ , v ⟩ 。
这就是 Grover 的 coin flip 来源。
更一般地,我们假设图是全联通也无向的,我们用一个矩阵P ∈ R N × N P\in\mathbb{R}^{N\times N} P ∈ R N × N 来表示从结点间的转移关系,譬如P k , j P_{k,j} P k , j 表示从结点j j j 到结点k k k 转移的概率,如果设为 0 就说明他们不连通。
那么 Grover coin flip 就可以一般化地变为:
2 ∑ v ∣ ψ v ⟩ ⟨ ψ v ∣ − I 2\sum_v|\psi_v\rangle\langle\psi_v|-I
2 v ∑ ∣ ψ v ⟩ ⟨ ψ v ∣ − I
其中∣ ψ v ⟩ = ∑ u ∈ V P u , v ∣ u , v ⟩ |\psi_v\rangle=\sum_{u\in V}\sqrt{P_{u,v}}|u,v\rangle ∣ ψ v ⟩ = ∑ u ∈ V P u , v ∣ u , v ⟩ 。
注意,这和第一章中有点小区别就是,把第一个寄存器看作当前结点,还是第二个寄存器看作当前结点。
可以隐隐约约感觉到,这个量子随机游走的之所以可以平方加速,很可能就是U = S ( 2 Π − I ) U=S(2\Pi-I) U = S ( 2 Π − I ) 的特征值是e i arccos λ e^{i\arccos\lambda} e i a r c c o s λ 这个有个三角函数,然后三角函数泰勒展开是一个根号平方之类的。
一个可能的实现(IsQ 风格)为:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 defgate U = [...]; // 2 Pi-I defgate S = [...]; // 交换变换 unit random_walk(){ qbit q[n]; q = |0 >; // start from |0 , 0 > qbit anc; int a = M(anc); while (!a) { U(q[3 ], q[2 ], q[1 ], q[0 ]); M(q[1 ]); M(q[0 ]); S(q[3 ], q[2 ], q[1 ], q[0 ]); U_marked(q[3 ], q[2 ], anc); a = M(anc); } }