2022年11月28日月曜日

超高密度符号化と量子テレポーテーション(その1)

【要旨】超高密度符号化と量子テレポーションに関して、Prof. Chris Bernhardt著[1]第7章をどのように学んだかをメモしておきたい。安易にツールや可視化に頼らずに、紙と鉛筆だけを用いて考えながら取り組むことに徹してきた。そして、今や機は熟した。ツール等で知識を確認する段階に達した。こういう手順を踏む方が「分かった喜び」が大きいことを実感した。本報(その1)では、幾つかの基本量子回路の作用を量子シミュレータQni[2]を利用しながら確認した。

単一量子ビットに対するXゲートとHゲートの適用
 量子ゲートのうち、単一量子ビットに作用させるPauli X(NOT)ゲートとHadamard(アダマール)ゲートは特に重要だ。図1に示すとおり、これらの作用を量子シミュレータQniで確認した。Xゲートは、量子状態ベクトルをX軸を回転中心としてπだけ回転させる。また、Hゲートは、X軸とZ軸間のπ/4の傾きの軸を中心としてπだけ回転させる。これらによる量子状態ベクトルの確率振幅θと位相φの変化を確認できる。Hゲートの作用として、|0〉と|1〉との重ね合わせ状態(superposition)が作られることが極めて重要である。
 図中に、自作の透明ブロッホ球を示しているが、これを手に取りながら、シミュレータの結果を確認できたのはとても良かったと思う。

2つの量子ビットの状態における量子ゲートの作用
 2つの量子ビットの場合、それがなす状態(2つの状態ベクトルのテンソル積)は、4つのケットベクトル |00〉、|01〉、|10〉、|11〉 の線形結合で表わされる。図2に、2番目の量子ビットq1にのみHゲートを作用させた結果を示した。この場合は、共に (1/√2 = 0.707) の2乗の確率(0.5)で |00〉、または |10〉 となることが確認できた。

Bell回路とReverse Bell回路
 次に、本報の続編で述べる「超高密度符号化」と「量子テレポーション」で必要となるBell回路とその逆作用となるReverse Bell回路を示す。図3に示すとおり、Bell回路は2つの量子ビットのち最初の量子ビットにまずHゲートを作用させ、続けて2番目の量子ビットにCNOT(制御付きNOT)を作用させるものだ。結果として、両量子ビットは「もつれた状態(Entangled)」となることが重要な点である。そして、両量子ビットの状態は、それぞれ50%の確率で |00〉 または |11〉 となる。これ以外の状態にはならない。すなわち、両量子ビットに相関関係が生じていることが分かる。
 この状態にさらにReverse Bell回路を作用させたのが図4である。Bell回路は自分自身が可逆回路である。従って、入力される2量子が4つの状態のいずれであっても、最終的に最初の状態に戻っている。図4には、Bell回路を作用させた後(Entangledの状態)と、さらにReverse Bell回路を作用させた後の状態(Unentangledの状態)を示しているので、このことが確認できるであろう。(なお、回路の適用結果では、量子ビットの並び順が最初の量子状態での量子ビット並びと逆順になっている。)
References
[1] Chris Bernhardt, “Quantum Computing for Everyone”, MIT Press, 2020 
https://www.chrisbernhardt.info/
[2] Qni; https://github.com/qniapp/qni

2022年11月24日木曜日

量子アニーリングによる渋滞解消のための信号制御

【要旨】数日前に、日立製作所のCMOSアニーリングマシン利用に関するwebサイト[1]に、「渋滞解消のための信号制御最適化」という解説が公開されました。テスト用のPythonソースコードも提供されていますので、早速試してみました。

渋滞解消のための信号制御最適化
 この課題は、古くから取り組まれています。車の自動運転技術も注目されていますが、今のところ、交通渋滞解消を目指すものではないでしょう。しかし、交通渋滞解消の技術は注目されるべきものです。それによる現代社会での経済的、社会的効果は計り知れません。
 従来は、車の台数や速度、車間距離、青信号の点灯時間と切り替えタイミング、交差点での進行方向等々を時間変化で捉えて微分方程式モデルを作り解くこともあるようです。しかし、今回の手法は、そういう要素を明示的に使わずに、「交差点をつなぐ道の上にいる車の量」を「青信号の点灯」と関連付けた画期的なモデルだと思われます。参考文献[2]の豊田中央研究所と東大による論文に基づいているとのことです。

量子アニーリングによる信号制御最適化
 詳細は参考文献[1] [2]をご覧いただきたい。非常に丁寧な解説が[1]にあります。「各交差点で待機している垂直方向や水平方向の車の台数を信号制御によって均一化する」という観点から、イジングモデルを組み立てる考え方と具体的な手順が説明されています。もちろん、交差点に入る車の直進、右折、左折の割合や時間変化も考慮されています。そして最終的に、各交差点を量子のスピンに対応させて、スピン間の相互作用係数と外部磁場係数を使ったエネルギー関数(コスト関数)を導いています。
 私が気にしていたのは、いくつかの制約条件をどのようにコスト関数に組み入れるのか、でしたが、例えば、隣り合う信号が相反する場合にペナルティを与えることなどをうまく取り入れています。

