量子計算理論(森前 著) の演習問題を解く part8

こんにちは。Kumaです。

最近、量子コンピュータについて勉強しています。
今回は有名な以下の本の演習問題について、解答が載っていないので一部書いてみたいとおもいます。
f:id:phymath1991:20181224165540p:plain
量子計算理論 量子コンピュータの原理 | 森北出版株式会社

本書の勉強会が大阪で開催されているそうです。
演習問題の解答も一部公開中です。(私の我流よりも少し見通しの良い解き方になっていますね)
大阪近郊の方はぜひ参加してみてください。
sites.google.com


今回はpp.39- です。

pp.39 複素係数表示と実係数表示


複素係数表示におけるゲート \Lambda(R_{\frac{\pi}{2}}) は実係数表示においては
 T( I \otimes I \otimes H ) T (I \otimes I \otimes H ) を作用させることによりシミュレートできることを示せ。
ここで、複素係数表示(2量子ビット)は
 | \psi \rangle = \sum c_{z} | z \rangle
であり、実係数表示(2量子ビット+1量子ビット)は、 c_{z} = \alpha_{z} + j \beta_{z} として
 | \tilde{ \psi } \rangle = \sum ( \alpha_{z} | z \rangle \otimes | 0 \rangle + \beta_{z} | z \rangle \otimes | 1 \rangle  )
で定義される。
さらに Tはトフォリゲート(CCXゲート)、 \Lambda(U) はコントロールUゲート、HはHadamrdゲートであり

 \begin{eqnarray*}
 T &=& ( I ^{\otimes 2} - | 11 \rangle \langle 11 | ) \otimes I +  | 11 \rangle \langle 11 | \otimes X \\
 \Lambda(U) &=& | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes U \\
H &=& \frac{1}{\sqrt{2}} ( | 0 \rangle \langle 0 | +  | 0 \rangle \langle 1 | + | 1 \rangle \langle 0 | - | 1 \rangle \langle 1 | )
 \end{eqnarray*}
である。

  • 解答

まず Hについて

 \begin{eqnarray*}
 H | 0 \rangle = \frac{1}{\sqrt{2}} ( | 0 \rangle + | 1 \rangle ) \\
 H | 1 \rangle = \frac{1}{\sqrt{2}} ( | 0 \rangle - | 1 \rangle ) \\
 \end{eqnarray*}
により、

 \begin{eqnarray*}
  | + \rangle \equiv \frac{1}{\sqrt{2}} ( | 0 \rangle + | 1 \rangle ) \\
  | - \rangle \equiv \frac{1}{\sqrt{2}} ( | 0 \rangle - | 1 \rangle ) \\
 \end{eqnarray*}
と定義する。


 \begin{eqnarray*}
 | \tilde{ \psi } \rangle &=& \sum ( \alpha_{z} | z \rangle \otimes | 0 \rangle + \beta_{z} | z \rangle \otimes | 1 \rangle  ) \\
 (I \otimes I \otimes H )| \tilde{ \psi } \rangle &=& \sum ( \alpha_{z} | z \rangle \otimes | + \rangle + \beta_{z} | z \rangle \otimes | - \rangle  ) \\
 T(I \otimes I \otimes H )| \tilde{ \psi } \rangle &=& ( \alpha_{11} | 11 \rangle \otimes X | + \rangle  +  \beta_{11} | 11 \rangle \otimes X | - \rangle ) + \sum_{z \neq 11} ( \alpha_{z} | z \rangle \otimes | + \rangle +  \beta_{z} | z \rangle \otimes | - \rangle  ) \\
 \end{eqnarray*}

ここで

 \begin{eqnarray*}
 X | + \rangle &=& | + \rangle \\
 X | - \rangle &=& - | - \rangle \\
 \end{eqnarray*}

よって、

 \begin{eqnarray*}
 T(I \otimes I \otimes H )| \tilde{ \psi } \rangle &=& ( \alpha_{11} | 11 \rangle \otimes  | + \rangle  -  \beta_{11} | 11 \rangle \otimes  | - \rangle ) + \sum_{z \neq 11} ( \alpha_{z} | z \rangle \otimes | + \rangle +  \beta_{z} | z \rangle \otimes | - \rangle  ) \\
 \end{eqnarray*}
となる。

ここで、

 \begin{eqnarray*}
 H | + \rangle &=& | 0 \rangle \\
 H | - \rangle &=& | 1 \rangle \\
 \end{eqnarray*}

よって

 \begin{eqnarray*}
 (I \otimes I \otimes H )T(I \otimes I \otimes H )| \tilde{ \psi } \rangle &=& ( \alpha_{11} | 11 \rangle \otimes  | 0 \rangle  -  \beta_{11} | 11 \rangle \otimes  | 1 \rangle ) + \sum_{z \neq 11} ( \alpha_{z} | z \rangle \otimes | 0 \rangle +  \beta_{z} | z \rangle \otimes | 1 \rangle  ) \\
 \end{eqnarray*}

