第39話 量子計算と基本量子ゲート



量子計算を行うというのは量子ビットを操作して欲しい解を得る確率を高くする事になります。それにはまず基本的な回路を(基本量子ゲートによって)構成しなければなりません。
そしてどんな量子計算でも「(1量子ビットの)ユニタリ変換」「2量子ビット制御NOTゲート」を構成すれば可能なことが知られています。
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015900.jpg
D.Deutsch, Proc. R. Soc. Lond., Vol.A 400, pp.97-177(1985)
 
■(1量子ビットの)ユニタリ変換(U)
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015903.jpg  
これはもうお馴染み単なるユニタリ変換です。


■2量子ビット制御NOTゲート(CN)
制御ビット標的ビットと呼ばれる2量子状態に対する量子ゲートです。
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015906.jpg  
これは次のような操作です。
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015909.jpg  
どうしてCNが量子ビットに作用すると右辺のような量子ビットになるのかという点で行列と量子ビットの操作の関係をもう少し詳しく見てみます。
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015913.jpg  
でしたから、第13話 量子力学の基本4(状態ベクトルの基本)
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015918.jpg  
が2量子状態の基底になります。各基底に制御NOTを作用させると、
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015923.jpg  
とちゃんとなっています。なので制御NOTの操作を全て書いてみると
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015927.jpg  
となります。制御ビットが1の時に標的ビットが反転(0 <-> 1)します。また、CNは次のような形にも書くことが出来ます。
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015931.jpg  
 
基本的には「(1量子ビットの)ユニタリ変換」と上記で説明した「2量子ビット制御NOTゲート」で十分ですがいつもこの量子ゲートまで分解していくのは煩雑なので既に組まれた以下のような量子ゲートが使われます。
https://cdn-ak.f.st-hatena.com/images/fotolife/c/cat_falcon/20190805/20190805015934.jpg