このワークシートは[url=https://www.geogebra.org/m/twxxx3yq]Math by Code[/url]の一部です。[br][br]今まだ学んだことを使って、面白くて役に立つ話題を学ぼう。[br]それは、「[color=#0000ff][b]量子テレポーテーション[/b][/color]」![br][br]発信者と受信者の2人?を結ぶ量子ゲートがないのに、[br]量子状態を移動させるテクニックです。[br]どういうことでしょうか??[br]もしも量子状態を測定して知らせようとしても量子状態が変わってしまうだろう。[br]だから、そんなの無理でしょう。[br]ふつうに考えたらね。[br][br]qビット回路のゲート、X,Z,H,CNOT[br]2qビットのテンソル積と分解[br]量子もつれのEPR対[br][br]これまでやってきたことを手順通りに組み合わせるだけで、[br]手品のように可能になるというお話しです。
[b][size=150]<舞台はこうだ>[br][/size][/b][br]登場人物が2人、アリスとボブです。[br]使うビット(電子)3個です。[br][br][b]アリスの持ってる電子C[/b]の状態を[br]遠く離れた、[b]ボブの持っている電子B[/b]にそっくり写せるか?[br]これが課題になります。[br]そのためにアリスが持っているもう1個の[b]電子A[/b]があります。[br]どう使うのでしょうか。[br][br]もう少し設定をお伝えしますね。[br][br]アリスとボブは今は離れたところにいますが、以前いっしょにいました。[br]2人いっしょにいたときに2個の電子をぶつけて[b]EPR状態が[/b]できた。[br]その状態は[b]|β00)[/b]だった。[br]そのEPR状態からうまく電子を1個ずつ取り出して、[b]アリスの分A[/b], [b]ボブの分B[/b]にわけた。[br]取り出した電子は、2つが量子もつれ状態だった。[br]だから、連動してゆらいでいるので、1個では[br]0か1のどっちに傾いているか、どっちが出やすいかもわからない。[br]|β00)=1/sqrt(2) (|00)+|11))=1/sqrt(2) (|0)|0)+|1)|1))だから、[br]古典情報としては、00か11の確率は50%ずつであることはわかる。[br][br]物理的に分離されてももつれているということは[br][b]電子Aと電子Bの情報、状態は独立してない[/b]ということです。[br]だから、2人がどんなに遠くに離れても赤い糸で結ばれた電子対であるといえるのです。[br]ここに電子テレポーテーションの秘密があるかもしれません。[br][br]さて、課題は、「アリスが手にした別の[b]電子C[/b]のふらつく量子状態 |[b]ψ)[/b]=a|0)+b|1)がある。[br][b]アリスは古典情報[/b](ふつうの確率や電子の1,0状態)を光速を超えない[b]ふつうの手段[/b](電話でも光でも)を使って送信する。[br]遠く離れたボブは、その情報を受信して、[br][b]電子Bを使って電子Cとまったく同じにふらつく量子状態[/b] |[b]ψ)[/b]=a|0)+b|1)を作れるか。」[br]ということです。[br][br]2人はq回路による変換と測定をしてもよいです。[br][br]アリスはボブに古典情報をふつうの手段でボブに伝えてよいです。[br][br]次の図のように、アリスのq回路のワイヤ2本と、ボブのq回路のワイヤ1本は物理的には別物ですが、[br]見やすくするために、1つの回路のようにまとめて書いてみました。[br][br]この回路図を見て、手順を追っていきましょう。[br]
[b]さあ、いよいよ、テレポーテーションスタート[br][br]<0. 3つの電子を合体させる。スタートは[b][size=150]ψ0から[/size][/b]>[br][/b][br]まずは、3つの電子を1つの大きな数式(テンソル積)で合体させます。[br][br]並び順は左から[b] |[code]電子C, 電子A, 電子B)[/code][/b]です。[br]回路図では、ワイヤ3本が[b]上からC,A,B[/b]を表してますね。[br]Cは復元したい情報で、[b]ABの2本ワイヤをたてに見ると[/b][b] |β00⟩[/b]情報ですね。[br]また、持ち主でみると[b]電子C,Aはアリス[/b]で、[b]電子Bだけ離れたボブのもの[/b]。[br]ややこしいですね。[br][b]ここが最初は混乱のもとなので、舞台設定と回路図を対応させて確認[/b]して欲しい。[br][br][size=150][b]|ψ0) =[/b] [b]|ψ) ⊗ |β00)[br][/b]= ( a|0)+b|1) )⊗1/√2(|00)+|11))[br][color=#0000ff]=1/√2( a|000) +a |011) +b|100) +b|111) ) ....テンソル積で、係数も基底も直積計算する[br][/color][/size][br][b]<1.アリスが電子C,Aに CNOT をかけて、[b][b][size=150]ψ1になる[/size][/b][/b]>[br][/b]アリスは、自分が持っている2つの電子(CとA)に [b]CNOT[C,A][/b] をかけます。[br]「電子Cが 1 なら、電子Aをひっくり返すという、おなじみの主役の技です。[br]電子Cの情報がアリスの電子Aに重なりますね。[br]左端が [code]1[/code] になっている後半の2つの項( |100⟩ と |111⟩ )の真ん中のビットがパタンとひっくり返ります。[br][size=150][b][br]|ψ1) =[/b][b]CNOT[C,A],|[/b][b]B)[br][/b][color=#0000ff]=1/√2( a|000) +a |011) +b|1[b]1[/b]0) +b|1[b]0[/b]1) )[br][/color][/size][br][b]<2.アリスが電子 C にHかけて、[b][size=150]ψ2になる[/size][/b][/b][b]>[br][/b]アリスは、電子CにHを使ってかき混ぜる。[br][b]|ψ2) =H|C),|A [/b][b]B)[br]=H1/√2( a|000) +a |011) +b|1[b]1[/b]0) +b|1[b]0[/b]1) )[br][/b][color=#0000ff]=[b]H[/b]1/√2( a|0)( |00) +|11)) +b|1)(|[b]1[/b]0) +|[b]0[/b]1) ) …電子Cでくくる [br][/color]=1/√2(1/√2 a(|0)+|1))( |00) +|11)) +1/√2b(|0)-|1) )(|[b]1[/b]0) +|[b]0[/b]1) ) …電子CだけHをかける[br]=1/2(a[|000)+|011)+|100)+|111)] +b[|010)+|001)-|110)-|101)]) …展開する[br]=1/2(|00)[a|0)+b|1)] + |01)[b|0)+a|1)] + |10)[a|0)-b|1)] + |11)[-b|0)+a|1)]) …アリスのC,Aで4分類する[br][br]分かりますか?[br]アリスが手元をガチャガチャやったおかげで、[br]まだ誰も触っていないはずの、遠く離れた[b]ボブの電子B(下線のカッコの中身)に、秘密の係数 a と b が勝手に染み出してしまっている[/b]のです![br][br][br][b]<3.アリスが測定し、ボブに電話した内容はψ3>[br][/b]ここでアリスは、手元の電子Cと電子Aを「測定」します。[br]電子Cの測定M1の結果をa,[br]電子Aの測定M2の結果をbとしましょう。[br]ab=00,01,10,11のどれかです。[br][b]|ψ2)の振幅係数は|ab)がどの4つでも1/2なので、確率は2乗して1/4で等確率ですね。[br][/b]たとえば、ab=00が出たら、ボブにa=0,b=0と伝えます。そのとき、[b]ψ3=a|0)+b|1)です。[br][/b]だから、[b]ψ3は4通りになりますね。条件abのもとの[b]ψ3(ab)[/b]をX/abとかくと、[br][b]ψ3(ab)=[a|0)+b|1)]/00, [b|0)+a|1)]/01, [a|0)-b|1)]/10 , [-b|0)+a|1)]/11[/b][br][/b][br]ボブはab=00,01,10,11のどれかの結果だけを電話や光などの伝播のスピードで情報を得るでしょう。[br][br][b]<4.ボブが報告を聞いて、ψ4をつくる>[br][/b]ボブは、アリスからかかってきた電話の報告を聞いて、[br]手元の電子Bに最後の仕上げ(チューニング)を施します。[br][b]「00」と連絡が来たら:[/b] [br] ボブの電子Bは今まで何もない1qビットでした。回路図にX、Zがありますが、00だからスルー。[br] ボブの電子Bは最初から (a∣0⟩+b∣1⟩) になっています。[br][b] 何もしないのにテレポーテーションすでにしてました。[br][/b][b]「01」と連絡が来たら:[br] bだけ1だから、bつまり、Xだけスイッチオンです。[br] Xは|0)|1)のひっくり返しの否定ゲートでした。[br][/b] 電子Bは (a∣1⟩+b∣0⟩)(ひっくり返った状態)なので、[br] ボブが [b]X ゲート[/b]をかけたら、BにCがテレポーテーション完成。[br][b]「10」と連絡が来たら:[/b] [br] aだけ1だから、Zだけゲートをかけます。[br] 電子Bは (a∣0⟩−b∣1⟩)(位相が反転した状態)なので、[br] ボブは [b]Z ゲート[/b]をかけてマイナスが消せるから、完成。[br][b]「11」と連絡が来たら:[/b] [br] 電子Bは (a∣1⟩−b∣0⟩)(裏返ってマイナスもついた状態)なので、[br] ボブは [b]Xで01を交換してから、|1)の前にきた‐bをbにするから、これも完成。[/b][br][br]アリスからボブへの電話がどれであっても、[br][color=#0000ff][size=150][b][size=200]ψ4=ψ[/size][/b][br][/size][/color][br]どうでしょうか。[br]送った情報はアナログの4通りなのに、電子Bが遠く離れた電子Cと同状態に[br]なりましたね。[br][br]やはり、EPR状態は離れていても赤い糸で結ばれる、[br]量子ワールドのキューピッドだった?[br][br][color=#0000ff]一度[b]もつれた2量子[/b]は、離れていても[b]一心同体で結ばれて波打っている[/b]ということか。[br][/color][br]パチパチパチ。
[b][size=150]<振り返り>[/size][/b][br]さて、量子テレポーテーションいかがでしたか。[br][br][b]冷静に考える[/b]と、この回路によってプログラミングの視点で見て[br]実現できていることがいくつかあることがわかる。[br][br]それを確認しておこう。[br][br]まず、2つの測定結果を古典情報ワイヤー2本で量子ビットワイヤにつなぐことで、[br]4通りの場合分けに応じた処理ができている。[br]つまり、「[b]分岐[/b]」処理だね。[br]また、そもそも、CNOTによって、Cワイヤが|1)のときだけTワイヤのビットを反転させるのは[br]「[b]条件分岐[/b]」処理だね。[br]それと、これに限らず、ゲートを横につなぐだけで、「[b]順次[/b]」処理ができる。[br][br]つまり、プログラミング言語の要件である、順次、分岐、反復のうち[br]2つがすでに実現されていることがわかるね。[br][br]これまでは、q回路に慣れるというスタンスだったけれど、[br]これからは、プログラミングの目的と効果という視点でq回路を調べていこう。