7

設計された干渉としてのアルゴリズム

オラクル・位相キックバック・Deutsch-Jozsa・Grover の直感

有用な量子アルゴリズムが、符号と振幅を配置して欲しい答えを強め、不要な経路を打ち消す仕組みを学びます。

干渉が、規律あるアルゴリズム設計の道具になる仕組みを説明します。

公開中50 発展

学習目標

  • 実用的高速化の主張に飛びつかず、オラクルの約束条件を説明できる。
  • 位相キックバックを相対符号の変化として追跡できる。
  • Deutsch-Jozsa の型を、約束された関数クラス上の干渉として説明できる。
  • 4項目の Grover 例で振幅増幅と限界を確認できる。
この章の内容

学習目標

  • オラクルの約束条件を慎重に述べられる。
  • 位相キックバックを相対符号の情報として追跡できる。
  • Deutsch-Jozsa を約束条件つきの干渉として説明できる。
  • 4項目の Grover 例を、実用的高速化と混同せず扱える。

アリス、アルゴリズム劇場へ入る

劇場は静かですが、アリスはすべての経路に振幅があり、すべての振幅に符号や位相があることに気づきます。量子アルゴリズムは、魔法の並列試行ではありません。最後に測定したとき、有用な経路が強まり、不要な経路が打ち消されるように作る、設計された干渉です。

前提の復習

相対位相、H、テンソル積、制御操作を使います。新しい道具はオラクルです。オラクルとは、約束された関数や印づけられた項目を符号化するユニタリなブラックボックスです。

オラクルで考える

オラクル問題は、漠然とした現実世界の課題ではありません。次を指定します。

  1. どのブラックボックス操作が使えるか。
  2. 隠れた関数がどの約束条件を満たすか。
  3. どの性質を判定するか。
  4. 何回のオラクル問い合わせを数えるか。

位相キックバック

関数オラクルを

Ufxy=xyf(x)U_f|x\rangle|y\rangle = |x\rangle|y\oplus f(x)\rangle

とします。第2レジスタを =(01)/2|-\rangle=(|0\rangle-|1\rangle)/\sqrt{2} に準備すると、オラクルは x|x\rangle 成分の位相を変えます。

Ufx=(1)f(x)x.U_f|x\rangle|-\rangle = (-1)^{f(x)}|x\rangle|-\rangle.

出力値が符号として現れます。その後のアダマールにより、符号パターンを測定確率の違いへ変換できます。これが位相キックバックです。

Deutsch-Jozsa

Deutsch-Jozsa 問題では、約束されたブール関数が定数関数かバランス関数かを判定します。理想的なオラクルモデルでは、量子回路は1回の問い合わせでその性質を判定できます。すべての値を一覧として読んでいるからではありません。位相キックバックが重ね合わせへ入力依存の相対符号パターンを書き込み、最後のアダマールが定数関数では全ゼロ結果を出し、バランス関数では全ゼロを消すからです。定数関数で全成分に共通する符号は大域位相にすぎませんが、バランス関数では入力間の符号が異なります。

nn ビット入力では、厳密な決定論的古典ブラックボックス・アルゴリズムは最悪の場合 2n1+12^{n-1}+1 回の問い合わせを必要としますが、Deutsch-Jozsa は約束の下で1回の量子問い合わせを使います。これはオラクル問い合わせ計算量の差であり、すべての物理実行時間が指数的に短いという主張ではありません。誤りを許すランダム化古典アルゴリズムは少数の標本で両者を識別できるため、比較では厳密判定か有界誤差かも明示する必要があります。

Deutsch-Jozsa の型
  1. 1

    入力の等しい重ね合わせを準備する

  2. 2

    位相キックバックつきでオラクルを適用する

  3. 3

    入力レジスタへアダマールを適用する

  4. 4

    測定する: 約束条件のもとで、全ゼロなら定数、非ゼロならバランス

結論は約束条件のもとで有効です。約束なしの汎用関数分類器ではありません。

Grover の直感

Grover 探索は、印づけられた項目の振幅を増幅します。4項目の場合、最初の振幅はすべて 1/21/2 です。項目3が印づけられているなら、オラクルはその振幅を 1/2-1/2 に反転します。拡散ステップは、振幅を平均まわりに反射します。符号反転後の平均は

1/2+1/2+1/21/24=14\frac{1/2+1/2+1/2-1/2}{4}=\frac{1}{4}

です。各振幅 aa を平均 aˉ\bar a のまわりに反射すると 2aˉa2\bar a-a になります。印のない振幅は0、印づけられた振幅は1になり、この小さな理想例では1回の反復で確率1になります。

標的が1つの場合、Grover はオラクル問い合わせ回数をおおよそ O(N)O(N) から O(N)O(\sqrt{N}) へ改善します。より一般に、既知の M>0M>0 個の標的があるとき、振幅増幅は高い確率で1つを見つけるために O(N/M)O(\sqrt{N/M}) 回のオラクル呼び出しを使います。特に MM が未知なら、定数係数、停止規則、成功確率も重要です。強力ですが指数高速化ではなく、オラクル構成やフォールトトレラント回路のコストが消えるわけでもありません。

計算例:位相から答えへ