実際に動かして試してみよう
 原理的なことを一通り理解した上で、日立のCMOSアニーリングマシンを動かして、動きを確かめます。Pythonソースコードが公開されていますので、誰でもできます。ただし、日立から、無料のAnnealing Cloud Web用のAPIキーを取得する必要があります。
 動かしてみると、なかなか素晴らしい!解説も分かりやすいのでとても勉強になります。各信号は量子スピンに対応するので、アニーリングの結果として、エネルギー関数を最小化するスピンの向き(北極、南極)のセットが返ってきます。すなわち、その時点では、北極ならその信号器の水平方向を青色に、南極なら垂直方向を青色にするのが最適だ、ということです。
 ただ、最適化の結果を見やすくしたい。とうことで、信号の青点灯と交差点での渋滞の度合いを可視化するアニメーションアプリを作成しました。図1にそれを示します。


感想
 色々なことが思い浮かぶのですが、この結果をみると、初期状態でかなり渋滞していても、この最適化で、青信号の点灯方向が変わり、急速に渋滞が解消に向かうことがわかります。その後は、信号の切り替えは穏やかになり、渋滞は徐々に減少します。もちろん、初期状態での車の量や、交差点での直進、右折、左折の割合などで状況は変わるでしよう。また、どこかのスピンが故障して、ある確率で方向が反転してしまう場合に、最適性はどのように失われるのでしょうか。(パリティチェックみたいな機構が付いているのかもしれませんが。)
 今回のこの解説は、今後、種々のアイディアを独自に試す場合の非常に重要な拠り所になりそうです。

参考文献

[1] CMOS Annealing Cloud Web News

[2] Daisuke Inoue, Akihisa Okada, Tadayoshi Matsumori, Kazuyuki Aihara, Hiroaki Yoshida: "Traffic Signal Optimization on a Square Lattice with Quantum Annealing"
[Submitted on 17 Mar 2020 (v1), last revised 1 Feb 2021 (this version, v2)]

2022年11月19日土曜日

深まる秋、落ち葉とどんぐりを拾う

 すっかり秋が深まった。読書の季節とも言われる。だが籠りがちになったら、散歩に出掛けて気分転換するのが良い。落ち葉が増えてきた小径をカサカサしばらく進むと、どんぐりを落とす木の下にきていた。種類は色々あるようだが、この近辺はコナラとマテバシイのようだ。落ちているどんぐりを布で軽く擦るとすぐに艶が出る。不思議な生命がまだ宿っているかのようだ。持ち帰って、落ち葉と共に台紙に貼り付けて眺める。今歩いてきた自然の情景を切り取り、机上に小さく再現したかのような感覚になる。
 この他に、もっと丸っこい、イガの付いたどんぐりも見つけていた。クヌギらしい。少し前に、量子ビットの模型(ブロッホ球)を作るために購入した透明アクリル球体が余分に残っているのを思い出した。それに残りのどんぐりを詰めて、机上に転がしてまた楽しむ。
 落ち葉やどんぐりの種類は、例えば以下のデジタル植物写真集で手軽に調べることができる。今回は、コナラ、マテバシイ、クヌギのどんぐりを確認することができた。
●植物の名前を探しやすい デジタル植物写真集

2022年11月16日水曜日

ビリヤードボールを使ったFredkinの万能論理ゲート

【要旨】量子コンピューティングに関するProf. Chris Bernhardtの著書[1]第6章は、"Classical Logic, Gates, and Circuits"だが、一般の論理回路の教科書には多分載っていない「Fredkinゲート」の説明がある。それは、著名な物理学者ファインマンも感銘を受けたと言われる、「ビリヤードボールによる万能ゲートの作成」である。その独創的なアイディアは量子(原子、分子)の衝突を連想させ、ファインマンの量子コンピュータ観に影響を与えたと言われる。この書籍で学んだことを纏めてみたい。(→改訂英語版はこちらをご覧ください。)

Fredkinのゲートとは
 これは、Edward Fredkinが1982年に発表した3入力(x, y, z)3出力の論理ゲートで、論理関数で表せば以下のように簡単なものである:
F(0, y, z )=(0, y, z),  F(1, y, z) = (1, z, y)

 最初のxは制御ビットなので、出力の1番目にそのまま出る。x = 0 の場合は、yとzとはそのまま出力され、x = 1 の場合は、yとzが交換されて出力される。簡単な計算で示すことができるのだが、以下の特徴を持つ:

  • 可逆論理ゲートになっている。すなわち、出力から入力へ到達できる。
  • 万能論理ゲートである。すなわち、NOTとANDとfan-out(入力の複製機能)をこのFredkinゲートのみで作成できる。
  • 入力と出力の1(True)の個数は常に等しい。これは後述するが、ビリヤードボールの個数が入力側と出力側で常に等しいことに対応する。
ビリヤードボールでFredkinゲートを作るという独創性
 Fredkinは、ビリヤードボールを使ってこのゲートを作成する方法を示した。ボール同士の衝突と、ボールと台の淵に置かれた鏡(入射角と反射角が等しい場合を想定した反射板)による反射を使う。ただし、完全な弾性衝突(エネルギーロスなし)や、複数のボールのサイズ、質量、速度、投入タイミングの完全な一致を想定するので、現実的に製造することは明らかに困難であり、概念的、論理的な論理モデルである。しかしながら、この方法は、驚くべき独創性に富んでおり、著名な物理学者ファインマンも感銘を受けた言われる。ボールの衝突が原子の衝突を連想させ、ファインマンの量子コンピュータへの考えにも影響を与えたとされる。