最後に Tを作用させると、

 \begin{eqnarray*}
 T(I \otimes I \otimes H )T(I \otimes I \otimes H )| \tilde{ \psi } \rangle &=& ( \alpha_{11} | 11 \rangle \otimes  | 1 \rangle  -  \beta_{11} | 11 \rangle \otimes  | 0 \rangle ) + \sum_{z \neq 11} ( \alpha_{z} | z \rangle \otimes | 0 \rangle +  \beta_{z} | z \rangle \otimes | 1 \rangle  ) \\
 \end{eqnarray*}
元の状態 | \tilde{\psi} \rangle と比較すると、 z = 11に相当する量子状態(制御ビットが1かつ標的ビットが1)の項だけが  \alpha_{z} + j \beta_{z} \rightarrow_{( \times j )} - \beta_{z} + j \alpha_{z}  \pi/2回転した状態に移されている。
すなわち複素数表示において  \Lambda (R_{\frac{\pi}{2}}) ゲートを作用させたことに他ならない。
*1

今回はここまで。

*1:回転ゲート Rは、 |1 \rangle のみを回転させるゲートであることに注意しよう。 その制御ゲートversionなので、制御ビットが1のときだけ Rが作用することになる。 結果として | 11 \rangle だけが回転する。

量子計算理論(森前 著) の演習問題を解く part7

こんにちは。Kumaです。

最近、量子コンピュータについて勉強しています。
今回は有名な以下の本の演習問題について、解答が載っていないので一部書いてみたいとおもいます。
f:id:phymath1991:20181224165540p:plain
量子計算理論 量子コンピュータの原理 | 森北出版株式会社

本書の勉強会が大阪で開催されているそうです。
演習問題の解答も一部公開中です。(私の我流よりも少し見通しの良い解き方になっていますね)
大阪近郊の方はぜひ参加してみてください。
sites.google.com


今回はpp.38- です。

pp.38 Hadamardテスト

f:id:phymath1991:20190113185722p:plain:w300
Hadamardテスト

一番上の量子ビットを測定した時に0が得られる確率は

 \begin{eqnarray*}
 \frac{2+ \langle \psi | U | \psi \rangle +  \langle \psi | U^{\dagger} | \psi \rangle }{4}
 \end{eqnarray*}
であることを示せ。
ただし

H = \frac{1}{\sqrt{2}} ( | 0 \rangle \langle 0 | + | 1 \rangle \langle 0 |  + | 0 \rangle \langle 1 |  - | 1 \rangle \langle 1 | )

  • 解答

ゲートを左から順に U_{1}, U_{2}, U_{3}とおく。

 \begin{eqnarray*}
U_{1} &=& H \\
U_{2} &=& | 0 \rangle \langle 0 | \otimes I + | 1 \rangle \langle 1 | \otimes U \\
U_{3} &=& H  \\
 \end{eqnarray*}

初期状態は  | 0 \rangle \otimes | \psi \rangle です。

 \begin{eqnarray*}
 U_{1} ( | 0 \rangle \otimes | \psi \rangle ) &=& \frac{1}{\sqrt{2}}( | 0 \rangle +  | 1 \rangle ) \otimes | \psi \rangle \\
 U_{1}U_{2} ( | 0 \rangle \otimes | \psi \rangle ) &=& ( | 0 \rangle \langle 0 | \otimes I + | 1 \rangle \langle 1 | \otimes U)  \frac{1}{\sqrt{2}}( | 0 \rangle +  | 1 \rangle ) \otimes | \psi \rangle \\
&=&   \frac{1}{\sqrt{2}}( | 0 \rangle \otimes | \psi \rangle +  | 1 \rangle \otimes U | \psi \rangle) \\
 U_{1}U_{2}U_{3} ( | 0 \rangle \otimes | \psi \rangle ) &=&  \frac{1}{2}( | 0 \rangle \otimes | \psi \rangle +  | 1 \rangle \otimes | \psi \rangle  +  | 0 \rangle \otimes U | \psi \rangle -  | 1 \rangle \otimes U | \psi \rangle)
 \end{eqnarray*}
これがゲート通過後の量子状態 | \psi_{out} \rangle である。第一量子ビットが0である確率 p_{0}は、

p_{0} = | ( | 0 \rangle \langle 0 | \otimes I ) | \psi_{out} \rangle |^{2}
である。
*1


 \begin{eqnarray*}
p_{0} &=& | | \psi \rangle + U | \psi \rangle | ^{2} \frac{1}{4} \\
&=& ( \langle \psi | + \langle \psi | U^{\dagger} )( | \psi \rangle + U| \psi \rangle ) \frac{1}{4} \\
&=& ( \langle \psi | \psi \rangle +  \langle \psi | U | \psi \rangle +  \langle \psi | U^{\dagger} | \psi \rangle +  \langle \psi | U^{\dagger} U | \psi \rangle  )  \frac{1}{4} \\
&=&  ( \langle \psi | \psi \rangle +  \langle \psi | U | \psi \rangle +  \langle \psi | U^{\dagger} | \psi \rangle +  \langle \psi  | \psi \rangle  )  \frac{1}{4} \\ 
&=&  (1 +  \langle \psi | U | \psi \rangle +  \langle \psi | U^{\dagger} | \psi \rangle +  1  )  \frac{1}{4} \\
&=&  (2 +  \langle \psi | U | \psi \rangle +  \langle \psi | U^{\dagger} | \psi \rangle)  \frac{1}{4} 
 \end{eqnarray*}
