-2

If I know what oracle to implement, I know what is the state that I am searching for, so why should I use this algorithm?

I mean, if my quantum control system knows how to implement the oracle, it should know how to just encode the specific target state.

Let's look at an example, I want to find the state 0010. I implement the algorithm with this circuit: enter image description here this circuit is equivalent to enter image description here

But, all the Hadamard and CCCZ gates end up to be approximately unity so actually all I am really doing is flipping the second qubit.

Overall, I could just flip the second qubit and find the state with a single gate.

1 Answers1

2

I think a good example here is a 3-SAT problem. For instance, think about an example of finding sets of answer that satisfy all those conditions :

(∨∨)∧(∨∨¬)∧(∨¬∨)∧(∨¬∨¬)∧(¬∨∨)∧(¬∨∨¬)∧(¬∨¬∨)

You make an oracle by simply putting all those conditions together, here you don't necessarily have to know the answer as it's given by the algorithm. Input every possible state to oracle by superposition then grover's search automatically finds the answer by phase flip and amplitude amplification in $O(\sqrt{N})$. enter image description here

taketoshi kinoshita
  • 1,249
  • 1
  • 2
  • 11