UNISYS TECHNOLOGY REVIEW 第 136 号，AUG. 2018

量子系の仮説を読み解く──量子計算の深い理解にむけてPostulates for Quantum Systems Demystiﬁed── For Further Understanding of Quantum Computation
川
要

約

辺

治

之

量子プログラムで広く用いられているデータモデルでは，量子系を 4 個の仮説に従う

ものとして定式化する．この量子系の状態や操作についての直観的なイメージをプログラム
言語で記述するためには，その 4 個の仮説およびその基礎をなす数学的構造を十分に理解することが求められる．そして，そのような数学的構造を理解するというのは，単に提示された公式を知るだけでなく，それが何を意味し，なぜそれが成り立つのかを実感することにほかならない．
Abstract

Most of data models used in quantum programs are formulated as obeying four postulates forquantum systems. To convert intuitive images of states and operations for such systems into computer
programs, it is required to understand those postulates and mathematical structures that underlying them.
And understanding the structures is no more than realizing what they mean and why they hold, rather
than just knowing the resulting formula proposed.

1.

は

じ

め

に

一般に，プログラムを書くためにはそのプログラムが取り扱うデータモデルを理解する必要がある．たとえば，古典的な計算機のプログラムでは，取り扱うデータの最小単位をビットと呼び，それぞれのビットは 0 か 1 を表す．
（その両方を同時に表すことはない．
）このビットを（たとえば）32 個あわせて整数を表す．また，そのデータに対する演算についても理解していなければならない．同様に，量子プログラムについても，それが取り扱うデータモデルを理解する必要がある．
古典的な計算機の回路モデルが，ビットの入力線とビットの出力線をもつ論理ゲート

を組み合わせて期待する出力を生成するものであるように，量子回路モデルは，初期化された量子系に対して，作用素と呼ばれるいくつかの演算を施すことによって，期待する出力を生成するものである．そのモデルは数学的に定式化されてはいるものの，その対象に対して直観的なイメージを思い浮かべることはそれほど簡単ではない．本稿では，量子系についての理解を深めるために，単にその数学的定義や式を追うのではなく，可能な限りその意味を説明し，また，なぜそれが成り立つのかを具体的に示す．
本稿の構成は次のとおりである．2 章では，量子回路モデルをはじめとする多くの量子計算で使われている量子系に対する 4 個の仮説とそれが意味するところを概観する．3 章では，グローバーの探索アルゴリズムを例として，この仮説に基づく量子計算がどのように行われるかを説明する．そして，4 章では，この量子系の仮説を理解するために必要な数学を紹介する．
（85）85

86（86）2.

量子系の仮説いくつかの量子計算のモデルが提案されているが，もっとも一般的に使われている量子回路

モデルをはじめとして，多くの計算モデルで扱う量子系はこのあとで述べる 4 個の仮説に従う
ものとみなす ．これらの仮説は，量子系を物理的に実現する装置に対する量子力学からの要［1］

請ともいえるが，本稿では，どのように量子系が実現されているかは問わないので，なぜ量子系がこの仮説に従うかについては触れない．逆にいえば，この 4 個の公理をみたす系のことを量子系と呼ぶと考えてもらってよい．
以降の節においては，まずそれぞれの仮説を提示し，その仮説が意味するところを可能な限り直観的にイメージできるように説明する．その仮説が述べていることの根底にある数学（線形代数）については，4 章で詳しく述べる．
2. 1

量子系の状態空間

量子系の仮説 1．
（閉じた，すなわち外界との相互作用のない）量子系の状態空間は複素ヒルベルト空間で表現され，その系の（純粋）状態はその状態空間の単位ベクトルで記述される．
量子系の状態空間とは，量子状態を保持する（概念的な）記憶領域である．量子系の状態空間が複素ヒルベルト空間と呼ばれる特定のベクトル空間で表現されるので，量子状態はそのベ
クトル空間内のベクトルである．ここでは，ベクトルは個の数値の組（ 1,

2

, …,

）であ