となり、示された。


なお第一量子ビットが1である確率 p_{1}

 \begin{eqnarray*}
p_{1} &=&  | ( | 1 \rangle \langle 1 | \otimes I ) | \psi_{out} \rangle |^{2} \\
&=& | | \psi \rangle - U | \psi \rangle | ^{2} \frac{1}{4} \\
&=& ( \langle \psi | - \langle \psi | U^{\dagger} )( | \psi \rangle - U| \psi \rangle ) \frac{1}{4} \\
&=&  ( \langle \psi | \psi \rangle -  \langle \psi | U | \psi \rangle -  \langle \psi | U^{\dagger} | \psi \rangle +  \langle \psi  | \psi \rangle  )  \frac{1}{4} \\ 
&=&  (2 -  \langle \psi | U | \psi \rangle -  \langle \psi | U^{\dagger} | \psi \rangle)  \frac{1}{4} 
 \end{eqnarray*}
すなわち p_{0} + p_{1} = 1 が確認できる。

今回はここまで。

*1:ちなみに第一量子ビットが1である確率 p_{1}
p_{1} = | ( | 1 \rangle \langle 1 | \otimes I ) | \psi_{out} \rangle |^{2}
であるし、 第一および第二量子ビットが同時に1である確率 p_{11}
p_{11} = | ( | 1 \rangle \langle 1 | \otimes | 1 \rangle \langle 1 | ) | \psi_{out} \rangle |^{2}
である。

量子計算理論(森前 著) の演習問題を解く part6

こんにちは。Kumaです。

最近、量子コンピュータについて勉強しています。
今回は有名な以下の本の演習問題について、解答が載っていないので一部書いてみたいとおもいます。
f:id:phymath1991:20181224165540p:plain
量子計算理論 量子コンピュータの原理 | 森北出版株式会社

本書の勉強会が大阪で開催されているそうです。
演習問題の解答も一部公開中です。(私の我流よりも少し見通しの良い解き方になっていますね)
大阪近郊の方はぜひ参加してみてください。
sites.google.com


今回はpp.37- です。

pp.37.2 CCZゲート


CCZは以下の回路と等価であることを示せ。

f:id:phymath1991:20190113105807p:plain
回路図
ここで R_{\theta}は回転演算である。

R_{\theta} 
=
\begin{pmatrix}
1 & 0 \\
0 & e^{j \theta}
\end{pmatrix}
=
 | 0 \rangle \langle 0 |  + e^{j \theta} | 1 \rangle \langle 1 |
なおCCZとは3bit量子ビット演算であり、2つの制御ビットが共に1であるときに限り標的ビットにZを作用させる。

CCZ = ( I ^{\otimes ^{2}} - | 11 \rangle \langle 11 | ) \otimes I + | 11 \rangle \langle 11 | \otimes Z

  • 解答

回路図のゲート演算を左から順に U_{1}, U_{2}, U_{3}, U_{4}, U_{5} とする。

 \begin{eqnarray*}