ビリヤードボールでスイッチゲートを作る
 まず、Fredkinゲートを構成するためのスイッチゲートを上記のビリヤードボールで作る。図1に示すように、2入力3出力である。ボールはIn1とIn2から投入される。それらのボールは弾性衝突と右上隅と左下隅に設置された鏡での反射を経て、Out1, Out2a, Out2bへ出力される。入力が2つとも与えられない場合は何も出力がない。In1にだけボールが入ると明らかにOut1にだけボールが出てくる。また、In2にのみボールが入るとOut2aにだけ出力がある。入力出力共に、ボール出現有りを1に、無しを0とすると、論理値表は右側のようになる。
 ここで注目すべきは、このゲートは可逆ゲートであることだ。実際、図の下段に示すように、入出力のラベル(論理式)はそのままで矢印だけを逆向き(3入力2出力)にすることで、その事実がわかる。
 さて、少し複雑なのが、In1とIn2に共にボールが投入された場合である。その動きを図2に示した。ここでは、見やすくするため、青と赤のボールを使っているが、本来はその区別は必要がない。入力側、出力側共に、とにかくボールが出現していれば1であり、出現しなければ0だということだけで十分なのである。
 なお、動作の簡単なアニメーション(衝突と反射を反映したスマホアプリ)を自作したので、以下にそのgif画像を示す。

Fredkinゲートをビリヤードボールのスイッチゲートで作る
 上記のスイッチゲート4個を用いて、最初に示したFredkinゲート(図3)を作ることができる。4個のうち2個は、上で述べた可逆性を使って逆向きにしたものが接続されている。結論から言うと、仮にスイッチゲート自体は作成できたとしても、それを組み合わせて、Fredkinゲートを構成するには超絶技巧が必要だ。すなわち、スイッチゲート間を流れるボールを反射させる鏡を適切に設置する必要がある上、衝突すべき時に衝突し、そうでない時には衝突しないように、経路上に適切に遅延を与える必要があるからである。もしも、それが実現できれば、Fredkinゲートは、図3に示すような、3入力3出力の論理ゲートとして使うことができる。
感想
 本書第6章は、量子コンピューティングの基本原理(量子のsuperpositionやentanglement,
Bell's theoremなど)が終わり、次に量子ゲート、量子回路に入る直前の章である。著者は、
「このFredkinゲートはこの後の量子回路に直接必要なものではないが、類稀なる独創性に感銘を受けて本章に含めた」と述べている。小生にもそれが分かった気がするのである。

References
[1] Chris Bernhardt, “Quantum Computing for Everyone”, MIT Press, 2020 

2022年11月10日木曜日

My understanding of the Quantum Key Distribution Protocol Ekert (E91)

Japanese abstract
前報は、単一量子ビットを利用する量子鍵配送プロトコルBB84の説明であったが、今回は、「もつれた状態」の2つの量子ビット対のストリームを利用した安全な鍵配送プロトコルEkertを説明する。これは、すでに本ブログで紹介した「Bellのテスト(Bellの不等式)」に基づいている。このような量子ビットを受け取った2者が、それぞれランダムに選択した正規直交基底を使ってそれを測定する。その結果の両者の古典ビット列の一致度が盗聴の有無を明らかにする。この記事は、Prof. Chris Bernhardtの著書[1]に基づいているが、小生が理解した内容を独自の観点からまとめたものである。

English Abstract
In my previous article, I described the quantum key distribution protocol BB84, which uses a single qubit. Here I describe the Ekert, a secure key distribution protocol that uses a stream of two qubit pairs in an entangled state. This is based on Bell's test (Bell's inequality) which was already introduced in this blog. Two parties that receive such qubits each measure them using randomly chosen orthonormal bases. The degree of matching between the two resulting classical bit strings reveals the presence or absence of eavesdropping. This article is based on Prof. Chris Bernhardt's book [1] and explains the Ekert from my own point of view.

Measure qubits in different orthonormal bases
First, let's see what happens when we measure the received qubits in a different orthonormal basis than the one from the sender. In the following, for simplicity, the orthonormal bases will simply be referred to as bases. Here, one is randomly selected from the three types of bases shown in Fig 1. Bases D000, D120, and D240 correspond to setting the orientation of measurement apparatus to due north, southeast, and southwest, respectively.
    Next, Fig. 2 summarizes how each ket vector (vertical vector) of the basis used for measurement on the transmitting side is expressed in a different basis. In general, the state of a qubit will be a linear combination of the ket vectors of the chosen basis. The probability that a measurement result falls to a ket vector is the square of the coefficient of that ket vector.
    As already shown in Bell's test, Fig. 2 reveals an important point. If the measurement result in the original basis is 0 (falling to the first ket vector), it will be 0 with a probability of 1/4 when measured in another different basis. Also, if the measurement in the original basis is 1 (falling to the second ket vector), it will be 1 again with a probability of 1/4 when measured in a different basis.
    That is, there is a 1/4 probability that a measurement on the original basis agrees with another measurement on a different basis. This is a theoretical value, but if you send enough qubits and measure them, it should approach this probability infinitely.

How the quantum key distribution protocol Ekert works
With the above preparation, we can describe the Ekert protocol. Suppose we send a stream of two qubit pairs to Alice and Bob. Importantly, paired qubits are always in the entangled state 
(1/√2) |↑〉|↑〉+(1/√2) |↓〉|↓〉.
 Both will each receive one of the pair. My description will be made below with reference to Fig.3.
    Note that the entangled states
(1/√2) |↑〉|↑〉+(1/√2) |↓〉|↓〉 
        and  