ると考えてもらってよい．この成分を用いたベクトルの表記が実際に何を意味しているかは
4. 1. 2 項で述べる．
古典的計算機の計算モデル（たとえば，回路モデル）が扱うデータ領域の最小構成単位が 1
ビットであるように，量子系の状態空間の最小構成単位は，1 量子ビットの状態空間で，2 次元の複素ヒルベルト空間 H2 によって表現される．複素ヒルベルト空間については 4. 1 節で説明するが，ここでは，複素数の代わりに実数を用いた 2 次元の実ヒルベルト空間である 2 次元
平面を思い浮かべておくとよいだろう．
H2 も 2 次元の線型空間であり，その正規直交基底 （互いに直交する長さが 1 のベクトルからなる基底）は 2 個の基底ベクトルから構成され，それを 0 ， 1 と表記する．量子力学では，
量子状態（量子系の状態空間のベクトル）を表すのにこのブラケット記法と呼ばれる記法が伝統的に用いられている．一般に， v が「 という名前のベクトル」を表しているのと同じように， ϕ は「φ という名前のベクトル」を表す． 0 は零ベクトル（長さが 0 のベクトル）ではなく，正規直交基底を構成する長さが 1 のベクトルである． 0 は 0 番目の基底ベクトル，1 は 1 番目の基底ベクトルを意味していると考えればよいだろう．ただし，量子力学（そして量子計算）では，このブラケット記法をある意味で濫用し，の中に書かれているものが，単なる名前ではなく，数値や式でもあるので，注意が必要である．
1 量子ビットの量子状態は，この 2 個の基底ベクトルの複素係数の線型和 α 0 + β 1 として表すことができる．ただし，量子状態を表すベクトルは長さが 1 になるように，複素数 α22と β の間に α + β = 1 という関係が成り立つ．
古典的計算機の 1 ビットは 0 か 1 のいずれかの値をとり，その両方の値を同時にとることはないのに対して，1 量子ビットの状態空間は「0 と 1 の重ね合わせ」の状態をとることができる．

量子系の仮説を読み解く（87）872 次元ヒルベルト空間内の単位ベクトルが量子状態を表すので， 0 と 1 という直交する二つのベクトルの「中間」の方向を向いているようなベクトル，たとえば， 0.6 0 + 0.8i 1 や，3章のグローバーの探索アルゴリズムにおいて重要な役割を演じる - =

1
2

0 -

1
2

1 なども

1 量子ビットの量子状態になりうる．
（ は虚数単位，すなわち， 2 = -1 である．
「複素」ヒルベルト空間なので，係数として複素数を許す．
）したがって，「0 と 1 の重ね合わせ」状態とは，量子状態が 0 と 1 の線型和として表された状態にほかならない．そして，「0 と 1 の重ね合
わせ」は単一の状態ではなく， 0 と 1 の線型和として無限に多くの状態の総称なのである．
2. 2

複合量子系

量子系の仮説 2．複合量子系の状態空間は，それを構成する部分状態空間のテンソル積になる．
この仮説は，いかにして複数の量子系を組み合わせて大きな量子系を作るかを示している．
量子ビットの複合量子系とは，数学的には

個の H2 のテンソル積である．テンソル積とは，たとえば，実数の積や行列の積のような，ある対象空間の要素間の演算ではなく，二つ（以上）の空間をもとにして新たな空間を定義するやり方である．
テンソル積では， 個の 2 次元ヒルベルト空間（それぞれが 1 量子ビット）のテンソル積によって得られる空間，すなわち 量子ビットの量子系の状態空間は，2 次元になる．すなわち，量子ビット数の増加に伴って，その複合量子系の次元は指数関数的に増大する．（これを，古典的な計算機において， ビットの領域が 2 までの数を表すのと混同してはならない．古典的な計算機のビットの領域は 2 通りの数のうちの一つを表すことができるのであって，それらのうちの複数を同時に表すことはできない． 量子ビットの量子状態では，2 個の数の組を表すことができるのである．
）
この量子ビットの複合量子系を表す 2 次元ヒルベルト空間のベクトルに対して演算を行うと，このベクトルの 2 個の成分に対して同時に処理を行うことができるので，処理の多重度は 2 になる．これが量子並行性であり，古典的計算機では（現実的な時間内で）解けない計算が量子計算機では解けるといわれることの理由である．ただし，次節で述べるように，どんな処理でも多重度 2 で行えるわけではない．
個の H2 それぞれの基底ベクトルを ψ i , 0 , ψ i , 1 （ = 1, 2, …, ）とするとき，これら個の H2 のテンソル積 ⊗ H2 は，

