Ponieważ oryginalne pytanie dotyczyło opisu laika, oferuję nieco inne rozwiązanie, być może łatwiejsze do zrozumienia (zależne od tła), oparte na ciągłym czasie ewolucja. (Nie udaję jednak, że nadaje się dla laika).
Zaczynamy od stanu początkowego, który jest jednolitą superpozycją wszystkich stanów,
a my staramy się znaleźć stan który można rozpoznać jako poprawną odpowiedź (zakładając, że istnieje dokładnie jeden taki stan, chociaż można go uogólnić). Aby to zrobić, ewoluujemy w czasie pod wpływem hamiltonowskiego
Naprawdę piękną cechą poszukiwań Grovera jest to, że w tym momencie możemy zredukować matematykę do podprzestrzeni składającej się tylko z dwóch stanów , zamiast wymagać wszystkich . Łatwiej jest to opisać, jeśli stworzymy ortonormalną podstawę z tych stanów, gdzie
| x⟩H=| x⟩⟨x| +| * F⟩⟨* F| . {| x⟩,| * F⟩}2n{| x⟩,| * F⊥⟩}| * F⊥⟩=1
|ψ⟩=12n−−√∑y∈{0,1}n|y⟩
|x⟩H=|x⟩⟨x|+|ψ⟩⟨ψ|.
{|x⟩,|ψ⟩}2n{|x⟩,∣∣ψ⊥⟩}e-iHt| * F⟩E-It(I+2-nZ+√∣∣ψ⊥⟩=12n−1−−−−−√∑y∈{0,1}n:y≠x|y⟩.
Na tej podstawie ewolucję czasu można zapisać jako
gdzie i są standardowymi macierzami Pauliego. Można to przepisać jako
Jeśli więc ewoluujemy przez jakiś czas
e−iHt|ψ⟩XZe-it(Icos(tmi- i t ( I + 2- nZ+ 2n- 1√2)nX)⋅ ⎛⎝⎜12)n√1 - 12)n-----√⎞⎠⎟,
XZt=πmi- i t( Ja cos( t2)n / 2) -i 12)n / 2grzech( t2)n / 2) ( Z+ X2)n- 1-----√) ) ⎛⎝⎜12)n√1 - 12)n-----√⎞⎠⎟.
t=π22n/2i ignorując fazy globalne, stanem końcowym jest
Innymi słowy, z prawdopodobieństwem 1 otrzymujemy stan którego szukaliśmy. Zwykle oparty na obwodzie opis poszukiwania Grovera to tak naprawdę ta ciągła ewolucja czasu podzielona na dyskretne kroki, z niewielką wadą, że zwykle nie można uzyskać dokładnie 1 prawdopodobieństwa dla wyniku, tylko bardzo blisko niego.
12n/2(Z+X2n−1−−−−−√)⎛⎝⎜12n√1−12n−−−−−√⎞⎠⎟=(12n−2n−1√2n)+(1−12n2n−1√2n)=(10).
|x⟩
Jedno zastrzeżenie jest następujące: możesz przedefiniować i ewoluować używając a czas ewolucji byłby 5 razy krótszy. Jeśli chcesz być naprawdę radykalny, zamień 5 na , a wyszukiwanie Grovera trwa w stałym czasie! Ale nie wolno ci tego robić arbitralnie. Dowolny eksperyment miałby ustaloną maksymalną siłę sprzęgania (tj. Stały mnożnik). Różne eksperymenty mają różne czasy działania, ale ich skalowanie jest takie samo, . To tak, jakby powiedzieć, że koszt bramki w modelu obwodu jest stały, zamiast zakładać, że jeśli użyjemy obwodu o głębokości każdą bramę można uruchomić w czasie .H~=5HH~2n/22n/2k1/k
Dowód optymalności zasadniczo polega na wykazaniu, że wykrycie jednego możliwego oznaczonego stanu jeszcze szybciej, spowoduje wykrycie innego oznaczonego stanu , wolniej. Ponieważ algorytm powinien działać równie dobrze bez względu na zaznaczony stan, to rozwiązanie jest najlepsze.|x⟩|y⟩