(1/√2) |↘︎〉|↘︎〉+(1/√2) |↖︎〉|↖︎〉
are exactly the same. This fact is proven in reference [1], but is omitted here.
    Suppose that Alice performs measurements on the selected basis D120 (see Figure 1) before Bob does. For example, if the result is 0 (ie, |↘︎〉|↘︎〉), Bob's qubit will also be |↘︎〉 because of the entangled state. Bob measures it on a randomly chosen basis. If the basis is different from Alice's, he gets 0 with probability 1/4, from the fact already revealed in Fig2. Similarly, if Alice's measurement result is 1, Bob's measurement result will be 1 with probability 1/4.
    Now, after all qubits have been processed, Alice and Bob exchange their lists of bases (not measurement results) of their choice. In that case, secure communication is not particularly required. Since there are three types of bases that can be selected by both, the two bases match in 1/3 of the total cases. Qubits always give the same result when measured on the same basis. Therefore, If no eavesdropping has occurred, the measurements with their agreed bases can be the common key.

Why can eavesdropping be detected?
Now consider the case where Eve eavesdrops on an entangled qubit. As I mentioned in the previous BB84 protocol explanation, Eve always needs to set a certain base and use it to make measurements. If measured in such a way, the entanglement will disappear immediately. As a result, the probability that Alice's and Bob's classical bits match will change. For example, if Eve eavesdrops before Alice's measurements, we find that the entanglement disappears and the probability that Alice and Bob's classical bits match increases to 3/8. In other words, when the bases of Alice and Bob are different, if the probability that the classical bits of both match is 1/4, it can be said that there was no eavesdropping.
Acknowledgments
Thanks to Prof. Chris Bernhardt, author of reference [1], for kindly answering some of my questions about entanglement and Bell's inequality.
    I used the illustration (icon) of the Qni quantum circuit simulator[2] to show the qubit vectors..

References
[1] Chris Bernhardt, “Quantum Computing for Everyone”, MIT Press, 2020 

2022年11月6日日曜日

Amazon AlexaとMIT App Inventorのコラボ

【要旨】自然言語による応答システムとして、SiriやGoogleアシスタントなどを多くの人が利用しています。しかし、それらを組み込んで自分に必要な応答システムを自作するのは敷居が高いと言えるでしょう。今回、Amazonが10年間に渡って培ったAIによる自然言語処理AlexaとMIT App Inventorがコラボして、素晴らしいシステムをユーザに提供し始めました。まだ、全くの入り口に過ぎませんが、試用してみました。

Amazon AlexaとMIT App Inventorのコラボ
 下図のようなアナウンスがあり、いくつかのYoutube動画などでも紹介されています。これは初心者向けのチュートリアルですが、ビデオや資料を見ていると色々な魅力、可能性が感じられます。MITでは、自然言語でアプリの仕様を喋ることによって、現在のようなアプリ(処理ブロック)を自動生成するプロジェクトAptlyを進めています。今回のコラボは、Amazonの強力な自然言語処理を利用することで、Aptlyを推し進めることに繋がるのだと思います。(Aptlyについてはこちらで簡単に紹介しました。)

自然言語による自分なりの応答システムを作る道が拓けそう
 上記の情報をもとにして、簡単な自然言語による応答をテストしてみました。スマホ(AndroidまたはiPhone)とAlexaをCloud DBで連携させるものです。Alexaのデバイスを持っていれば良いのですが、それがなくても、PC上のエミュレータを使うことができます。また、Amazonの通常のアカウントの元で、「Developer ID」を取得しておく必要があります。上記URLの説明には、"no Amazon device or account required."と書いてあるのですが、"no account"は、教室の場合は先生だけがaccountを持っていれば良い、ということのようです。

 この簡単な例では、スマホからメッセージをCloudDBへ格納し、それをAlexa側から"get my message"や"what is my message"のように発話をすることで取り出しています。また、逆に"send the message"や"post the message"などと発話してCloudDBへ送り、スマホ側でそれを取り出します。ユーザは、"get ..."や"what is ..."などをIntentに登録できますが、必ずしもそのように発話しなくても、それらに近い言葉を使っても、AI自然言語処理が適宜判断できます。

 これは簡単な例に過ぎませんが、それでも、自分なりの特色ある応答システムを作れそうな気になりませんか?しかもそれを、これまで通り、MIT App Inventorの環境のままで実現できそうなところが素晴らしいです。今までは作れそうもないと思っていた人にとっても、新しい世界が拓けるように思います。
(追記)
 AmazonのAlexaは本来、日本語もできるのですが、このコラボに関しては日本語による命令は(現時点では多分)できないようです。ただし、メッセージの内容そのものは日本語でもOKであり、日本語のText-to-Speech、Speech-to-Text、CloudDBへの格納検索はもちろんできます。

2022年11月4日金曜日

量子鍵配送プロトコルBB84をスマホアプリで確認

abstract: 理論上(計算上)は明確になっている事項でも、実際に一歩づつトレースして理解することは意味があると考えました。AliceからBobへ、長い古典ビット列を送信することを想定します。問題は、それをEveに盗聴される可能性です。しかし、量子コンピューティングの世界では、Eveが盗聴すれば必ず露呈するという、量子鍵配送プロトコルBB84があります。そのエッセンスを、自作したスマホアプリを使って説明を試みました。

【改訂】2023-05-28、後半に「実際にBB84を構成するには」を追加し補足した。

Check the quantum key distribution protocol BB84 with a smartphone app
Even if the conclusion is known in theory, it is useful to deepen understanding by actually proceeding step by step. Now imagine sending a long string of classical bits from Alice to Bob. The problem is that it can be eavesdropped on by Eve. However, in the world of quantum computing, there is a quantum key distribution protocol (BB84) that if Eve eavesdrops, it will always be revealed. This time, I will explain the essence using a self-made smartphone app.