ψ 0, j Ä ψ 1, j Ä  Ä ψ n, j = ψ 1, j ψ 2, j  ψ n, j
1

2

n

1

2

= ψ 1, j1ψ 2, j2 ψ n, jn

n( j1 , j2 ,  jn Î {0, 1})を基底ベクトルとする．この等式の左辺は，テンソル積の基底ベクトルに対するブラケット記
法での略記法である．H2 の標準的な基底ベクトルとして 0 ， 1 を使うことにすると， 量
子ビットの基底ベクトルは，0 と 1 による長さの記号列がの中に現れる．この記号列を2 進数と解釈して， 0 , 1 ,  , 2 - 1 を基底ベクトルとすることが多い．この場合， 0 ，n

1 は， 量子ビットの状態空間の基底ベクトルであり，1 量子ビットの状態空間 H2 の基底ベクトルと同じ表記を使っているが，別のものである．

88（88）複合量子系の量子状態は，構成要素の量子状態の積として表される積状態のこともあるが，複数の積状態の線型和である「重ね合わせ」状態になることもある．たとえば，2 量子ビットの量子状態 01 = 0 Ä 1 Î ℋ 2 Ä ℋ 2 は積状態であるが，

1
2

01 +

1
2

10 Î ℋ 2 Ä ℋ 2 は，

01 と 10 の重ね合わせである．

2. 3

量子系に対する操作

量子系の仮説 3．
（閉じた）量子系の時刻 0 と における状態を，それぞれ ψ 0 ， ψ とすると，
時刻 0 と にだけ依存するユニタリ作用素

によって， ψ = U ψ 0 が成り立つ．

この仮説によって，量子系に対する操作（演算）が規定される．これもまた，古典的計算機における演算とはかなり違った様相を呈する．
量子系の操作（すなわち，量子状態の変更）は，その系を表すヒルベルト空間上のユニタリ作用素になる．量子状態をる種の×個の数値の組（ 1,

2

, …,

）とすれば，ユニタリ作用素は，あ行列と考えられる．ユニタリ作用素は，実際には，ヒルベルト空間内の回転もし

くは鏡映に移す操作に対応している．回転や鏡映は逆の操作も可能（回転は逆向きの回転で，鏡映はそれ自体をもう一度行うと元に戻る）なので，この仮説 3 から，量子系には非可逆な操作は行えないことが分かる．
古典的計算機のプログラムでは頻繁に用いられる代入操作は，（たとえば変数の）状態を変更すると，変数の代入前の状態を上書きしてしまい，それを元に戻す操作はない．このように，非可逆な操作である代入操作は，量子系の操作として用いることができない．すなわち，量子系のある部分の状態をほかの部分に代入して保存しておき，あとから使うことができないのである．（二つの状態を入れ換えることは，一種の回転と考えることができ，ユニタリ作用素によって行うことができる．
）
2. 4

量子系に対する測定

量子系の仮説 4．状態ヒルベルト空間をもつ系の量子測定は，正規化条件 å m M m† M m = Iℋを満たす有界線形作用素の集まり {とすると，この測定によって結果} によって記述される．測定直前の量子系の状態を ψが起きる確率 ( ) は

p (m) = M m ψ

であり，結果が2= ψ M m† M m ψになる場合の測定後の系の状態は

ψm =

Mm ψ
p (m)

になる．
量子系を測定することによって，その系から情報を取り出すことができる．大雑把にいえば，量子ビットの量子系を測定すると，その系の量子状態である 2 次元ベクトルの 0 でない成分（実際には，その成分の値ではなく，どの成分であるかを示す番号）が得られ，残りの情報