U_{1} &=& I \otimes ( | 0 \rangle \langle 0 | \otimes I + | 1 \rangle \langle 1 | \otimes R_{\frac{\pi}{2}} \\
U_{2} &=& ( | 0 \rangle \langle 0 | \otimes I + | 1 \rangle \langle 1 | \otimes X | \otimes I \\
U_{3} &=& I \otimes ( | 0 \rangle \langle 0 | \otimes I + | 1 \rangle \langle 1 | \otimes R^{\dagger}_{\frac{\pi}{2}}  \\
U_{4} &=& U_{2} \\
U_{5} &=& | 0 \rangle \langle 0 | \otimes I \otimes I+ | 1 \rangle \langle 1 | \otimes I \otimes R_{\frac{\pi}{2}} \\
 \end{eqnarray*}
あとは U_{4}U_{5}, U_{3}(U_{4}U_{5}),...と順に計算して U_{1}U_{2}U_{3}U_{4}U_{5}を得ればよい。

式変形の過程で次の性質を使うと便利です。

 \begin{eqnarray*}
  | 0 \rangle \langle 0 | X &=&  | 0 \rangle \langle 0 | (  | 1 \rangle \langle 0 | +  | 0 \rangle \langle 1 | ) =  | 0 \rangle \langle 1 | \\
  | 1 \rangle \langle 1 | X &=&  | 1 \rangle \langle 0 | \\
  X | 0 \rangle \langle 1 | &=& ( | 1 \rangle \langle 0 | +  | 0 \rangle \langle 1 | ) | 0 \rangle \langle 1 | =  | 1 \rangle \langle 1 | \\
  X | 1 \rangle \langle 0 | &=&  | 0 \rangle \langle 0 | \\
  R^{\dagger}_{\frac{\pi}{2}} R_{\frac{\pi}{2}} &=& I \\
  R_{\frac{\pi}{2}} R_{\frac{\pi}{2}} &=& Z
 \end{eqnarray*}

今回はここまで。

量子計算理論(森前 著) の演習問題を解く part5

こんにちは。Kumaです。

最近、量子コンピュータについて勉強しています。
今回は有名な以下の本の演習問題について、解答が載っていないので一部書いてみたいとおもいます。
f:id:phymath1991:20181224165540p:plain
量子計算理論 量子コンピュータの原理 | 森北出版株式会社

今回はpp.37- です。

pp.37.1 CZゲートの対称性


1.CZゲートの対称性(制御ビットと標的ビットを入れ替えても同じ)を示せ
を示せ。*1
2.CNOT→制御ビットと標的ビットを入れ替えたCNOT→CNOTがSWAPゲート(ビットの入れ替え)

U ( | \psi \rangle \otimes | \phi \rangle ) = | \phi \rangle \otimes | \psi \rangle
になっていることを示せ.

  • 解答

1. CZゲートは
 CZ = | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes Z
とかける。
すなわち対称性を示せとは、
  | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes Z =  I \otimes | 0 \rangle \langle 0 | +  Z \otimes | 1 \rangle \langle 1 |
を示せということである。
これを示すには、
  I =  | 0 \rangle \langle 0 | +  | 1 \rangle \langle 1 | , Z =  | 0 \rangle \langle 0 | -  | 1 \rangle \langle 1 |
を使う。
やっていこう。

 \begin{eqnarray*}
 | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes Z &=& | 0 \rangle \langle 0 | \otimes ( | 0 \rangle \langle 0 | +  | 1 \rangle \langle 1 | ) +  | 1 \rangle 
 \langle 1 | \otimes  ( | 0 \rangle \langle 0 | -  | 1 \rangle \langle 1 | ) \\
&=& ( | 0 \rangle \langle 0 | +  | 1 \rangle \langle 1 | ) \otimes | 0 \rangle \langle 0 | + ( | 0 \rangle \langle 0 | -  | 1 \rangle \langle 1 | ) \otimes  | 1 \rangle \langle 1 | \\
&=&  I \otimes | 0 \rangle \langle 0 | +  Z \otimes | 1 \rangle \langle 1 | \\
 \end{eqnarray*}
よって示された。

2. CNOTゲートは
 CNOT = | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes X
とかける。

制御ビットと標的ビットを入れ替えたCNOTは
 CNOT = I \otimes | 0 \rangle \langle 0 | +  X \otimes | 1 \rangle \langle 1 |
である。

よって

 \begin{eqnarray*}
U &=& ( | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes X )(  I \otimes | 0 \rangle \langle 0 | +  X \otimes | 1 \rangle \langle 1 | )( | 0 \rangle \langle 0 
 | \otimes I +  | 1 \rangle \langle 1 | \otimes X ) \\
&=& ( | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes X )(  | 0 \rangle \langle 0 | \otimes  | 0 \rangle \langle 0 | +  | 1 \rangle \langle 1 | \otimes  | 0 \rangle \langle 0 | X + X | 0 \rangle \langle 0 | \otimes  | 1 \rangle \langle 1 | + X | 1 \rangle \langle 1 | \otimes | 1 \rangle \langle 1 | X ) \\
&=& ( | 0 \rangle \langle 0 | \otimes I +  | 1 \rangle \langle 1 | \otimes X )( | 0 \rangle \langle 0 | \otimes | 0 \rangle \langle 0 | + | 1 \rangle \langle 1 | \otimes | 0 \rangle \langle 1 | + | 1 \rangle \langle 0 | \otimes | 1 \rangle \langle 1 | + | 0 \rangle \langle 1 | \otimes | 1 \rangle \langle 0 | ) \\
&=& | 0 \rangle \langle 0 | \otimes | 0 \rangle \langle 0 | + | 0 \rangle \langle 1 | \otimes | 1 \rangle \langle 0 | + | 1 \rangle \langle 1 | \otimes X | 0 \rangle \langle 1 
 | + | 1 \rangle \langle 0 | \otimes X | 1 \rangle \langle 1 | ) \\
&=& | 0 \rangle \langle 0 | \otimes | 0 \rangle \langle 0 | + | 0 \rangle \langle 1 | \otimes | 1 \rangle \langle 0 | + | 1 \rangle \langle 1 | \otimes | 1 \rangle \langle 1 | + | 1 \rangle \langle 0 | \otimes | 0 \rangle \langle 1 |) 
 \end{eqnarray*}

このゲートはSWAPゲートになっている。実際に Uを作用させてみると、

 \begin{eqnarray*}
 | 00 \rangle \rightarrow | 00 \rangle \\
 | 01 \rangle \rightarrow | 10 \rangle \\
 | 10 \rangle \rightarrow | 01 \rangle \\
 | 11 \rangle \rightarrow | 11 \rangle
 \end{eqnarray*}

となるので、確かにbitが入れ替わっています!

今回はここまで。

*1:ただしこのような対称性は一般には成り立たない。CZゲートの特徴である。(特徴付けであるかは不明)

量子計算理論(森前 著) の演習問題を解く part4

こんにちは。Kumaです。

最近、量子コンピュータについて勉強しています。
今回は有名な以下の本の演習問題について、解答が載っていないので一部書いてみたいとおもいます。
f:id:phymath1991:20181224165540p:plain
量子計算理論 量子コンピュータの原理 | 森北出版株式会社

今回はpp.35- です。

pp.35.1 {X,Y,Z,I}ゲート演算の性質


ゲート演算  X, Y, Z, Iについて
1.

 \begin{eqnarray*}
&1.1& X^{2} = Y^{2} = Z^{2} = I \\
&1.2& XY = -YX = iZ, YZ = -ZY = iX, ZX = -XZ = iY
 \end{eqnarray*}
を示せ。
2.  X, Y, Zについて固有値および固有ベクトルを求めよ。
3.  n量子ビットパウリ演算子 Sを次式で定義する。

S \equiv \alpha \otimes_{j=1}^{n} P_{j}, \alpha \in \{ 1, -1, i, -i \}, P_{j} \in \{ I, X, Y, Z \}
このとき Sは掛け算について群をなすことを示せ.
ただし X, Y, Zは以下で定義されている.

X \equiv
\begin{pmatrix}
0 & 1 \\
1 & 0
\end{pmatrix}
,
Y \equiv
\begin{pmatrix}
0 & -i \\
i & 0
\end{pmatrix}
,
Z \equiv
\begin{pmatrix}
1 & 0 \\
0 & -1
\end{pmatrix}

I \equiv
\begin{pmatrix}
1 & 0 \\
0 & 1
\end{pmatrix}
さらに

 X = |1 \rangle \langle 0| +  |0 \rangle \langle 1| \\
 Y = i|1 \rangle \langle 0| -  i|0 \rangle \langle 1| \\
 Z = |0 \rangle \langle 0| -  |1 \rangle \langle 1|  \\
 I = |0 \rangle \langle 0| +  |1 \rangle \langle 1|
を満たす。(この式は成分計算で示せる)

  • 解答

1.1,1.2は行列の成分計算で示せる。(簡単なので流石に省略)
2 を示す。
例えばXについては固有値方程式  \lambda ^{2} - Tr(X)\lambda + det(X) = 0 を解くと固有値 \lambdaが得られる。
 \lambda = 1, -1が得られる。
固有ベクトルは各 \lambdaについて存在する。
 \lambda = 1については

X
\begin{pmatrix}
a \\
b
\end{pmatrix}

=

1
\begin{pmatrix}
a \\
b
\end{pmatrix}
を解けば良い。
a = bを得るので、固有ベクトル v_{1}

v_{1}
=
c
\begin{pmatrix}
1 \\
1
\end{pmatrix}

=

c ( |0 \rangle + |1 \rangle )
 c \in \mathbb{C}
である。

同様に、

 v_{-1}
 =
 c
 \begin{pmatrix}
 1 \\
 -1
\end{pmatrix}

 =
 c ( |0 \rangle - |1 \rangle )
 c \in \mathbb{C}

 Y, Zについても同様に計算する。
 Yについて、

v_{1}
=
c
\begin{pmatrix}
1 \\
i
\end{pmatrix}


v_{-1}
=
c
\begin{pmatrix}
1 \\
 -i
\end{pmatrix}

 Z について、

v_{1}
=
c
\begin{pmatrix}
1 \\
0
\end{pmatrix}


v_{-1}
=
c
\begin{pmatrix}
0 \\
1
\end{pmatrix}

3. について、示す。*1

群であるためには以下を満たす必要がある。
3.1 積について閉じている
3.2 単位元が存在する
3.3 逆元が存在する
3.4 結合法則
これらを確認すれば良いのである。

また、 n量子ビット演算子は1量子ビットテンソル積なので、1量子ビットについて示せば(各量子ビットは独立なのだから)十分である。

3.1
 S = \{ \alpha P |  \alpha \in \{ 1, -1, i, -i\}, P \in \{ X, Y, Z, I\} \}の中から任意の2つを選んできて積を作ったときに、
それがまた Sの要素であることを示せば良い。
これは1.により明らか。

3.2
単位行列 I単位元である。

3.3
 {X, Y, Z, I} について、これに掛けると単位元単位行列)になるものを見つければ良い。