量子鍵配送プロトコルBB84の概要
 このプロトコルは1984年に発表されたもので、量子ビットの重ね合わせ(Quantum Superposition)を利用している。ここでは、単一量子ビットをひとつづゝ連続して送信するので、量子もつれ(Quantum Entanglement)は無い。(量子もつれ状態の量子ビット対の送信用には、Ekertプロトコルがあるが、それは別記事とする。)

 図1は、BB84の原理を確認するためのアプリである。量子シミュレータではない。Aliceは、例えば古典ビット2048個(これを暗号鍵にするつもり)の4倍の8192個を用意するが、これをそのままBobへ送信はしない。代わりに、2種類の2次元正規直交基底(以後、単に基底と呼ぶ)HかVを各ビット毎にランダムに選択して、ビット値に対応する、基底のケットベクトル(縦ベクトル)を送信する。古典ビット0と1は、それぞれ、基底の1番目と2番目のケットベクトルに対応させている。つまり、量子ビット(の状態ベクトル)を送信するのである。具体例は後で示す。
 Bobは、受信した量子ビット毎に、ランダムに(Aliceとは無関係に)同様にHかVを選択して、それによって量子ビットを「測定」する。その結果として、全部の受信が完了後には、Aliceと同じ長さの古典ビット列(8192個で構成)を得る。AliceとBobの持つこの古典ビット列の合致度によって、盗聴の有無を判定できるのである。

  Eveが盗聴する場合、受信量子ビットをそのままBobへ転送して自分はそのコピーを盗聴する、ということは量子原理から不可能である。盗聴するには、受信した量子ビットを必ず「測定」し、その結果としての量子ビットをBobへ転送するしかない。測定前の量子ビットは、(日常思考からは不思議なことだが)量子基本原理として、0に対応するか1に対応するかは決まらない。また、測定するには、どの基底を用いるかを決める必要がある。基底の選択によって0か1かに決まる確率は変化するが、Eveにとっては、ランダムに基底を選択する以外に方策がない。

正規直交基底と量子ビットの重ね合わせと測定
 上で述べた基底とその測定について、具体例で説明する。ここで選択できる基底VHは以下のようなものである。
 一般に量子ビットは、基底(|u>, |v>)を用いる場合、以下のような状態にある。これは量子重ね合わせ状態(Quantum Superposition)と呼ばれる。そして測定を行うと|u>か|v>のどちらかに確定する。つまり、0か1かになる。その確率は、それぞれの係数の2乗で決まる。
 ある量子ビットに対して同一基底を適用するのならば、何度測定しても必ず同一の結果になる。しかし、異なる基底で計測した場合は、0と1のどちらに倒れるかの確率は、基底のケットベクトルの係数(振幅確率)の平方となる。振幅確率の求め方は、参考文献[1]にあるので、それを使って、基底H, Vの場合を計算すると以下のようになる。
 このことから、HとVを使う限り、元の計測と今回の計測で異なる基底が使われる場合は、ちょうど確率0.5(= (±1/√2)の平方)で元の計測結果と同一となることが分かる。そこがポイントである。

盗聴があったとすれば何が変化するのか
 以上の準備をした上で、盗聴の有無で何が異なるのかを図2で見てみよう。すでに述べた通り、Eveが盗聴するとすれば、Eveは盗聴した量子ビット毎に、ランダムに基底HかVをに選択し、測定しなければならない。その結果として②に示された量子ビット列をBobへ送る。すなわち、Bobは本来の①の量子ビットとは異なる②を受信することになる。
 それにより、Bobの測定結果は本来のものと異なるであろう。Bobの測定結果として得られる古典ビット列は、Aliceが元々設定した古典ビット列と比較される。盗聴されていない場合は、上に述べた手順から、AliceとBobがそれぞれ選択した基底(H, V)は0.5の確率で一致するので、古典ビット列の少なくとも1/2が一致する。さらに、すでに述べた通り、異なる基底で測定したケースでは(量子ビットの重ね合わせにより)、確率0.5で両者の古典ビットが合致する。結局、(1/2)+(1/2)*(1/2) = 3/4 = 0.75の確率で両者の古典ビットは合致する。
 一方、盗聴があった場合は、Eveによる基底選択が加わるので、AliceとBobの基底の一致確率は(1/2)*(1/2)に低下する。そして、基底が一致しない場合のAliceとBobの古典ビットの一致確率は3/8となる。結局、確率(1/4)+(3/8)=5/8 = 0.625でAliceとBobの古典ビットが一致する。従って、最終的にAliceとBobの古典ビットの一致確率が0.75であれば盗聴は無く、0.625であれば盗聴されたと結論付けられる。

実際にBB84を構成するには
 これで理論は説明された。上の説明から、AliceとBobの選択した基底が一致する回数は2nとなる。その合致した基底でBobが測定した結果のビット列は、Aliceが持っているビット列と一致する。従って、盗聴がないと仮定すれば、Aliceはその2n長のビット列をBobに送らずに、両者がキーとしてそのビット列を共有できる。
 だが、実際には、Aliceは基底の量子状態ベクトルをBobに送信しているのでその盗聴の有無を確認しなければならない。そこで、両者はこの2n長のビット列の半分のn長のビット列を「暗号化しない通常通信」で送り合って、その一致度を確認する。もしも完全に一致すれば盗聴はないと言える。一方、その1/4が一致しなければ盗聴があったと言える。(そこでは、盗聴するにはその量子ビット(量子状態ベクトル)を測定する必要があり、そうすれば、Bobに送られるべき量子の状態は変化することを巧みに利用している。)
 盗聴がないと分かった場合には、合致した2n長のビット列の残りの半分であるn長のビット列をキーとして安全に使える。(実際には2n長が合致しているのだが、上記通常通信により、そのうちの半分は他人に知られている可能性があるためである。)