1ビット均衡関数 f(0)=0f(0)=0, f(1)=1f(1)=1 では、位相キックバックが +|+\rangle|-\rangle に変え、最後の H が |-\rangle1|1\rangle に写します。定数関数では両振幅が同じ符号を受けるため、入力は大域位相を除いて +|+\rangle のままで、最後の H は 0|0\rangle を作ります。回路が得るのは約束された性質であり、両方の関数値を読出し可能な一覧にしたものではありません。

よくある誤解

ガイド付き演習

1ビット定数関数と1ビット均衡関数を1つずつ選び、それぞれの位相因子 (1)f(0)(-1)^{f(0)}(1)f(1)(-1)^{f(1)} を書いてから、概念的に H を適用します。次に Grover の主張を監査し、NN、標的数、オラクル費用、問い合わせ回数、必要成功確率を列挙してください。

章末評価

約束条件を述べ、位相符号を追跡し、Deutsch-Jozsa の最終測定を説明し、4項目 Grover の振幅更新を計算できるようにしましょう。

理解度チェック

標的を |-> にした位相キックバックで、f(x)=1 は入力成分に何をするか。

まとめ

次の一歩

理想アルゴリズムを現実と照合できる精度で説明できるようになりました。第8章ではチャネル、デコヒーレンス、シンドローム抽出、フォールトトレラント量子計算の資源前提を扱います。

参考文献と発展学習

章の演習

この章の内容を、短い対話型演習で練習します。

理解度チェックfoundation

オラクル約束の門

オラクル問題が約束すること、しないことを述べる。

未開始

ヒント

高速化を主張する前に、ブラックボックス、約束条件、数える資源を明示します。
オラクル高速化を最も安全に表す文はどれか。
    演習foundation

    キックバックの鏡

    情報が相対位相になる符号反転を追跡する。

    未開始

    |-> 標的

    Ufx>y>=x>yxorf(x)>U_f|x>|y> = |x>|y xor f(x)> で、標的を |-> にすると Ufx>>=(1)f(x)x>>U_f|x>|-> = (-1)^{f(x)}|x>|-> です。

    f(x)=1 で標的が |-> のとき、何が変わるか。
      対話型の例intermediate

      Grover 振幅鍛冶場

      4項目の振幅増幅ステップを計算する。

      未開始

      4項目の理想例

      振幅をすべて 1/2 から始めます。印づけた1項目の符号を反転します。平均は 1/4 です。平均まわりに反射すると、印のない振幅は0、印づけられた振幅は1になります。

        チャプター確認問題intermediate

        第7章 評価

        オラクル約束、キックバック、Deutsch-Jozsa、Grover の限界を統合する。

        未開始

        ヒント

        確率の前に相対符号を追い、オラクル問い合わせ主張と端から端までの実行時間を分けます。
        評価 I — 理想モデルで Deutsch-Jozsa を決定論的にするものは何か。
        評価 II — Grover について責任ある主張はどれか。
          演習intermediate

          Deutsch-Jozsa の追跡

          定数対均衡という約束問題を、位相と干渉を通して追跡する。

          未開始

          約束された関数

          1ビット入力について、ff が定数または均衡だと約束されています。Alice は1回のオラクル問い合わせで判定します。

          ヒント

          位相キックバックにより、入力振幅は (1)f(0)(-1)^{f(0)}(1)f(1)(-1)^{f(1)} の符号を得ます。最後の H が符号の一致を検査します。

          最後の H の後、1ビット均衡関数を示す入力測定結果はどれですか。
            理解度チェックintermediate

            オラクル計算量台帳

            オラクル問い合わせ計算量を、実装やデータアクセス費用と区別する。

            未開始

            ブラックボックスの請求書

            あるアルゴリズムが1回のオラクル問い合わせを宣伝しています。Alice は問い合わせモデルが意図的に数えない費用を確認します。

            ヒント

            問い合わせ計算量は定義されたブラックボックスの呼出回数を比較します。総実行時間にはオラクル構築、ゲート、配線、誤り訂正、入出力も含まれます。

            Deutsch-Jozsa の1問い合わせ結果が示すものはどれですか。
              対話型の例advanced

              Grover 反復回数

              振幅増幅の有効な反復回数を見積もる。

              未開始

              回し過ぎない

              Grover 反復は状態を標的部分空間へ回転させますが、反復し過ぎると最良の測定点を通り過ぎます。

              ヒント

              NN 項目中1つが標的なら、理想的な大きな NN の近似で有効な反復回数は (π/4)N\lfloor(\pi/4)\sqrt{N}\rfloor 付近です。

                チャプター確認問題advanced

                高速化主張の監査

                誇張されたアルゴリズム主張を、モデル、比較対象、資源条件を含めて書き直す。

                未開始

                アルゴリズム記者室

                「量子コンピュータは全回答を調べ、最良のものを瞬時に選ぶ」という文を Alice が受け取ります。

                ヒント

                責任ある主張は、問題、入力モデル、比較アルゴリズム、数える資源、成功基準、実装前提を明示します。

                責任ある書き換えはどれですか。

                  章の完了

                  完了した演習: 0/8

                  次へ: 8章の評価を受ける