🗝️ オラクルは比較しない
STAGE 3 ― 重ね合わせを1回で ―
クリア 0 / 6
STAGE 3重ね合わせを1回で
線形性という仕分け係
🎯 ミッション
重ね合わせを錠前に通しても、回路が動くのは1回だけ――それなのに101の成分だけが反転する理由を、「線形性」という言葉を使って説明できれば合格。「中で成分を1個ずつ判定しているのでは?」に自分の言葉で反論できれば完璧だ。
未達成
ねこ博士
錠前は完成した。今日はいよいよ、重ね合わせを通す。
準備として、こんな状態を用意しよう。
|ψ⟩ = ½(|001⟩+|101⟩+|110⟩+|000⟩)
読み下すと、「001、101、110、000 の4つの候補に、長さ½の矢印が1本ずつ立っている一覧表」だ。確率はそれぞれ長さの2乗で¼ずつ、合計はちゃんと1になる。ψ(プサイ)は状態に付けた名前だよ。
うさ美
これを C=101 の錠前に通すんですね。前のステージの結果を成分ごとに当てはめてみます。
・|001⟩ → 一致しないので無傷
・|101⟩ → 一致するので −|101⟩
・|110⟩ → 無傷
・|000⟩ → 無傷
だから、
|ψ⟩ → ½(|001⟩−|101⟩+|110⟩+|000⟩)
……と計算はできるんですが、この計算、やっていいことの根拠がありません。私はいま、頭の中で成分を1個ずつ取り出して錠前に通しました。実物の回路も同じことを――つまり中で4回の判定を――しているんじゃないですか?
ねこ博士
今日の本題はまさにそこだよ。答えから言うと、その計算は正しい。しかし実物の回路は1回しか動いていないし、成分を取り出す装置はどこにもない。
両方を成り立たせているのが、量子力学の線形性という性質だ。式で書くと、どんなゲートUと、どんな矢印の組でも、
U(α|001⟩+β|101⟩) = αU|001⟩+βU|101⟩
――「足してから通した結果」と「1個ずつ通してから足した結果」が、必ず一致する。αやβは各成分の矢印だ。これはゲートの工夫ではなく、量子力学の法則そのものが持っている性質でね。シュレーディンガー方程式に従う変化は、例外なくこの形になる。
うさ美
つまり、私がやった「成分ごとに当てはめる」計算は、答えを求めるための便利な筆算であって、回路の中で起きている手続きの写しではない、ということですか。
回路が本当にやったことは……1回の書き換え。それなのに、答えは1個ずつ通した場合と必ず同じになると、法則が保証してくれている。
ねこ博士
その区別ができれば、今日の山は越えた。
もう一段具体的に、ゲートの側から見てみよう。前作でゲートは「一覧表の書き換え規則」だと学んだね。①のXゲートの規則は「y₁の桁が違う行どうしを、そっくり入れ替える」。000の行と010の行、101の行と111の行……全行に対して一斉に働く規則だ。②の多重制御Zの規則は「111の行の矢印だけ反転」。
どの規則も、行が4行埋まっていようが2¹²⁸行埋まっていようが、適用は1回。「埋まっている行の数だけ繰り返す」という概念が、そもそも存在しないんだ。
うさ美
波で考えると腑に落ちます。量子力学の旅の二重スリットでは、1個の光子の波が2つのスリットを通って、両方の道筋が同時に変化しました。あのとき「スリットが道筋を1本ずつ処理した」とは考えませんでした。波がいくつ山を持っていても、板は1枚、通過は1回
錠前も同じで、4つの山を持つ波が1枚の錠前を1回通り、101の山だけがひっくり返って出てくる。
ねこ博士
いいまとめだ。だから正確に言うなら、オラクルは
値を一つずつ取り出して、正解と比較する」のではなく、
U|101⟩=−|101⟩、それ以外の U|y⟩=|y⟩ という物理的な変換として、あらかじめ作り込まれている」。
そして線形性が、重ね合わせのどの成分にもこの変換を勝手に行き渡らせる。こちらは場合分けをひとつもしていない。仕分けは装置の仕事ではなく、法則の仕事なんだ。
うさ美
STAGE1からの流れがつながりました。
・古典の錠前:比較リストなしで一致を見抜く固定回路(比較0回)
・量子の錠前:同じ回路をX・多重制御Z・Xで作る(やはり比較0回)
・重ね合わせを通す:回路1回で、全成分の照合が済む(線形性のおかげ)
……ただ、まだ棚上げの疑問が残っています。3ビットの多重制御Zは門番1人で済みました。でも128ビットの「全部1なら反転」なんて巨大な門番が、部品として本当にあるんですか?
ねこ博士
ない、というのが正直な答えだ。実物の量子コンピュータが直接実行できるのは、1ビットや2〜3ビットに働く小さな基本ゲートだけでね。128ビットの門番は、小さな部品を組み合わせて自分で建てることになる。その建て方――ANDの鎖と逆計算――が次のステージの主役だよ。
重ね合わせをまるごと1回で通す 候補を押して重ね合わせに入れる/外す(金色=矢印あり) 錠前(回路)を通した回数:0 成分を1個ずつ取り出した回数:0 回(そういう装置がない)
|ψ⟩ = ½(|000⟩+|001⟩+|101⟩+|110⟩)
上の候補ボタンで好きな重ね合わせを作り、「錠前を1回通す」を押してみよう。何成分入れても、反転するのは101の矢印だけで、回数カウンタは1回ぶんしか進まない。2回通せば101の矢印は元に戻る(反転の反転)。回路の中に成分を取り出す装置はなく、仕分けはすべて線形性――「足してから通す=1個ずつ通してから足す」という法則――の仕事だ。
【線形性 ― 重ね合わせが勝手に仕分けられる理由】 ・例:|ψ⟩ = ½(|001⟩+|101⟩+|110⟩+|000⟩) を C=101 の錠前に1回通すと ½(|001⟩−|101⟩+|110⟩+|000⟩) ・これは回路が成分を1個ずつ取り出して比較した結果ではない。錠前は U|101⟩=−|101⟩U|y⟩=|y⟩(y≠101) という物理的な変換として作り込まれている ・線形性:U(α|001⟩+β|101⟩) = αU|001⟩+βU|101⟩。「足してから通す」と「1個ずつ通してから足す」の結果が必ず一致する――量子力学の法則そのものの性質 ・ゲートは一覧表全体への書き換え規則。埋まっている行が4行でも2¹²⁸行でも適用は1回。「行の数だけ繰り返す」という概念自体がない ・成分ごとの筆算は答えを求める便利な計算法であって、回路内部の手続きの写しではない
確認クイズ

Q1. ½(|001⟩+|101⟩+|110⟩+|000⟩) を C=101 の錠前に1回通すと?

Q2. 成分が100万個の重ね合わせを錠前に通すとき、回路が動く回数は?

Q3. 「線形性」の説明として正しいのは?