AliceとBobの持つ情報の一致度をスマホで計算
 ここでようやく前述のスマホアプリが登場する。今回は、両者の選択基底が異なる場合の振幅確率の平方はいずれの場合も0.5であった。このため、重ね合わせ状態にある量子ビットの測定結果は単にコイントス乱数で決めることができる。ただし、本当は、その乱数が「真の乱数」であることが求められる。スマホの数学ライブラリの乱数でも、非常に多く発生させれば問題は生じないだろう。図3には、Aliceが8192個の古典ビットを乱数で一つづゝ発生させた場合の結果を示している。
 盗聴なしとありの場合の両方とも、AliceとBobの最終的な古典ビットの一致度は、上に述べた数値とほぼ同一(小数点以下3桁まで一致)となった。このことから、BB84の理論通りの結果が得られたと言える。

参考文献
[1] Chris Bernhardt: Quantum Computing for Everyone, The MIT Press, 2020.

2022年10月27日木曜日

「量子コンピューティングExpo2022秋」に参加

 2日前まで量子物理の基本に関わるBellの定理に取り組んでいた。その発祥の地Belfast(北アイルランド)への旅行は当面無理だが、お馴染みの幕張メッセなら行ける。ということで、本日は一転して、そこで開催の実用指向「量子コンピューティングExpo」に参加した。でも、量子コンピューティングは実用レベルにあるのか?答えは大体分かっているだが、こんなに盛り上がっている状況を肌で感じ取りたい。

量子コンピューティングExpo 2022秋(10/26-28、幕張メッセ)
 まず、会場の雰囲気をご覧いただきたい。下図のように、他のいくつかのExpoとの同時開催なのでかなりの盛況。私は、今回は「量子コンピューティング」に絞って参加した。

 量子関係の出展の数はあまり多くはないが、有力な機関が目につく。下図には、東北大学とBlueqat等のスペースが大きく見える。東北大学は実際にはシグマアイという量子ベンチャである。Blueqatも、湊雄一郎氏をトップとする国内で著名な量子ベンチャ。後述するが、「量子ICTフォーラム」という産学官の量子プロジェクトもあった。凸版印刷は、いくつかの量子応用を展示していた。カナダは、D-Waveやxanaduなどで量子の先進技術国と見做されているので、カナダ大使館も応援で出展したのだと思われる。

量子アニーリングマシンと量子コンピュータ
 色々と議論はあるのだが、量子アニーリングマシンは、量子コンピュータとは区別するのが一般的になってきた。量子コンピュータの方は、実用的にはまだまだだが、量子アニーリングの方はかなり実用が進んでいる面がある。例えば、前出のシグマアイ(東北大学)+凸版印刷は、下図のような物流業務の改善を量子アニーリングで推進しているとの展示を行い、注目されたようだ。

