量子コンピュータの基本 - 量子状態(物理状態)と観測量
§ この記事の目的
量子コンピューティングでは、一つ一つの量子ビットがどのような状態にあるのかを表す状態を量子状態と呼びます。また、量子状態を観測した時に得られる物理量(複数の組み合わせの値)を観測量と呼びます。
この記事では、量子状態と観測量に関わる数式や、エルミート演算子との関係について解説します。
§ 事象と確率変数と期待値
事象とは、ある物理的な状態を観測したときに得られる結果の状態を言います。
例えば、量子コンピュータおける量子ビットであれば0または1が事象として得られますし、天候を例に取れば、快晴・晴れ・曇りのような状態(事象)が観測結果として得られます。
今、N個の事象が得られる観測対象があるとして、事象の集合をSとすると、Sは以下のように書くことができます。
S = \{s_1, s_2, ..., s_N\}
Sを観測した際に、Sの中の任意の事象s_iから得られる観測値をx_iとすると、x_iの集合Xは以下となります。
X = \{x_1,x_2,...,x_N\}\quad(式1)
さらに、事象s_iが発生する(起き得る)確率をp_iとすると、各事象が発生する確率を表す集合Pは以下のように書くことができます。
P = \{p_1,p_2,...,p_N\}\quad(式2)
ここで、集合Pは確率を表すため、以下が成立します。
p_iは実数かつp_i≧0として、
<X>=\sum_{i=1}^{N}p_ix_i\quad(式3)
ここで、x_iは発生する確率p_iに基づいて得られる変数なので、確率変数と呼びます。
また、記号"<"と">"は期待値を表す記号です。
§ 振幅ベクトルと対角行列と期待値
次に、上記で確認した確率や確率変数を行列及びベクトルで表現します。
まず、確率p_iの平方根を要素とする以下のベクトルを考えます。
\mathbf{q} = \begin{pmatrix} \sqrt{q_1} \\ \sqrt{q_2} \\ ... \\ \sqrt{q_N} \end{pmatrix}\quad(式4)
また、(式4)をOne-hotベクトルで表現すると以下のように書くことができます。
\mathbf{q} = \sqrt{q_1} \begin{pmatrix} 1 \\ 0 \\ ... \\ 0 \end{pmatrix}
+ \sqrt{q_2} \begin{pmatrix} 0 \\ 1 \\ ... \\ 0 \end{pmatrix}
+ ...
+ \sqrt{q_N} \begin{pmatrix} 0 \\ 0 \\ ... \\ 1 \end{pmatrix}\quad(式5)
(式5)
さらに、確率変数の集合Xを以下のように対角行列に置き換えます。
X = \begin{pmatrix} x_1 & 0 & ... & 0 \\ 0 & x_2 & ... & 0 \\ & & \ddots & \\ 0 & 0 & ... & x_N \end{pmatrix}\quad(式6)
(式5)
\begin{align}
<X>&= \mathbf{q}^TX\mathbf{q} \quad ... \; (式7)\\
&=\begin{pmatrix} \sqrt{p_1} & \sqrt{p_2} & ... \end{pmatrix}
\begin{pmatrix} x_1 & 0 & ... & 0 \\ 0 & x_2 & ... & 0 \\ & & \ddots & \\ 0 & 0 & ... & x_N \end{pmatrix}
\begin{pmatrix} \sqrt{p_1} \\ \sqrt{p_2} \\ ... \end{pmatrix} \\
&=\sum_{i=1}^{N}\sqrt{p_i}x_i\sqrt{p_i} \\
&=\sum_{i=1}^{N}p_ix_i
\end{align}
事象S、確率変数X、確率Pを行列及びベクトルを用いて表現すると、(式7)のように書くことができます。
§ 複素振幅ベクトルとエルミート演算子による表現
(式7)をさらに一般化し発展させます。
ベクトルqを複素振幅を持つベクトルα、行列Xをエルミート演算子Oに置き換えます。エルミート演算子は自身の複素共役転置行列に等しく、以下を満たします。
ここで、エルミート演算子は自己随伴行列とも呼ばれます。
今、ここでαを以下のようにN次元のベクトルとします。
\mathbf{\alpha}=\{\alpha_1,\alpha_2,...,\alpha_N\}^T\quad(式8)
また、Oを互いに直交する成分ベクトルから成る行列とします。
O = \{\mathbf{v_1},\mathbf{v_2},...,\mathbf{v_N}\}\\
ただし、\mathbf{v_i}^†\mathbf{v_j}=\delta_{ij}\quad (i,j=1,2,3,...,N)\quad(式9)
ベクトルviは互いに直交する正規直交ベクトルで次元がN個であり、また、ベクトルαも次元がNであることから同一ヒルベルト空間に存在すると言えます。よって、複素振幅ベクトルαはvを用いて、以下のように記述することができます。
\mathbf{\alpha} = \alpha_1\mathbf{v_1} + \alpha_2\mathbf{v_2} + ... + \alpha_N\mathbf{v_N}\quad(式10)
(式7)
\begin{align}
<O>&= \mathbf{\alpha}^†O\mathbf{\alpha} \\
&=\Big(\sum_{i=1}^{N}a_i\mathbf{v_i}^†\Big)O\Big(\sum_{i=1}^{N}a_i\mathbf{v_i}\Big) \\
&=\sum_{i=1}^{N}|\alpha_i|^2\mathbf{v_i}^†O\mathbf{v_i} \\
&=\sum_{i=1}^{N}|\alpha_i|^2o_i\quad(式11)
\end{align}
ここで(式11)において、以下を用いました。
O\mathbf{v_i}=o_i\mathbf{v_i}\quad(式12) \\
\mathbf{v_i}^†\mathbf{v_j}=\delta_{ij}\quad(式13)
ここで(式11)について注目してみます。
|α_i|^2は確率振幅の2乗なので確率を表します。
<O>は期待値であることから、期待値 = 確率 x 測定値の計算式より、o_iはiに対する測定値(実数)とみなすことができます。
さらに、(式12)に注目します。
Oは行列、\mathbf{v_i}はベクトルなので、\mathbf{v_i}はOに対する固有ベクトル、o_iは行列Oに対する固有値となります。
上記の2点から、次の公理が導かれます。
演算子の固有値 = 観測した時の測定値
観測される測定値は必ず実数になります。複素数はあくまで概念的な枠組みであり、実測値にはなりません。よって、固有値も実数が得られます。
このことから、エルミート演算子の各要素も実数のみとなります。
以下の公理が成立します。
演算子がエルミートである = 測定値が実数である
本節の冒頭で、(式1)の集合Xをエルミート演算子Oに置き換えました。
本節の説明でOの内容がわかったので、今度はOをXに戻すことを考えます。
当然の成り行きですが、Oが実数からなる行列のため、Xも実数からなる行列となります。
Xの内容は(式1)からわかる通り、各事象の具体的な値を意味します。
つまり、エルミート行列は観測した時の測定値を保持していることから、これらをまとめて観測量と言います。