物理とか

Index

qubitって? スピンを例にした説明


1.量子計算・量子コンピュータ

Feynmannが提案した量子計算は、現在実現すぐそこまで来ています。おそらくすぐに古典コンピュータのbitに対応するqubitが何十と実装されたマシンが現れることでしょう。

興味がある人は多いと思いますが、まだまだ量子計算の詳しい説明をしているサイトは少ないと思うので、このサイトで解説していくことにしました。もし少しでも興味がある人がいれば、どんどんTwitterなどで質問していただければ、分かる範囲で議論します。



2.qubitって?

量子計算で中心的な役割を果たす

qubit

(キュービット) とは、量子力学的に2つの状態を取ることのできる何かです。例として簡単なのはスピンでしょう。

そこで、スピンを例にとってqubitを解説してみたいと思います。スピンとは何か、という質問にはとても答えにくいのですが、とりあえずのところは電子や原子核のもつ自転運動のようなものだと考えれば十分と思います。しかしながら、その自転の性質はおよそ通常の感覚と相容れるものではありません。

スピン (正確にはスピン角運動量量子数1/2を持つスピン) には、上向きと下向きがあります。上下の向きというのはつまり、自転の向きを表すために、下の図のように、自転の向きに右ネジを回したときに進む方向を考えるのです。回転の向きを曖昧さ無く表すためには、このような言い方をするしかありません。

と、ここまでは普通の自転の説明に過ぎません。ここから説明することが、量子力学的な状態の面白いところになります。なるべく量子力学を深く知らない人にもわかりやすく説明しようと努力はしますが、やっぱり少しは予備知識が無いと受け止めにくいかもしれません。

さて、スピンには上向きと下向きがあると言いました。ある方向、例えばこれをz方向として、上向きの状態のことを\(\ket{0}\)、下向きの状態のことを\(\ket{1}\)と書くことにしてみましょう。\(\ket{}\)という記号はケットという記号で、量子力学的な状態を表すのに表すときに使う記号です。例えば\(\ket{1}\)はケット1のように読みます。この\(\ket{0},\ket{1}\)の2つの状態で表されるスピンが、量子コンピュータにおいて古典コンピュータでのbitに相当する

qubit

です。

なぜこれをbitと呼ばないのかというと、\(\ket{0},\ket{1}\)は古典的なコンピュータにおけるbitとは全く違う動きをするからです。具体例を挙げて説明してみます。

例えば、z方向上向きの状態\(\ket{0}\)にいる1つのスピンを取り上げて、それと直交するx方向にどれだけ回転しているかということを測定してみます。スピンが普通の自転ならば、この状況でx方向の回転があるわけが無いですね。だってz方向に回転しているものを測定するわけですから。しかし、スピンのような量子力学的なものを考えるときには、そのような考え方が通用しません。z方向上向きの状態にいるqubit\(\ket{0}\)がx方向にどれだけ回転しているかという「測定」をすると、ちょうど\(1/2\)の確率で、x方向に対してそれぞれ上向き・下向きに回転している、という結果となります。

これが古典的なコンピュータのbitと決定的に異なるところです。古典的なコンピュータでは、例えば電圧の高い・低いで1bit、つまり1,0を表現するわけですが、その電圧の高低は見る角度を変えたところで変わりません。このようなことが起こるのは量子力学的な現象に特有なことであり、こういう性質を利用して計算を行おう、というのが

量子コンピュータ

です。 (なんでこんなことが起こるか、と言われると困ってしまいます。自然がそうなっているから、と説明するしかありません。今のところ、こういう現象に対してのまともな理論は存在しませんし、もし、みんなが納得できるような理論を組み立てられたらノーベル賞間違いなしでしょう。)

3.qubitの性質について少しの追加説明

上に書いてあることをもう少し深く考えると、下の図のようなことを起こせます。z方向上向きの状態にいるqubit\(\ket{0}\)がx方向にどれだけ回転しているかという「測定」をし、さらに次にそのスピンがz方向にどれだけ回転しているか「測定」を行うのです。

すると、不思議なことに、最終段階ではなぜか、z方向下向きに回転している状態が現れることがあります。最初は間違いなくz方向上向きに回転していたにも関わらず、です。これはz方向に回転していたqubitが実はx方向にも回転していたということと同じように、x方向へ回転しているqubitは実はz方向にも回転しているということに起因します。

さて、このようなことをどう考えればいいのでしょうか。この現象をみて、「実は最初の状態で、z方向上向きに回転しているqubitは下向きの状態になる確率も持っていたのでは無いか」、と考える人もいることでしょう。しかし、最初の状態である、「z方向上向きに回転しているqubit」に対してz方向にどれだけ回転しているかという測定を行うと、必ず、100%、このqubitはz方向上向きに回転している、と観測されます。したがって最初に状態にz方向下向きの回転が入っているということは主張できません。

結局またこの現象は、自然がそうなっているからそうなるのだ、ということしか言えないと考えられています。量子力学で一般的な解釈は以下のようです。

最初の「測定」によって、qubitの状態がx方向上向きか下向きに1/2の確率で観測されます。この「観測」した瞬間に、一瞬でqubitの状態は観測した状態に移る、と考えられています。こうすると、確かに次の測定でz方向下向きに回転している可能性を説明できるようになりますが、なぜそんなことが起こるのか、ただの辻褄合わせではないか、というところは聞かないようにしましょう。これは量子力学で「波束の収縮」や観測問題と呼ばれている問題の一部で、まだまだ未解決の問題なのですから。

この辺で今回は終わりにして、次回からはもう少し詳しく、どういうqubitにどういう操作ができて、どうやって演算ができるのか、というところを説明していきたいと思います。次回からは少し数学が難しくなります。量子力学的な話をするには、どうしても数学が必要なのです。