Da es sich bei der ursprünglichen Frage um eine Laienbeschreibung handelte, biete ich eine etwas andere Lösung an, die auf der Grundlage einer kontinuierlichen zeitlichen Entwicklung möglicherweise leichter zu verstehen ist (abhängig vom Hintergrund). (Ich behaupte jedoch nicht, dass es für einen Laien geeignet ist.)
Wir gehen von einem Anfangszustand , die eine gleichmäßige Überlagerung aller Staaten ist,
und wir streben einen Zustand finden| x⟩die als die richtige Antwort erkannt werden kann (vorausgesetztes ist genau ein solcher Zustand, obwohl dies verallgemeinert werden kann). Dazu entwickeln wir uns im Laufe der Zeit unter der Wirkung eines Hamiltonschen
H=| x⟩⟨x| +| & psgr;⟩⟨& psgr;| .
Das wirklich schöne Merkmal von Grovers Suche ist, dass wir zu diesem Zeitpunkt die Mathematik auf einen Unterraum von nur zwei Zuständen reduzieren können
|ψ⟩=12n−−√∑y∈{0,1}n|y⟩
|x⟩H=|x⟩⟨x|+|ψ⟩⟨ψ|.
, anstatt alle erfordern
2 n . Es ist einfacher zu beschreiben, ob wir aus diesen Zuständen eine orthonormale Basis bilden,
{ | x ⟩ , | & psgr; ⊥ ⟩ } wo
| & psgr; ⊥ ⟩ = 1{|x⟩,|ψ⟩}2n{ | x ⟩ , |∣ψ⊥⟩ }
Auf dieser Basis kann die Zeitentwicklung
e-iHt| & psgr;⟩kann geschrieben werden
e-it(I+2-nZ+√∣∣ψ⊥⟩=12n−1−−−−−√∑y∈{0,1}n:y≠x|y⟩.
e−iHt|ψ⟩
wobei
Xund
Zdie Standard-Pauli-Matrizen sind. Dies kann umgeschrieben werden als
e-it(Icos(te−it(I+2−nZ+2n−1√2nX)⋅⎛⎝⎜12n√1−12n−−−−-√⎞⎠⎟,
XZ
Wenn wir uns also für eine Zeit entwickeln, ist
t=πe−it(Icos(t2n/2)−i12n/2sin(t2n/2)(Z+X2n−1−−−−−√))⎛⎝⎜12n√1−12n−−−−−√⎞⎠⎟.
t=π22n/212n/2(Z+X2n−1−−−−−√)⎛⎝⎜12n√1−12n−−−−−√⎞⎠⎟=(12n−2n−1√2n)+(1−12n2n−1√2n)=(10).
In other words, with probability 1, we get the state
|x⟩ that we were searching for. The usual circuit-based description of Grover's search is really just this continuous time evolution broken into discrete steps, with the slight disadvantage that you usually can't get exactly probability 1 for your outcome, just very close to it.
One caveat is the following: you could redefine H~=5H, and evolve using H~ and the evolution time would be 5 times shorter. If you wanted to be really radical, replace the 5 with 2n/2, and Grover's search runs in constant time! But you're not allowed to do this arbitrarily. Any given experiment would have a fixed maximum coupling strength (i.e. a fixed multiplier). So, different experiments have different running times, but their scaling is the same, 2n/2. It's just like saying that the gate cost in the circuit model is constant, rather than assuming that if we use a circuit of depth k each gate can be made to run in time 1/k.
The optimality proof essentially involves showing that if you made detection of one possible marked state |x⟩ any quicker, it would make detection of a different marked state, |y⟩, slower. Since the algorithm should work equally well whichever state is marked, this solution is the best one.