量子コンピュータ(ゲート型)のシミュレータ
 量子物理に基づく量子コンピュータの物理的、数学的定式化ほぼ完成しているのだが、実用的な量子コンピュータ(NISQではなく、誤り耐性の実機)を作り上げるにはまだまだ課題が山積している。だが、継続的に研究開発が進められていることも強く感じられた。一方、そのような実用化には時間がかかるので、それまでに、使いやすい、高性能な量子回路シミュレータを利用する動きも見られる。
 量子回路シミュレータとしては、IBMのQiskitなどがあるが、今回展示されていたIQM Quantum ComputersのQniも独自の特徴を持つ。その最大のメリットは、一切の登録手続き無しに、いきなりWebブラウザを使って、量子回路(量子ゲートの組み合わせ)をビジュアルに構成して、シミュレーション結果をすぐに得られることだ。以下の図は、配布されていた「量子コンピューティング チートシート」である。恐らく誰でも、少し勉強すれば、これを頼りに基本的な量子回路を作り実行させることができる!

 また、これとは別の方向として、nvidiaが開発している量子回路シミュレータA100がある。cuQuantumやQsimというシミュレータをもち、自社の強力なGPU技術で大規模な量子ビット数を扱う量子回路のシミュレーションを大幅に高速化させるとしている。

 誤り耐性の量子コンピュータの実現はいつなのか
  Googleなどから、これに関するロードマップは発表されていて、2029年にそれを実現させるとのことである。ただし、その確実性については懐疑的な見方もある。国内では、例えば日立製作所では、すでに独自のCMOS Annealingマシンを世に出しているのだが、今回は、誤り耐性量子ゲート型も開発中であり、その実現は2050年付近とする旨の展示を出していた。この展示は、「量子ICTフォーラム」のブース内で行われていた。

  これらの開発見通しについては、次に述べる中村泰信氏へのインタビュー記事が大変参考になるであろう。

 理化学研究所の中村泰信氏へのインタビュー記事
 中村泰信氏は、世界で初めて「超伝導量子ビット」を開発し、その制御を実現したことで知られる。現在、理化学研究所量子コンピュータ研究センター長である。中村氏へのインタビューが載った「量子ICTフォーラム通信」が配布された。8ページに渡る詳細な記事だが、その内容が実に素晴らしい。今回、小生がこの量子コンピューティングExpoに参加して得た最大の成果は、この冊子を入手したこと、とさえ言えるのである。誤解などがあるかも知れないが、小生が特に感銘を受けた部分を、独断で以下にまとめた。

  Q1:Googleは量子コンピュータの実用化を2029年と発表したが、国産機の実用化は2050年とされている点についてお考えは?
  A1(中村氏):「2050年まで絶対にできない」のではない。だが、よその情報に安易に引きづられる形で前倒しするのではなく能動的に判断すべきだ。研究全体の動向を見ながら、ブレークスルーを起こすことを目標として、自分たちでできることを粛々とやっていく。

  Q2:国産初の挑戦として、2022年度中に64量子ビット、次の段階で144量子ビットのものを出す計画だが、なぜ、自前で作っていく必要があるのですか?
  A2(中村氏):他に先んじられたら「やらない」では、逸するものが多い。日本にも非常に優れた研究者技術者が大勢いる。自分たちで取り組むからこそ、現段階では想定されていないスピンオフや新しいブレークスルーが生まれ得る。

  Q3:日本は基礎研究は先行しても社会実装では他国に負けるイメージがあるのですが...
  A3(中村氏):「日本は駄目」「アメリカは良い」などと単純な結論に帰結したり、弱点ばかりに目を向けて悲観する必要はない。悲観的に考えてばかりだと何も解決しない。明るい側面を見ながら地道な努力を続けたい。目先に囚われずに、きちんと分野の基礎体力をつけることだ。

  Q4:量子技術に関心を持つ企業の人々、研究したいと考えている学生へ向けたメッセージをお願いしたい。
  A5(中村氏):特に学生にとって、社会的インパクトが莫大かつ未知の事柄に溢れている量子技術領域は、研究対象として非常に魅力的に映ると思う。一歩をぜひ踏み出して欲しい。企業の方々は、「もうしばらくしてから考えよう」と思うかも知れない。しかし、早いうちから勉強した者勝ちと言える。わずか1年でも景色が大きく変わる可能性がある。ぜひ、目を離さないでいただきたい。

 ■感想
  この出張の帰り際に、久しぶりに厚木有隣堂書店に立ち寄った。2階のIT関連書棚には、AI、機械学習、Web、プログラミング関係の書籍がびっしり数千冊は陳列されている。しかし、その中に、「量子コンピュータ」関係はわずか十数冊しかなかった。だからと言って、大学の情報技術関係者が、「まだいいだろう。もしばらく放っておこう」では寂しい。上記の中村氏の言葉通りである。大学であれば、行き先不透明であろうとも、未だ底知れぬ可能性を秘めた量子情報の分野へ踏み込む人が増えることを期待したい。

2022年10月24日月曜日

"Bellの定理"という名前の北アイルランドの通り

 今回は、Entanglement(量子もつれ)に関する著名なBell's Inequality(1964年発表のベルの不等式)について簡単に書きたいと思います。まず、この物理学者John Stewart Bellの偉大な功績を示すGoogle Mapsのスクリーンショットをご覧ください。
 人名に由来する、街の通りは幾つかあると思いますが、数学や物理の定理の名前がついているのはこれくらいしかないでしょう。すでにご紹介済みのProf. Chris Bernhardtの著書[1]に、そういう通りがあると書かれていたので、Google Mapsで検索したところ、上図のとおり発見。北アイルランドBelfastにある大学前の三日月形道路 "Bell's Theorem Crescent" がそれです。素晴らしい!多分無理ですが、Belfastへ旅行できればいいのですが。

ノーベル物理学賞2022とBellの不等式
 今年のノーベル物理学賞は、1982年に "violation of Bell inequalities"(Bell不等式の破れ)を確立したAlain Aspect等に贈られました。ここで誤解のないように書きたいのですが、「Bell不等式の破れ、すなわち不成立」と言うと、Bellが誤っていたかのように聞こえますが、全くその逆なのです。Bellは、ある問題に関する(Local Realism, Hidden Variablesを仮定した)古典物理観点の答えと量子物理の答えが異なること(すなわち、等しくない=inequality)を示しました。そして、量子物理の方が正しいだろうと唱えていたのです。それが、発表から20年近く後に、Alain Aspectによって実証されたのです。このことは、量子物理にとって(従って量子コンピューティングにも)極めて重要なこととされています。

