下記などを参考にして、$ n $ビットに一般化したいな、と思ってまとめた。 $ n $ビットの変数2つ($ a ^ {(n)}, b ^ {(n)} $)を比較して、両者が等しい場合に標的ビットを反転させるゲートを作る。 標的ビットを$ \ket{-} $とすると、位相キックバックで位相オラクルになる。 単純には、$ a ^ {(n)}=b ^ {(n)}=000\cdots 0 $のケースと$ a ^ {(n)}=b ^ {(n)}=010\cdots 0 $のケースなど、 変数の値が異なる場合は互いに背反なので、 それぞれの値で等しい場合に標的ビットを反転させる制御$ X $ゲートを連続し…