1.の結果により  XX = I なのだから、 Xの逆元はX自身である。
同様に Y,Z,Iの逆元も自分自身である。

3.4
結合法則は、行列表示が結合法則を持っていることから従う。

以上により群をなしていることが示された。

補足


 \begin{eqnarray*}
&1.1& X^{2} = Y^{2} = Z^{2} = I \\
&1.2& XY = -YX = iZ, YZ = -ZY = iX, ZX = -XZ = iY
 \end{eqnarray*}
は実は極めて重要な性質である。
 \sigma_{1} = X, \sigma_{2} = Y, \sigma_{3} = Z
とおく。行列のカッコ積[ , ]を [A, B] \equiv AB -BA で(非可換性として)定義する。上記の性質は
 [\sigma_{i}, \sigma_{j}] = i \epsilon_{ijk} \sigma_{k}
と表現できる。ここで \epsilon_{ijk}はエディントンのイプシロンあるいはレビチビタの記号と呼ばれる。
エディントンのイプシロン - Wikipedia

カッコ積が入っていて、かつこのような性質を満たす \sigmaたちから成る代数はリー代数と呼ばれる。
パウリ行列 - Wikipedia
リー代数 - Wikipedia

リー代数については過去記事でも紹介しています。

他のリー代数については、例えばベクトルの外積があります。
三次元ベクトルからなる集合に、カッコ積をベクトルの外積として定義します。
(基底ベクトルを \vec{e_{1}} ,\vec{e_{2}}, \vec{e_{3}}とします。)
 [ \vec{e_{i}},  \vec{e_{j}} ]  \equiv \vec{e_{i}} \times \vec{e_{j}}