Bellの不等式を古典物理と量子物理の観点から高校数学で理解する
 Bellの不等式の真髄を理解することは難しいかも知れません。しかしながら、Prof. Chris Bernhardtの著書[1]は、ある例題を用いて、高校数学の範囲の数式で、この理論を厳密かつ明快に説明しています。一貫性、厳密性、分かりやすさにおいて、卓越した名著だと感じ入ります。
 それでもなお生ずる疑問や理解が難しい点を、私は、著者にメールで2回質問(EntanglementとBell's Inequalityに関する確認)をしました。すぐに丁寧な回答を送ってくれました。それによって、私の理解は一段と深まったのです。そのメールでの応答はこちらにありますので、ご参考にして下さい。

Bellの理論が量子物理の正しさを示すことの実用的利用
 上のBell's Inequalityは、アカデミックな世界の理論ですが、実は応用上も注目されています。その一つは、現在主流の公開鍵暗号RSAなどにとって替わるとも言われる量子暗号での量子暗号鍵の配送の安全性保証です。これに関しても、[1]に簡潔に説明されていますが、2者間で配送している量子暗号鍵を第三者が盗聴すれば、Bellの理論におけるEntanglementによって必ず露呈してしまう、というものです。Eckert Protocol for Quantum Key Distributionと呼ばれています。

参考文献
[1] Chris Bernhardt: Quantum Computing for Everyone, The MIT Press, 2020.


2022年10月21日金曜日

著者に質問してみよう - 量子計算の基礎理論

 私は、量子コンピュータの基礎理論を下記に示した英語の本で勉強しています。単なる教養としてではなく、高校数学の範囲で、厳密に式を使ってクリアに説明しているところが非常に気に入っています。易しい英語で貫かれています。

●ノーベル物理学賞2022の量子理論を高校数学で学ぶ
https://sparse-dense.blogspot.com/2022/10/2022.html

 読み進めているうちに、ヤマ場となるEntanglement(量子もつれ)とBell's Inequality(Bellの不等式(の不成立))のところで、どうしても確認したい点が出てきました。著者のChris Bernhardt(米国Fairfield大学の数学の名誉教授)に質問したところ、直ちに回答してくれました。この世界、そういう文化になっているので、思いついたら質問するのがいいですね。

もしかすると、この本で勉強する人にとって、以下の応答は役立つかも知れないと考え掲載します。Prof. Chrisからは、メール応答文のブログ掲載に同意していただいています。
(あなたのブログはとても役立ちそうだ、と言っていただいたのも嬉しい。)

----------------
【山本より】
Hello Chris,
I am a Japanese reader of "Quantum Computing for Everyone".
This book is wonderful because it tries to explain difficult things clearly in high school mathematics.

I have a few questions regarding the Entangled Quantum Clocks on Page 68.
I think this is one of the most important parts of the book.
Thank you for your reply in advance.

Q1
I understand as follows, is it correct?
"There are two humans here (me and you), each with 100 clocks.
In other words, it is not the assumption that 100 people each have a watch."

Q2
Is the First scenario or the second scenario a fact that can be derived from the entangled state shown in the center of this page?
Or rather, if such a scenario were to hold, would it be considered as explained on page 69 below?
----------------

【Chrisより】
Hello Fujio,
You are correct that entanglement is one of the most important parts. 

Q1. You are correct. There are 100 pairs of clocks. Each pair of clocks is entangled. For each pair, you have one and I have the other.

Q2. The entangled state shown corresponds to one pair of entangled clocks. As soon as one of us looks at a clock, the state immediately jumps to either 

 or .

 Both states are unentangled. We either both get YES or both get NO.

 Our clocks are correlated, they always agree, but they don’t “decide” what the answer will be until one of us looks at (measures) our clock.


Hope this helps,
Chris 
----------------

【山本より】
Dear Chris,
Thank you very much for your reply.
Your answer cleared my mind.
I totally understand!
This takes me to Chapter 5, "Bell's Inequality".

I have already featured this book of yours in my blog post.
It's in Japanese so you may not be able to read it, but here it is:
https://sparse-dense.blogspot.com/2022/10/2022.html

I hope my question and your answer will be useful to other readers.
May I publish this response as-is on my blog?

Add the following information:
A Japanese version of this book was already published by Yuichiro Minato et. al.
In the middle of p.68 of the English version, "and I have the hundred partners." was mistranslated as follows:
"suppose there are 100 people to be paired with me"
I quickly realized that it was a weird translation, but your answer made it clear.
----------------

【Chrisより】
Of course! The translation sounds a little strange. Your blog looks as though it could be very helpful.
----------------

【山本より】

Dear Chris,

With your answers to my previous questions, I was able to read and understand Chapter 5 Bell's Inequality. Just in case, I would like to confirm. I understood as below, is it correct?

In the classical model, the results of Alice's and Bob's agree at least 5/9 (=0.55) in the case of P.82. The existence of such a lower bound is called Bell's inequality.

On the other hand, in the Quantum theory model, both results agree exactly by half (=0.50). The difference between the classical model and the quantum model, that is, 0.55 not equal 0.50, is called Bell's inequality violation.

Best regards,
Fujio Yamamoto

----------------

【Chrisより】

Dear Fujio,

The classical model predicts the proportion of times the measurements agree to be at least 5/9. Quantum theory predicts 1/2. These two numbers are not equal — that’s Bell’s inequality. It means that we can perform experiments to determine which theory is incorrect. 

All experiments performed so far, have agreed with quantum theory.

Chris

----------------

【山本より】

Dear Chris,

Thank you very much again for your reply.

The word "inequality" reminded me of ">" or "<", so I focused on the "lower limit" or "upper limit". Anyway, now I have a clear understanding.

I think your book can be divided into chapters 1 to 5 (Bell' Inequality) and chapters 6 onwards. The first half is basic theory and the second half is applied. I understand the first half almost perfectly, so I can work on the second half smoothly.

Incidentally, I was able to find a street in Belfast on Google Maps named "Bell's Theorem Crescent". Great!
----------------

【山本より】

Dear Chris

I really like your book on Quantum Computing and am studying.
I wrote a blog post to remind myself of what I've learned about Entanglement and the Ekert protocol.

#My understanding of the Quantum Key Distribution Protocol Ekerthttps://sparse-dense.blogspot.com/2022/11/my-understanding-of-quantum-key.html

Thanks for your wonderful book.

Regards,
Fujio

----------------

【Chrisより】

Dear Fuji,

Great post — and in English!
Thanks for sending me this,

Chris 
----------------