らんだむな記憶

blogというものを体験してみようか!的なー

Qiskit (49) —量子振幅推定

量子振幅推定について見ていく。$\Omega = \mathcal{A} \ket{0}$ は、

$$
\begin{align*}
\ket{\Omega} = C^{\prime\prime} \ket{\omega^\perp} + \braket{\omega|\Omega} \ket{\omega}
\end{align*}
$$

と書けるのであった。ここで $C^{\prime\prime} = \sqrt{1 - |\braket{\omega|\Omega}|^2}$ である。よって、$\theta = \arccos C^{\prime\prime}$ をとることで、

$$
\begin{align*}
\ket{\Omega} = \cos \theta \ket{\omega^\perp} + \sin \theta \ket{\omega}
\tag{1}
\end{align*}
$$

とおける。今回は (1) 式が何かしらの $\theta$ で与えられているという前提で $\theta$ を計算で求めたいというテーマになっている。($\mathcal{A}$ が具体的には分かっていないケースだろうか?)
$\theta$ が求まると、量子振幅増幅によって、$\ket{\omega}$ を良い精度で求めることができる。


$\mathcal{Q}$ は $\ket{\omega}$ と $\ket{\Omega}$ が張る 2 次元空間内で $2\theta$ 回転させる演算子であるであるが、その固有値を求めたい。

$$
\begin{align*}
\begin{cases}
\mathcal{Q} \ket{\omega^\perp} = \cos 2\theta \ket{\omega^\perp} + \sin 2\theta \ket{\omega} \\
\mathcal{Q} \ket{\omega} = - \sin 2\theta \ket{\omega^\perp} + \cos 2\theta \ket{\omega}
\end{cases}
\end{align*}
$$

を踏まえた上で、$\ket{x} = a \ket{\omega^\perp} + b \ket{\omega}$ に適用してみる。すると、

$$
\begin{align*}
\mathcal{Q} \ket{x} &= a (\cos 2\theta \ket{\omega^\perp} + \sin 2\theta \ket{\omega}) + b (- \sin 2\theta \ket{\omega^\perp} + \cos 2\theta \ket{\omega}) \\
&= (a \cos 2\theta - b \sin 2\theta) \ket{\omega^\perp} + (b \cos 2\theta + a \sin 2\theta) \ket{\omega}
\end{align*}
$$

であるが、右辺が $\ket{x}$ の定数倍になって欲しい。つまり、

$$
\begin{align*}
a (b \cos 2\theta + a \sin 2\theta) - b (a \cos 2\theta - b \sin 2\theta) = 0
\end{align*}
$$

を考えたい。$a \neq 0$ として、$\mu = \frac{b}{a}$ とおくと、$(\mu^2 + 1) \sin 2\theta = 0$ を得るので、ここから $\mu = \pm\sqrt{-1}$ が得られる。この時、$\mathcal{Q} \frac{\ket{\omega^\perp} \mp i \ket{\omega}}{\sqrt{2}} = e^{\pm 2i\theta} \frac{\ket{\omega^\perp} \mp i \ket{\omega}}{\sqrt{2}}$ が成立する。$\ket{\Omega_{\pm}} = \frac{\ket{\omega^\perp} \mp i \ket{\omega}}{\sqrt{2}}$ と置く。

ここから、$\mathcal{Q}$ は求めたい $\theta$ を位相に持つような固有値 $e^{\pm 2i\theta}$ を持つ演算子であることが分かったので、量子位相推定を用いて、$\theta$ の近似値を求めたい。

ところで、固有値 $e^{\pm 2i\theta}$ の固有ベクトル $\ket{\Omega_{\pm}}$ を直接利用できると話が早いが、それは難しいので、$\ket{\Omega_{+}}$ と $\ket{\Omega_{-}}$ の線型結合を利用する。実は $\ket{\Omega}$ がその線型結合の 1 つであり、これは前提として与えられているので、これを固有ベクトルの代わりに用いることにする。

$\ket{\omega^\perp} = \frac{\ket{\Omega_{+}} + \ket{\Omega_{-}}}{\sqrt{2}}$, $\ket{\omega} = i \frac{\ket{\Omega_{+}} - \ket{\Omega_{-}}}{\sqrt{2}}$ なので、

$$
\begin{align*}
\ket{\Omega} &= \cos \theta \frac{\ket{\Omega_{+}} + \ket{\Omega_{-}}}{\sqrt{2}} + i \sin \theta \frac{\ket{\Omega_{+}} - \ket{\Omega_{-}}}{\sqrt{2}} \\
&= \frac{(\cos \theta + i \sin \theta) \ket{\Omega_{+}} + (\cos \theta - i \sin \theta) \ket{\Omega_{-}}}{\sqrt{2}} \\
&= \frac{1}{\sqrt{2}}(e^{i \theta} \ket{\Omega_{+}} + e^{-i \theta} \ket{\Omega_{-}})
\end{align*}
$$

となり、$\ket{\Omega_{+}}$ と $\ket{\Omega_{-}}$ の線型結合として具体的な形が分かった。

書籍の (4.14.5) 式はたぶん第 2 項で $e^{-i \theta}$ の符号が抜けていて、本来は

$$
\begin{align*}
\xrightarrow{C\mathcal{Q}} \frac{e^{i \theta}}{\sqrt{2M}} \sum_{x=0}^{M-1} e^{2 i x\theta} \ket{x} \ket{\Omega_{+}} + \frac{e^{-i \theta}}{\sqrt{2M}} \sum_{x=0}^{M-1} e^{-2 i x\theta} \ket{x} \ket{\Omega_{-}}
\end{align*}
$$

のはずである。また、$C\mathcal{Q}$ の適用は、付け足した $m$ ビットのうちの何番目を制御ビットと解釈するかで $\mathcal{Q}$ を適用する回数が変わる。

後はそのまま量子位相推定と同様のことをすると、固有ベクトルを 2 つ使った都合で頻度が高く観測される状態が 2 つになる。が、どちらを使っても $\theta$ の良い近似が得られ、故に $\sin^2 \theta$ のよい近似が得られるので、(1) 式の確率振幅が決定される、ということになる。

細かい検証は飛ばしてしまったが、p.178 まで完了とする。