GroverのアルゴリズムでのOracleキュービットの必要性について少し混乱しています。
私の質問は、オラクルのキュービットが必要かどうかは、オラクルの実装方法に依存しますか?または、それはオラクルキュービットの何らかの理由がありますか?(例えば、オラクルキュビットなしでは解決できないいくつかの問題が存在する、またはオラクルキュビットの問題について考える方が簡単である、またはそれが慣習であるなど)
多くのリソースがオラクルキュービットを使用したGroverのアルゴリズムを紹介していますが、オラクルキュービットが不要な場合もあります。
たとえば、IBM QシミュレーターでのGroverのアルゴリズムの2つの実装を次に示します。1つはOracleキュービットを使用しており、もう1つは使用していません。どちらの場合も、| 00>、| 01>、| 10>、| 11>のスペースから| 11>を検索します。どちらの場合も、Oracleは| 11>を-| 11>に正常に切り替えます。
・オラクルキュービット付き(IBM Qシミュレーターへリンク)
・オラクルキュービットなし(IBM Qシミュレーターへのリンク)