すると、 \vec{e_{1}} \times \vec{e_{2}} = \vec{e_{3}}などベクトルの外積の性質から
  [ \vec{e_{i}},  \vec{e_{j}} ] = \epsilon_{ijk} \vec{e_{k}}
と書けます。
外積に隠れていたリー代数が見つかりました!

今回はここまで。

*1:そもそも本書では、ここの”掛け算”の定義が示されていない点は不十分と思う。(掛け算 は行列表現における行列積で定義されているのである) また、”群”の説明がない点も不親切である。

量子計算理論(森前 著) の演習問題を解く part3

こんにちは。Kumaです。

最近、量子コンピュータについて勉強しています。
今回は有名な以下の本の演習問題について、解答が載っていないので一部書いてみたいとおもいます。
f:id:phymath1991:20181224165540p:plain
量子計算理論 量子コンピュータの原理 | 森北出版株式会社

今回はpp.25- です。

pp.25.1 複素確率ベクトルの保存



 \begin{eqnarray*}

 \sum_{\beta \in \{0,1\}^{n}} p_{\beta,\alpha}^{*} p_{\beta,\gamma} = \delta_{\alpha , \gamma}
 \end{eqnarray*}
ならば
状態遷移 S(\{p_{z',z}\})の前後で

 \sum_{z} |c_{z}|^{2} = 1 が保たれていることを示せ

  • 解答


\begin{eqnarray*}
 | \psi^{'} \rangle \equiv S(\{p_{z',z}\}) | \psi \rangle = \sum_{z} \sum_{z'} p_{z',z} |z' \rangle \langle z| ) | \psi \rangle
\end{eqnarray*}
とおく。この複素ベクトルのノルムが1であることを示せば、直交性から
係数の二乗和も1といえる。
以下でノルムを計算する。


\begin{eqnarray*}
 \langle \psi^{'} | \psi^{'} \rangle &=& (\sum_{z} \sum_{z'} p^{*}_{z',z} \langle \psi | z \rangle \langle z' | )(\sum_{w} \sum_{w'} p_{w',w} | w' \rangle \langle w | \psi \rangle ) \\
&=& \sum_{z,z',w,w'} p^{*}_{z',z} p_{w',w} \langle \psi | z \rangle \langle z' | w' \rangle \langle w | \psi \rangle \\
&=& \sum_{z,z',w,w'} p^{*}_{z',z} p_{w',w} \langle \psi | z' \rangle \delta_{z'w'} \langle w | \psi \rangle \\
&=& \sum_{z,z',w} p^{*}_{z',z} p_{z',w} \langle \psi | z' \rangle \langle w | \psi \rangle \\
\end{eqnarray*}
ここで

\begin{eqnarray*}
 \sum_{\beta \in \{0,1\}^{n}} p_{\beta,\alpha}^{*} p_{\beta,\gamma} = \delta_{\alpha , \gamma}
\end{eqnarray*}
の条件を使うと、

\begin{eqnarray*}
 \sum_{z,z',w} p^{*}_{z',z} p_{z',w} \langle \psi | z' \rangle \langle w | \psi \rangle &=& \sum_{z,z',w} \delta_{z w} \langle \psi | z' \rangle \langle w | \psi \rangle \\
&=& \sum_{z,z'} \langle \psi | z' \rangle \langle z | \psi \rangle \\
&=& | \psi |^{2} \\
&=&1
\end{eqnarray*}
よって示された。



pp.27.1 測定の性質



\begin{eqnarray*}
1&.& \langle \psi | ( |z \rangle \langle z| ) | \psi \rangle = |c_{z}|^{2} \\
2&.& \frac{ |z \rangle \langle z | \psi \rangle }{ \langle z | \psi \rangle} = | z \rangle \\
3&.& \langle \psi | ( | 1 \rangle \langle 1 | \otimes I^{\otimes n-1} ) | \psi \rangle = \sum_{z:z_{1} = 1} |c_{z}|^{2} \\
4&.& \frac{ ( | 1 \rangle \langle 1 | \otimes I^{\otimes n-1} ) | \psi \rangle }{ \sqrt{ \langle \psi | ( | 1 \rangle \langle 1 | \otimes I^{\otimes n-1} ) | \psi \rangle }} = \frac{\sum_{z:z_{1} = 1} c_{z}|z \rangle }{\sqrt{ \sum_{z:z_{1} = 1} |c_{z}|^{2}} }
 \end{eqnarray*}

  • 解答

1.

\begin{eqnarray*}
 \psi = \sum c_{z} |z \rangle
 \end{eqnarray*}
であるから、代入して

 \begin{eqnarray*}
 \langle \psi | ( |z \rangle \langle z| ) | \psi \rangle &=& \sum_{z''} c^{*}_{z''} \langle z'' | ( z \rangle \langle z | ) \sum_{z'} c_{z'} | z' \rangle \\
 &=& \sum_{z''} c^{*}_{z''} \delta_{z'' z} \sum_{z'} c_{z'} | \delta_{z z'} \\
 &=& c^{*}_{z} c^{*}_{z} \\
 &=& |c_{z}|^{2} 
 \end{eqnarray*}

2.
 \langle z| \psi \rangle \in \mathbb{C} なので、分母と分子で約分すればよい。

3.
第一量子ビットが0であるものと1であるものにわける。

 \begin{eqnarray*}
 | \psi \rangle = \sum_{y \in \{0,1\}^{n-1}} c_{1y} | 1y \rangle +  \sum_{y \in \{0,1\}^{n-1}} c_{0y} | 0y \rangle
 \end{eqnarray*}
この表式を使うと

 \begin{eqnarray*}
 | 1 \rangle \langle 1 | \otimes I^{\otimes n-1} ) | \psi \rangle = \sum_{y \in \{0,1\}^{n-1}} c_{1y} | 1y \rangle + 0
 \end{eqnarray*}
よって

 \begin{eqnarray*}
(与式の左辺) &=& \langle \psi | ( \sum_{y \in \{0,1\}^{n-1}} c_{1y} | 1y \rangle ) \\
&=& ( \sum_{y \in \{0,1\}^{n-1}} c_{1y}^{*} \langle 1y | +  \sum_{y \in \{0,1\}^{n-1}} c_{0y}^{*} \langle 0y | ) ( \sum_{y \in \{0,1\}^{n-1}} c_{1y} | 1y \rangle  )  \\
&=& ( \sum_{y \in \{0,1\}^{n-1}} c_{1y}^{*} \langle 1y | ) ( \sum_{y \in \{0,1\}^{n-1}} c_{1y} | 1y \rangle  )  \\
&=& \sum_{y,y'} c_{1y}^{*} c_{1y'} \delta_{y y'} \\
&=& \sum_{y} c_{1y}^{*} c_{1y} \\
&=& \sum_{y} |c_{1y}|^{2} \\
&=& \sum_{z:z_{1}=1} |c_{z}|^{2} \\
 \end{eqnarray*}

よって示された。

4.
分子は 3. の途中で示したとおり明らか。

 \begin{eqnarray*}
 | 1 \rangle \langle 1 | \otimes I^{\otimes n-1} ) | \psi \rangle = \sum_{y \in \{0,1\}^{n-1}} c_{1y} | 1y \rangle
 \end{eqnarray*}
分母は③の題意そのものであるからすでに示した。
よって4.が証明できた。


今回はここまで。
次回からついに量子ゲート演算が本格的に登場します。

量子計算理論(森前 著) の演習問題を解く part2

こんにちは。Kumaです。

最近、量子コンピュータについて勉強しています。
今回は有名な以下の本の演習問題について、解答が載っていないので一部書いてみたいとおもいます。
f:id:phymath1991:20181224165540p:plain
量子計算理論 量子コンピュータの原理 | 森北出版株式会社

二章はチューリングマシンから始まりますが、あまり詳しくないのでpp.15- (古典的確率状態)から書いていきます。
今回はpp.19- です。

pp.19.1 古典的確率状態の遷移(演算子


H = (\frac{1}{2}|00 \rangle+\frac{1}{2}|11 \rangle)\langle 00| + (\frac{1}{3}|00 \rangle+\frac{2}{3}|10 \rangle)\langle 01| + (\frac{2}{4}|01 \rangle+\frac{1}{4}|00 + \frac{1}{4}|11 \rangle)\langle 10| + (\frac{3}{5}|10 \rangle+\frac{2}{5}|11 \rangle)\langle 11
としたときに、 H| 0 0 \rangle , H| 0 1 \rangle , H| 1 0 \rangle , H| 1 0 \rangle を確認せよ

  • 解答

直交性を使う。 | 0 0 \rangleに作用させたときは \langle 0 0| 0 0 \rangle = 1だから、この項だけが残る。
 H| 00 \rangle =  (\frac{1}{2}|00 \rangle+\frac{1}{2}|11 \rangle) \langle 0 0| 0 0 \rangle = (\frac{1}{2}|00 \rangle+\frac{1}{2}|11 \rangle)
全く同様に、
 H| 01 \rangle =  (\frac{1}{3}|00 \rangle+\frac{2}{3}|10 \rangle)
 H| 10 \rangle =  (\frac{2}{4}|01 \rangle+\frac{1}{4}|00 + \frac{1}{4}|11 \rangle)
 H| 11 \rangle =   (\frac{3}{5}|10 \rangle+\frac{2}{5}|11 \rangle)

pp.19.2 確率行列


1. 今日晴れなら、明日晴れる確率は1/2,曇りの確率は1/2
2. 今日曇りなら、明日晴れる確率は1/3,雨の確率は2/3
3. 今日雨なら、明日曇りの確率は1/4,雨の確率は3/4
を表す3x3確率行列を書け

  • 解答

晴れ、曇り、雨を以下のように定義する。

 |\phi_{1} \rangle
=
\begin {pmatrix}
1 \\
0 \\
0 
\end {pmatrix}


 |\phi_{2} \rangle
=
\begin {pmatrix}
0 \\
1 \\
0 
\end {pmatrix}


 |\phi_{3} \rangle
=
\begin {pmatrix}
0 \\
0 \\
1 
\end {pmatrix}

pp19.1の演習問題から、題意を満たす確率遷移Hは

H = (\frac{1}{2} |\phi_{1} \rangle + \frac{1}{2} |\phi_{2} \rangle ) \langle \phi_{1} | + (\frac{1}{3} |\phi_{1} \rangle + \frac{2}{3} |\phi_{3} \rangle ) \langle \phi_{2} | + (\frac{1}{4} |\phi_{2} \rangle + \frac{3}{4} |\phi_{3} \rangle ) \langle \phi_{3} |

これを行列表現すればよい。
例えば、

(\frac{1}{2} |\phi_{1} \rangle + \frac{1}{2} |\phi_{2} \rangle ) \langle \phi_{1} |
=
\begin{pmatrix}
1/2 \\
1/2 \\
0
\end{pmatrix}

\begin{pmatrix}
1 & 0 & 0
\end{pmatrix}

=

\begin{pmatrix}
1/2 & 0 & 0 \\
1/2 & 0 & 0 \\
0 & 0 & 0 
\end{pmatrix}

である。このようにして計算するとただちに

H = 
\begin{pmatrix}
1/2 & 1/3 & 0 \\
1/2 & 0 & 1/4 \\
0 & 2/3 & 3/4 
\end{pmatrix}

を得る。*1

pp.19.3 確率ベクトルの保存


確率的古典計算機のある状態を表す状態ベクトル

 | \psi \rangle  \equiv \sum_{z \in \{0,1\}^{n}} c_{z} |z \rangle
とする。
これは c_{z} \geq 0 かつ  \sum_{z \in \{0,1\}^{n}} c_{z} = 1 を満たす。(古典的確率ベクトル)
確率ベクトル |\psi \rangle に確率的遷移の演算子 S( \{p_{z', z} \})を作用させた状態もまた確率ベクトルであることを示せ。
ただし確率的遷移の演算子
 
S( \{p_{z', z} \}) \equiv \sum_{z \in \{0,1\}^{n}} \sum_{z' \in \{0,1\}^{n}} p_{z',z} |z' \rangle \langle z| \\
p_{z',z} \geq 0 \\
\sum_{z' \in \{0,1\}^{n}} p_{z',z} = 1 \\
である。
(状態  |z \rangle \rightarrow |z' \rangle の遷移を表す。)

  • 解答


 | \psi' \rangle = S( \{p_{z', z} \}) |\psi \rangle
とおく。方針は

 | \psi' \rangle = \sum_{z} d_{z} |z \rangle
の形に持ち込んで、このときの係数 d_{z}が確率ベクトルの条件を満たしていることを証明すれば良い。
*2


 | \psi' \rangle   \\
= S( \{p_{z', z} \}) |\psi \rangle  \\
= \sum_{z \in \{0,1\}^{n}} \sum_{z' \in \{0,1\}^{n}} p_{z',z} |z' \rangle \langle z| (\sum_{z'' \in \{0,1\}^{n}} c_{z''} |z'' \rangle ) \\
= \sum_{z \in \{0,1\}^{n}} \sum_{z' \in \{0,1\}^{n}} \sum_{z'' \in \{0,1\}^{n}} p_{z',z} |z' \rangle \langle z| c_{z''} |z'' \rangle   \\
ここで直交性より \langle z | z'' \rangle = \delta_{z''z}を使う。


 | \psi ' \rangle \\
= \sum_{z \in \{0,1\}^{n}} \sum_{z' \in \{0,1\}^{n}} \sum_{z'' \in \{0,1\}^{n}} p_{z',z} |z' \rangle c_{z''} \delta_{z''z}   \\
= \sum_{z \in \{0,1\}^{n}} \sum_{z' \in \{0,1\}^{n}}  p_{z',z} |z' \rangle c_{z'} \\

(z''についての和はz''=zのときを除いて0になるので)

これをよくみると、


 | \psi \rangle = \sum_{z'} d_{z'} |z' \rangle \\
d_{z'} \equiv \sum_{z}  p_{z',z} c_{z}
という形になっている。
先の方針通り、 d_{z'} が確率ベクトルたる条件を満たしているかを確認する。

 d_{z'} \geq 0は定義から自明。
 \sum_{z'} d_{z'} = 1 を示そう。


 \sum_{z'} d_{z'} = \sum_{z'} \sum_{z}  p_{z',z} c_{z} = \sum_{z} c_{z} \times (\sum_{z'} p_{z',z}) = \sum_{z} c_{z} \times 1 = 1 \times 1 = 1

となるので示せた!

今回はここまで。

*1:1番目の列ベクトルをみると、これは題意の1.を表している。同様に各列ベクトルはそれぞれ題意に対応している。 なぜ?と思った人は線形代数の教科書を参照してほしい。演算子は線形に作用しているので、”基底の構成要素 | \phi_{1,2,3} \rangle Hによる行き先を 決めてしまえば一般のベクトルの行き先、すなわち行列成分は決まってしまう” という事実が現れている

*2:以降の計算は難しそうに見えるが、実際のところ式をいじくり回しているだけなので、あまり本質的でもない。