量子会計士

先輩、それ本気でノイマン型でやるんですか?!と言われないためにあがく。

Quantum Information Science I メモ その5 量子ゲート


\def\bra#1{\mathinner{\left\langle{#1}\right|}}
\def\ket#1{\mathinner{\left|{#1}\right\rangle}}
\def\braket#1#2{\mathinner{\left\langle{#1}\middle|#2\right\rangle}}\\
\require{HTML}

Bloch sphere上での回転等 = 量子ゲート(量子計算における基本計算)になる。

Pauli matrices パウリ行列

Bloch sphere上で、

 \displaystyle \sigma_x=\begin{pmatrix} {0}& {1}\\ {1} & {0} \end{pmatrix} : x軸を中心に180度回転
 \displaystyle \sigma_y=\begin{pmatrix} {0} & {-i}\\ {i} & {0} \end{pmatrix} : y軸を中心に180度回転
\sigma_z=\begin{pmatrix} {1}& {0}\\ {0} & {-1} \end{pmatrix} : z軸を中心に180度回転

特性

  • \sigma_x\sigma_y = i \sigma_z
  • \sigma_y\sigma_z = i \sigma_x
  • \sigma_z\sigma_x = i \sigma_y

順番を変えるとマイナスつく

  • \sigma_y\sigma_x = -i \sigma_z
  • \sigma_x\sigma_z = -i \sigma_y

H (おそらくHadamard transform)

H=\frac{1}{\sqrt{2}}\begin{pmatrix} {1}& {1}\\ {1} & {-1} \end{pmatrix} : 原点から (sin(\frac{\pi}{8}), 0, cos(\frac{\pi}{8}))への直線を軸に回転

例:

\ket{\uparrow}\ket{\rightarrow}を相互に変換

\ket{\downarrow}\ket{\leftarrow}を相互に変換

S

S=\begin{pmatrix} {1}& {0}\\ {0} & {i} \end{pmatrix} : S^2 = Z

T

T=\begin{pmatrix} {1}& {0}\\ {0} & {e^{\pi\frac{i}{4}}} \end{pmatrix} : T^2 = S

Pauli matrixを使って、\thetaだけ回転するには

ブロッホ球上で、 x軸を中心に \theta回転させるのは、 e^{-i\theta{\sigma_x/2}} y軸を中心に \theta回転させるのは、 e^{-i\theta{\sigma_y/2}} z軸を中心に \theta回転させるのは、 e^{-i\theta{\sigma_z/2}}

ここで、パウリ行列

\sigma_z=\begin{pmatrix} {1}& {0}\\ {0} & {-1} \end{pmatrix}
 e^{-i\theta{\phi_z}}=\begin{pmatrix} {e^{-i\theta/2}}& {0}\\ {0} & {e^{i\theta/2}} \end{pmatrix}   = {e^{-i\theta/2}}\begin{pmatrix} {1}& {0}\\ {0} & {{e^{i\theta}}} \end{pmatrix}
 = \begin{pmatrix} {1}& {0}\\ {0} & {{e^{i\theta}}} \end{pmatrix} \because global phase(係数?)は無視できるので

行列Xを指数のところに持ってくると、結果は行列になって、底はそのままで、指数部分にXを除いたものが来るのかぁ。と思ったが違った。先生、素人相手に端折りすぎだぜ。(元々、MITの学生さん相手だから大丈夫なのか。。) 理解した内容は、ここに書く


z軸を中心に\theta回転する方法が分かったので、 例として、\displaystyle \frac{\ket{0}+\ket{1}}{\sqrt{2}} をz軸を中心に\displaystyle 90^\circ (\frac{\pi}{2})回転 (以下の図で、回転して青を赤に)

f:id:hanimarushama:20181118015410p:plain:w250

\displaystyle \begin{pmatrix} {1}& {0}\\ {0} & {{e^{i\pi/2}}} \end{pmatrix}  \begin{pmatrix} {\frac{1}{\sqrt{2}}}\\ {\frac{1}{\sqrt{2}}}  \end{pmatrix} = \begin{pmatrix} {\frac{1}{\sqrt{2}}}\\ {\frac{1}{\sqrt{2}}e^{i\pi/2}}  \end{pmatrix} =  \begin{pmatrix} {\frac{1}{\sqrt{2}}}\\ {\frac{i}{\sqrt{2}}}  \end{pmatrix}

 e^{-i\theta/2\sigma_y}を別の形で表す

  1. 対角化する。
  2. テイラー展開する

対角化(Diagonalize)すると、 \displaystyle U{\sigma_y}U^{\dagger}=Dとして、

\displaystyle e^{-i{\theta}D/2}としてから

Undiagonalizeする\displaystyle U^{\dagger}e^{-i{\theta}D/2}U っとのことですが、このUを出さないといけないが、そこはわかりませんでした。「この先は自明じゃ」。ということかもしれないが、私には自明ではない。。でも、もう一つ分かればよしとして、対角化の方は深追いしない。

行列の指数計算

\displaystyle e^{X} \equiv \sum_{k=0}^{\infty}\frac{1}{k!}X^{k}

最初は、なんと直感的でない定義だ。と思ったけど、以下のテイラー級数で表現したexからきてるのか

\displaystyle e^{x} = \sum_{k=0}^{\infty}\frac{x^{k}}{k!}

ここで、Xが対角化されていると例えば、2by2の行列でいうと

 \begin{pmatrix} {a}& {}\\ {} & {b} \end{pmatrix}^x = \begin{pmatrix} {a^x}& {}\\ {} & {b^x} \end{pmatrix}

なので、

\displaystyle e^{X} = \sum_{k=0}^{\infty}\frac{1}{k!}\begin{pmatrix} {a^k}& {}\\ {} & {b^k} \end{pmatrix} = \begin{pmatrix} {e^a}& {}\\ {} & {e^b} \end{pmatrix}

となることから、対角化して...という話が出ていたのかと納得

テイラー展開する

すでに、行列のべき乗の定義の時点でテイラー展開が出てきているが、定義に基づいてテイラー展開した計算をしているよう

\displaystyle e^{iAx} = \sum_{k=0}^{\infty}\frac{1}{k!}{iAx}^{k}で、

A2 = I だと、 \displaystyle e^{iAx} = \sum_{k=0}^{\infty}\frac{1}{k!}{(iAx)}^{k} = (\cos x) I(偶数項)+i(\sin x) A(奇数項)

これを使うと e^{-i\theta/2\sigma_y} = (\cos\frac{\theta}{2}) I-i(\sin \frac{\theta}{2})\sigma_y

\displaystyle = \begin{pmatrix} {\cos \frac{\theta}{2}}& {-\sin \frac{\theta}{2}}\\ {\sin \frac{\theta}{2}} & {\cos \frac{\theta}{2}} \end{pmatrix}

x軸周りの回転

同様に、 e^{-i\theta/2\sigma_x} = (\cos\frac{\theta}{2}) I-i(\sin \frac{\theta}{2})\sigma_x

\displaystyle = \begin{pmatrix} {\cos \frac{\theta}{2}}& {-\sin \frac{\theta}{2}}\\ {-\sin \frac{\theta}{2}} & {\cos \frac{\theta}{2}} \end{pmatrix}