量子系の仮説を読み解く（89）89はなくなってしまう（系の状態が変化してしまう）．どの成分が得られるかは，その成分値の大きさの 2 乗に比例した確率によって決まる．したがって，同じ計算を繰り返しても，測定によって得られる結果は常に同じとは限らない．
ここで，仮説 4 に現れるいくつかの表記について説明しておく．確率 ( ) を定義する式に現れる ψ は， ψ の転置共役である．ベクトルを個の数値の組（ 1,

その転置共役は，行と列を入れ換え，それぞれの成分

2

, …,

）とすれば，

をその複素共役（複素数の虚部の符号を反転させたもの）に置き換えたものである．そして， ψ ϕ は，横ベクトルと縦ベクトルの積，すなわち， ψ と ϕ の内積である．
（もともとそれぞれのベクトルの表記にあった縦棒が，内積を表すときには 1 本になってしまうことについては，目をつぶっていただきたい．
）
また，

†

は，

の共役作用素とよばれ，を行列としたときには，その転置共役になる．

そして，∥∥は，ベクトルの長さを表す．
この測定のうち，とくによく使われるのが射影測定である．射影測定では，測定を記述する
有界線形作用素がすべて射影作用素である．射影作用素は，ヒルベルト空間のベクトルを，その部分空間に射影，すなわち，そのベクトルの「成分」のうち，その部分空間に含まれるものだけを残し，残りの「成分」を 0 にしたものに写す．たとえば，2 次元平面のベクトルは軸方向の成分とそれとは直交する 軸方向の成分に分解できる．このベクトルを 軸に射影すると x 軸方向の成分が取り出される．実際には，軸に対してだけ射影できるのではない．たとえば， =という直線に対する射影も同じように考えることができる．

この射影測定の特別な場合として，計算基底 0 , 1 ,  , N - 1 による測定がある．この場
合には，射影作用素は Pi = i i (i = 0, 1,  , N - 1) という形になり，それぞれ基底ベクトルN -1i が作る部分空間への射影になる．測定前の量子状態を ψ = å i =0 α i i とすると，結果がになる確率はp(i ) = Pi ψ2

= ψ Pi†Pi ψ = ψ†( i i ) ( i i ) ψ = ψ i i i i ψ = α 1α = α
i

i

2
i

となる．すなわち， i の振幅 α の長さの 2 乗の確率で，結果 が得られる．また，そのときの測定後の系の状態は

ψi =

(

Pi ψ
p( i )

=

αi
i
αi

)

となり，系の状態全体が複素数 α i / α i 倍だけ異なるものは同一視できるので，これは i である．
3.

