干渉という計算資源 — 振幅の足し引きで答えを残す
「量子コンピュータは2n通りを同時に計算するから速い」— この説明は半分しか合っていません。重ね合わせを作っても、測定すればランダムな1つの結果が出るだけ。速さの本当の源泉は、間違った答えの振幅を打ち消し、正しい答えに振幅を集める「干渉」にあります。この章ではその干渉を、干渉計・回路・アルゴリズムの3段階で動かします。
1. 確率にはない「引き算」— 振幅の干渉項
古典の確率は必ず足し算です。事象Aに至る経路が2つあれば、確率は p1 + p2 と増える一方。ところが量子力学では、経路ごとに複素数の振幅が割り当てられ、確率は「振幅を足してから2乗」で決まります。
Δφ = π のとき、2つの経路があるのに到達確率が0になる — 経路を増やしたら結果が消える、という古典確率では絶対に起きない現象です。この「引き算」こそが量子計算の道具箱にしかない武器です。
2. 波として干渉し、粒として検出される — マッハ・ツェンダー干渉計
干渉の最小の実験装置がマッハ・ツェンダー干渉計です。光子1個がビームスプリッタで2経路の重ね合わせになり(振幅 1/√2 ずつ)、片方の経路で位相 φ を受け、2つ目のビームスプリッタで再結合します。検出器 D0 に届く振幅は2経路の合計 ½ + ½eiφ になり、確率は次のとおり振動します。
3. 位相を確率に変える — H–φ–H 回路
同じ現象を量子回路の言葉で書いたのが H → 位相ゲート φ → H という並びです。実は最初の H がビームスプリッタ①、次の H がビームスプリッタ②に対応しています。
重要なのは真ん中の時点。位相ゲートを通った直後の状態は (|0⟩ + eiφ|1⟩)/√2 ですが、この時点で測定しても P(0) = P(1) = 50% のままで、φ の痕跡はまったく見えません。位相は確率に直接は現れないのです。ところが2つ目の H で2つの振幅を干渉させると、φ が測定確率 cos²(φ/2) として浮かび上がります。
4. 1回の呼び出しで見抜く — ドイチュのアルゴリズム
干渉を「計算」に使った史上初の例がドイチュのアルゴリズム(1985)です。問題はこう:1ビット関数 f: {0,1} → {0,1} がブラックボックスとして与えられる。f は定数(f(0) = f(1))か均等(f(0) ≠ f(1))のどちらかだと分かっている。どちらかを判定せよ。
古典コンピュータでは f(0) と f(1) の両方を評価しないと判定できません(呼び出し2回)。量子コンピュータは重ね合わせた入力に Uf を1回だけ適用し、干渉で答えを取り出します。
キックバック後、入力側の状態は (−1)f(0)|0⟩ + (−1)f(1)|1⟩(規格化略)。最後の H が2つの振幅を干渉させ、|0⟩ の振幅は次のようになります。
| 古典アルゴリズム | ドイチュのアルゴリズム | |
|---|---|---|
| f の呼び出し回数 | 2回(f(0) と f(1)) | 1回(重ね合わせに適用) |
| 答えの出方 | 2つの値を見比べる | 干渉の結果が確定的に 0 か 1 |
| 使っている資源 | — | 重ね合わせ + 位相キックバック + 干渉 |
たった「2回が1回」ですが、これは量子計算が古典より原理的に少ない呼び出しで済む初の証明でした。同じ骨格を n ビットに拡張したドイチュ=ジョザのアルゴリズムでは 2n−1+1 回が1回になります。
5. 量子アルゴリズム設計の考え方 — 正解に振幅を集める
ドイチュのアルゴリズムに、量子アルゴリズム設計の3拍子が全部入っています。
- 広げる:H で全入力の重ね合わせを作る(ここまでは誰でもできる)。
- 刻む:問題の構造(f の値)を各経路の位相に写し取る(位相キックバック)。
- 集める:干渉ゲート(H や量子フーリエ変換)で、正解の振幅を強め合わせ、不正解を打ち消す。
グローバー探索(次章)は「刻む→集める」を √N 回繰り返して振幅を少しずつ正解に寄せ、ショアのアルゴリズムは量子フーリエ変換という巨大な干渉装置で周期だけを浮かび上がらせます。
6. まとめ
- 量子の確率は「振幅を足してから2乗」。干渉項 2|a₁||a₂|cos Δφ が古典確率にない足し引きを生む。
- 光子は波として干渉し、粒として検出される。確率の分布に干渉の縞が現れる。
- 位相は直接観測できない。H で挟んで干渉させることで確率に変換して読む。
- 位相キックバック:f の値を位相に移すトリック。多くのアルゴリズムの共通部品。
- 量子アルゴリズム=「広げる・刻む・集める」。速さの源泉は並列性ではなく干渉による集約。