量子コンピュータの基本的な仕組みが少し分かりました

先日、急に量子コンピュータのことが気になって、竹内繁樹著「量子コンピュータ 超並列計算のからくり」(ブルーバックス)を注文したことを書きました。

少しずつですが読んでいて、第4章「「量子」を使った計算機」という、量子計算の基本的な仕組みの説明まで読み終えたところです。

本自体は数式が苦手な人にも分かりやすく書いてあるので、今のところ何とか(半分くらい)ついて行っています。

光や電気は基本的な単位である「光子」や「電子」から成り立っていて、そのような基本単位を「量子」と呼ぶそうです。

面白いのは、光子を半透鏡という道具で2つの経路に分けた場合、各経路では「半分の光子」が検出されることはないらしい。

ではどうなるかというと、「ある振幅を持った2つの確率波として表される状態にある」としか言いようがない、と。

これを「重ね合わせ状態」と呼び、この状態を利用して莫大な並列計算を一挙に行う、というものらしいです。

これこそが現在のコンピューターの1ビット、つまり0と1という2つの状態だけではない、量子ビットの特徴です。

これだけ書くと何のことやら分かりませんが、例えば0と1のすべての組み合わせを足し算する場合、「0+0=0」、「0+1=1」、「1+0=1」、「1+1=2」の4つを、重ね合わせの状態を利用することで同時に行うのが量子計算ということのようです。

これは1個の量子ビット(1ビット)の例ですが、10個の量子ビットが使えるとなると、100万通り以上の計算を同時に行えるという、すさまじい計算能力になります。

この本のあとの章には、どうすれば量子コンピュータが実用化できるかが書いてあるのですが、そのような章があるくらいですから、実用化まではまだかなりの時間を要するようです。

とはいえ、実現したらコンピューターのパラダイムシフトだと思います。

以前もディープラーニングの本を興味深く読んでいることを書きましたが、この年になって、子供の頃に情報として与えられていた未来がやってきているように感じます。