グローバーの探索アルゴリズム
量子計算の簡単な例として，グローバーの探索アルゴリズムにおいて，ここまでに紹介した量子状態がどのように使われているかを説明する．
ここで解こうとしているのは，それぞれが整数 0, 1, …,- 1 で索引付けられた件の要素から構成されたデータベースを探索して，少なくとも一つの解をみつけるという問題である．
索引 ( = 0, 1, …,- 1）に対応する要素が解かどうかを判定するために，次のような関数（ある種のブラックボックス） が与えられているものとする．

90（90）ìï1 （ が解の場合）
f ( x ) = ïíïïî0 （それ以外の場合）

簡単のため， = 2 と仮定し，索引は ビットに格納できるものとする．また，この問題には，
1£</2 を満たすちょうど件の解があることが分かっているものとする．

古典的な計算アルゴリズムでは， = 0, 1, …,- 1 に対して順に ( ) の値を調べ， (x) = 1となるような を見つけるしかないので， の呼び出し回数の期待値は/である．これを，代表的な量子アルゴリズムであるグローバーの探索アルゴリズムを使って解くと次のようになる．
それぞれの要素が解かどうかの結果を格納する n 量子ビットの量子系 H = Ä H2 と， ( )の結果を作用させる 1 量子ビットの量子系 H2 からなる複合量子系を用意する．大雑把にいえば，等振幅の重ね合わせ（すなわち， x （ = 0, 1, …,- 1）の振幅（係数）がすべて等しい状態）の初期状態から始めて， ( ) = 1 であるような x の振幅をできるだけ大きくし， ( )= 0 であるような x の振幅をできるだけ小さくするように，ユニタリ作用素

を（何度か）

作用させて，系の状態を変える．その後で，測定を行うと解に対する索引 が得られることになる．
まず， ∈ {0, 1, …,
ニタリ作用素- 1} およびを考える．

∈ {0, 1} に対して次のように定義される H Ä H2 のユ

U f x, q = x q Å f (x)このとき，右端の部分量子系 H2 の状態は， が解，すなわち， ( ) = 1 ならば（繰り上がりなしの加法演算 Å によって） 0 と 1 の間で回転し（ α 0 + β 1 が β 0 + α 1 になる），

そうでなければそのままにされる．この回転を - =
-- =

1
2

1

( 1 - 0 ) になるので，結果として，ユニタリ作用素
Uf

x , - ® (-1)

f (x)

2

( 0 - 1 ) に対して行うと， - - = 12 ( 1 - 0 )の作用は次のようになる．

x, -（この部分量子系の量子状態 - の係数 -1 を，外に出して (-1)
ルベルト空間の線形性のおかげである．
）これは，

f (x)

x , - とできるのは，ヒの作用によって H2 の状態には変化がな

いことを表しているので，以降では表記しない．つまり，単にUfx ® (-1)と書くことができる．したがって，この

f (x)

x

の作用は， ( ) = 1 ならば x の符号を反転させ，そうでない に対しては x をそのままにする．
ここで， 量子ビットの量子系 H の初期状態であるすべての基底ベクトルの等振幅の重ね合わせ Ψ を

Ψ =とするとき，グローバー回転

は

1

N -1

åx

N x =0量子系の仮説を読み解くβ（91）91

β
G Ψ

Ψ

Ψ

α

α

Uf Ψ

Uf Ψ

図 1：グローバー回転 G により量子状態 Ψ が G Ψ に移る．

()

G = 2 Ψ Ψ -I Ufとなる．ただし， は恒等作用素である．この式から，グローバー回転は，の作用（回転）を行ったのち， 2 Ψ Ψ - I の作用（回転）を行うと読める．
この，および，それを用いたグローバー回転の作用は，次のように考えると分かりや

すい． α を が解でないような x の（等振幅の）重ね合わせ， β を が解であるような
x の（等振幅の）重ね合わせとする．すなわち，

α =
β =
である．

1

å x

N - M f ( x )=01

å x

M f ( x )=1の作用は， ( ) = 1 ならば x の符号を反転し，そうでない x に対してはそのままにするので， α は動かず， β （を構成する成分）は符号が反転する．すなわち， α の周りの 180 度回転である．また，前節でみたように Ψ Ψ の作用は Ψ を含む空間への射影であるから，その 2 倍から元のベクトルを引くという 2 Ψ Ψ - I の作用は， Ψ 周りの 180
度回転である． Ψ = 1 - M / N α + M / N β であって，これら 3 個のベクトルは同一平面上にあることから，前述の二つの回転を行った結果もそれぞれこの平面内に収まり，したがって，それらの合成であるを行った結果もこの平面内に収まる（図 1）．

このグローバー回転を繰り返すと，量子系 H の状態を β に近づけることができる．そこ

で，計算基底 0 , 1 , ¼ , N - 1 を用いて測定すると，量子系の仮説 4 に基づいて， β に含まれる すなわち，解であるような が結果として得られる（確率が高い）．
（初期状態で測定
すると，すべての x の振幅が等しいので，測定の結果がどの になることも等確率であることに注意．）ただし，回転の結果が β にぴたりと重ならない場合もあり，その場合には ( )= 0 であるような x の振幅も 0 ではなく，誤った結果が得られる確率も 0 ではない（図 2）．
（そのあとで， ( ) の値を調べれば，それが実際に解かどうかは分かる．
）
系の状態を β に合うように回転させて測定すれば，その結果として解の一つが得られるわけであるが，そもそも β がどちらを向いているかが分かっていれば，それは解が分かってい92（92）

β

G2 Ψ

G Ψ

β
G Ψ

Ψ

α

U fG Ψ

α

U fG Ψ

図 2：グローバー回転を繰り返すと Gk Ψ は β に近づくが重ならないこともある．

るということであり，わざわざ計算する必要もない． β がどちらを向いているか分からない
状況で，うまくベクトルを回転させて β と同じ向きにしなければいけないところに，量子アルゴリズムの難しさがある．
4.

数学的構造
この章では，量子系を表現するための数学的構造である複素ヒルベルト空間とユニタリ作用

素/エルミート作用素について，ここまでに述べた 4 個の仮説を理解するために必要な部分に限定して紹介する．ただし，それぞれの関係式が成り立つ理由が分かるように，計算の途中過程をできるだけ省略せずに示す．
4. 1

複素ヒルベルト空間

ヒルベルト空間とは，内積をもつ完備線形空間 H である．完備性は（大雑把にいえば）空間内の点列が収束する時にはその収束点もまたその空間に含まれるということである．本稿では，簡単のため線型空間を有限次元に限定して説明しているので，有限次元線形空間は必ず完備になり，したがって必然的にヒルベルト空間になるため，その詳細には触れないことにする．
4. 1. 1線形空間

複素線型空間とは，要素（すなわち，ベクトル）どうしの足し算 + と，要素の複素数倍 · という演算が定義された集合である．具体的には，複素線型空間の任意の要素 ϕ ， ψ ，

χ と任意の複素数 λ ，µ に対する演算は次の関係が成り立つ．

ϕ + ψ ÎVλ × ϕ ÎV（足し算について閉じている．
）（複素数倍について閉じている．
）

量子系の仮説を読み解く

ある特別な元 0 Îが存在して ϕ + 0 = 0 + ϕ = ϕ（93）93（零ベクトルの存在）

それぞれの ϕ に対して - ϕ Î V が存在し， ϕ + - ϕ = - ϕ + ϕ = 0（逆元の存在）（交換則が成り立つ．
）

ϕ +ψ =ψ +ϕ( ϕ + ψ )+ χ = ϕ +(ψ + χ )（足し算の結合則が成り立つ．
）

1× ϕ = ϕ()λ × µ × ϕ = (λµ ) × ϕ（複素数倍の結合則が成り立つ．
）(λ + µ ) × ϕ = λ × ϕ + µ × ϕ(

λ× ϕ + ψ（左分配則が成り立つ．
）)= λ× ϕ +λ× ψ（右分配則が成り立つ．
）

ただし， λ × ϕ の · は省略して λ ϕ と書くことにする．また， λ ϕ + µ ψ を λϕ + µψ と書くこともある．
4. 1. 2基底

線型空間は， 個の独立な（すなわち，それぞれのベクトルは残りの- 1 個のベクトルの線型和として表せない）ベクトルがあり，その線型空間のすべてのベクトルはこの立なベクトルの線型和として表せるとき，この線型空間の次元を
この
組（ 1,

個の独

とする． 次元線型空間の個の独立なベクトル ϕ1 , ϕ2 ,  , ϕn の組を，その線型空間の基底という． 個の数の2

, …,

）が a1 ϕ1 + a2 ϕ2 +¼ + an ϕn を表すものとして，これを次元線型空間のベクトルと考えることもできる．ただし，基底の選び方は 1 通りではないので，この個組によるベクトルの表現は，暗黙に基底を一つ固定しているということに注意されたい．
4. 1. 3線型空間

内積の内積とは，´

から（

は，実線形空間の場合は実数  ，複素線形空間の場合は複素数  ）への写像（2 引数の関数）で，の任意の要素 ϕ ， ψ ， χ と，

任意の要素 λ ，µ に対して次の条件を満たすものである．

ϕ ϕ ³ 0, 等号は ϕ = 0 のときに限る．
ψ ϕ = ϕψλϕ + µψ χ = λ ϕ χ + µ ψ χの94（94）

ただし， α は α の複素共役，すなわち，複素数 α の虚数部分の符号を変えたものである．
複素共役は，任意の複素数 α ，β に対して，

αβ = αβ(α ) = αという性質があるので，前述の内積の定義の条件から，

λϕ ψ = λ ϕ ψ = λ ψ ϕ = λ ψ ϕ = λψ ϕ = ϕ λψであることが分かる．すなわち，内積の一方のベクトルの係数である複素数は，複素共役にしてもう一方のベクトルの係数に移すことができる．
また， ϕ ψ = ψ ϕ において ϕ = ψ とすると， ϕ ϕ = ϕ ϕ となり，それ自体の複素共役と一致することから， ϕ ϕ は実数でなければならない．
この内積を用いて，ベクトル ϕ の長さ ϕ を

ϕ ϕ と定義する．内積の定義の条件から，任意のベクトルの長さは 0 以上であり，また，長さが 0 のベクトルは零ベクトルに限ることが分かる．
また，二つのベクトル ϕ ， ψ に対して， ϕ ψ = 0 となるならば，この二つのベクトルは直交するといい， ϕ ^ ψ と表記する．もちろん，2 次元平面の互いに直交するベクトルでも，この条件が成り立つ．
二つのベクトル ϕ ， ψ の長さを 1，すなわち単位ベクトルに限定すると，内積は，ある
意味で二つのベクトルがどれほど同じ方向を向いているかの指標である．まったく同じ方向を向いていれば，二つのベクトルは一致するので，それらの内積は ϕ ψ = ϕ ϕ = ϕ
なり，逆方向を向いていれば，それらの内積は ϕ ψ = ϕ -ϕ = - ϕ ϕ = - ϕ

2

2

=1と

= -1 である．また， ϕ と φ が直交していれば， ϕ ψ = 0 となる．
4. 2

ユニタリ作用素L(H ) を，ヒルベルト空間 H 上の（有界）線型作用素の集合とする．H が有限次元ヒルベ

ルト空間の場合は，すべての線型作用素は有界なので，線形性，すなわち，作用素(

H で，H の任意の要素 ϕ ， ψ と任意の複素数 λ に対して， A ϕ + ψ() = λ A ψ が成り立つものを考えればよい．

および A λ ψ
線形作用素)= A ϕ + Aψの共役作用素とは，H の任意の要素 ϕ ，ψ に対して， ϕ A ψが成り立つような線形作用素であり， A†と表記する．ユニタリ作用素
共役作用素

(

†

に対して

†

= が成り立つようなものである．

:H®

)=( ϕ A )ψ†

Î L(H ) とは，のを恒等作用素とするとき，()(

Uϕ Uψ = ϕ U † U ψ)= ϕ U U ψ = ϕ ψ†となるので，ユニタリ作用素による変換は，内積を保つ．すなわち，互いに直交するベクトルは，互いに直交するベクトルに移される．

量子系の仮説を読み解く

4. 3

エルミート作用素ある λ Î  に対して M ψ = λ ψ となる非零ベクトル ψ をλ を ψ に対応するの固有ベクトルといい，の固有値という．（すなわち，固有ベクトルとは向の変わらないベクトルであり，それにを作用させても方を作用させたときに何倍になるかという値が固有{値である．）一つの固有値に対する固有ベクトルの集合 ψ Î ℋ : M ψ = λ ψ形性によって）線型空間になり，λ に対応するを（95）95の固有空間と呼ばれる．

} は，（ の線の固有値の集合のスペクトルといい，spec ( ) と表記する．
線形作用素

Î L(H ) は，それ自身の共役作用素となるとき，すなわち，

=

†

であると

き，エルミート作用素という．物理学では，エルミート作用素は，観測可能量（物理量）とも呼ばれる．
エルミート作用素の相異なる固有値 λ1 ¹ λ2 に対応する固有空間は直交する．なぜなら，ある ψ Î H が両方の固有空間に含まれるとしたら， λ1 ψ = M ψ = λ2 ψ となるので，(λ1 - λ2 ) ψ = 0 でなければならないが， λ1 ¹ λ2 であることより， ψ = 0 となるからである．
また，エルミート作用素の任意の固有値入に対して，(

λ ϕψ = ϕ λψの固有値はすべて実数になる．なぜなら， ψ ， ϕ Î H と) = ϕ (M ψ ) = ( ϕ M ) ψ = ( ϕ λ ) ψ = λ ϕ ψtとなるので，λ = λ ，すなわち，それ自体の複素共役と等しくなるような複素数は実数である
からだ．
作用素

Î L(H ) がある部分空間への射影であるというのは， ϕ Î H を P ϕ0 Î X と

ϕ1 X に分解，すなわち， ϕ = ϕ0 + ϕ1 としたとき， P ϕ = ϕ0 となるということである．λ をの固有値とし， λ を λ に対応する固有空間への射影とすると，エルミート作用素

はスペクトル分解 M = å λ Îspec( M ) λ Pλ をもつ．その理由は次のとおり．ヒルベルト空間の

次元を

とすると，

の固有方程式は（重複度を含めて） 個の実解（固有値）をもち，その固有値に対応する固有空間は互いに直交するので，任意の ϕ をそれぞれの固有空間に含まれるベクトル ϕλ の和 å λ Îspec( M )ϕλ と表すことができる．そして，それぞれの固有値 λ に対して， Pλ ϕ = ϕλ である．このとき，任意の ϕ Î H に
M ϕ =Måλ Îspec( M )

ϕλ =

å

λ Îspec( M )M ϕλ =åλ Îspec( M )を作用させると，λ ϕλ =となるので， M = å λ Îspec( M ) λ Pλ が得られる．

å

λ Îspec( M )λ Pλ ϕ{}

射影測定は，このスペクトル分解 M = å λ Îspec( M ) λ Pλ によって定まる Pλ : λ Î spec ( M ) で記述される．この射影測定に対して，量子系の仮説 4 の正規化条件 å λ Pλ†Pλ = Iℋ が成り立つ
ことを示すには，射影作用素

2
λ は，エルミート作用素かつ Pλ = Pλ であることを使う．

å Pλt Pλ = å Pλ Pλ = å Pλ
λ

λ

λ

(

) となり，これは ϕ の互いに直交する部分空間への分解にほかならない．
したがって，å ( P ϕ ) = ϕ であり，å P P = I
であり，これを任意の ϕ Î H に作用させると，右辺は å λ Pλ ϕλ

å λ Pλ Pλ = Iℋ が成り立つ．

λ

†

λ

λ

†

量子系の仮説 4 によって，測定直前の量子系の状態を ψ とすると，測定によって結果

λℋ

96（96）が起きる確率 ( ) は2

p (m) = M m ψであるから，これを= ψ M m† M m ψ

全体に渡って足し合わせるとæöå p (m) = å ( ψ M m† M m ψ ) = ψ ççççèå M m† M m ÷÷ø÷÷ ψ = ψ Iℋ ψ = ψ ψ = 1mmとなり，必ずmのどれか一つが結果となることが分かる．

が射影作用素λ である場合には，結果がになる確率は，測定直前の状態 ψ をλ で射影した結果の長さの 2 乗であることから， ψ の向きにより近い向きの固有ベクトルをもつが高い確率で結果として得られることになる．また，そのときの測定後の系の状態は

ψm =であり， ψ m は ψ を

Pλ ψ
p (m)

に対応する部分空間に射影したもの（実際には，長さが 1 になるよ

うに調整している）になっている．
4.

お

わ

り

に

本稿で述べたことは量子系の定式化に関するごく入り口にすぎないが，その根底にある数学的構造の理解によって直観的なイメージを膨らませることができ，量子計算や量子プログラミ
ングの研究開発を進めるための一助となれば幸いである．本稿で述べたことの多くは，社内外の講演・出展ブース・個別の説明会で量子計算とは何かを紹介した際に，参加者からのご質問・ご意見に基づいて改善を積み重ねたことの結果である．量子計算や量子プログラミングに関心をもっていただき，それを紹介する機会を提供いただいた方々に感謝の意を表する．
─────────
参考文献 ［ 1 ］ M. Ying，『量子プログラミングの基礎』，共立出版，2017 年 3 月，pp.13‒31
執筆者紹介

川 辺 治 之（Haruyuki Kawabe）
1985 年日本ユニシス（株）入社．Lisp マシン・UNIX 等オープン系基盤ソフトウェアの開発・保守，ASP 事業の企画・運営，半構造化データベースの研究開発などに従事．2014 年より総合技術研究所に所属．現在の研究開発テーマは量子ソフトウェア開発．