ELTE, MSc II. 2011.dec.15.
Áttekintés Feladat Algoritmus Kvantum keresési algoritmus áttekintése Input: N = 2 n elemű tömb, Ψ 1 = 0 1 kezdőállapot, f x0 (x) orákulum függvény. Output: x 0 keresett elem és P (x 0 ) > 1 O( 1 N ) Szükséges lépésszám: N Számolás menete: 1 Induló állapot: Ψ 1 = 0 1 2 Kezdő állapot preparálása: Ψ 2 = N 2 n 1 x=0 3 Grover iterálás ( x 0 kiemelése) 4 Mérés x 0,1 ( 1) y y
Áttekintés Feladat Algoritmus A keresési algoritmus feladata A feladat a következő N = 2 n darab nevet tartalmazó telefonkönyvből találja meg egy adott telefonszámhoz tartozó névet. Inverz probléma: Adja meg az adott névhez tartozó telefonszámot. Az inverz probléma log 2 (N)-ben polinomiálisan skálázik (mivel a nevek sorba rendezettek), míg az eredeti folyamat klasszikus lépés igénye log 2 N-nel exponenciálisan nő.
Áttekintés Feladat Algoritmus kétregiszteres művelet, ami lekérdezi a keresett elem karakterisztikus függvényének értékét. Próbáljuk meg visszavezetni az eredeti problémánkat az inverz folyamatra. Ehhez definiáljunk egy f x0 (x) karakterisztikus függvényt (leszűkített telefonkönyv), ami { 1, ha x = x0 f x0 (x) =. (1) 0, ha x x 0 Az f x0 lépésigénye log 2 (N)-ben polinomiális. Ha találunk egy olyan algoritmust, ami a karakterisztikus függvényt nem hívja meg túl sokszor mielőtt rátalálnánk a keresett x 0 elemre, akkor találtunk egy hatékonyabb algoritmust, mint a klasszikus eljárás. Továbbiakban feltesszük hogy rendelkezésünkre áll egy Û fx0 x y = x y f x0 (x) (2)
1. lépés A kiinduló állapot: ahol 0 egy n dimenziós vektor. Ψ 1 = 0 1, (3)
2. lépés Valódi kezdőállapot beálĺıtása: ( ) 1 n+1 2n 1 Ψ 2 = 2 x ( 1) y y. (4) x=0 y=0,1
3. lépés Az x 0 elem karakterisztikus függvényének lekérdezése: ( ) 1 n+1 2n 1 Ψ 3 = 2 ( 1) fx 0 (x) x ( 1) y y. (5) x=0 y=0,1
Tehát az U fx0 egyedül az x 0 állapot amplitúdóját változtatta meg +1-ről 1, a karakterisztikus függvény szemléletesen a következő: Azaz a 3. lépés a következő képen írható: ahol U x0 = 1 2 x 0 x 0 az x téren hat. Ψ 3 = (U x0 1) Ψ 2, (6)
4. lépés Az x 0 elem kiemelése: D := ( U n H 1) U f0 ( U n H 1). (7)
Jól látható, hogy a D operátor hatására kiemelődik a kívánt állapot: ahol 2 n 1 Ψ 4 = D Ψ 3 = D α x x = 1 2 2 n 1 x=0 2n 1 α := 2 n x=0 x=0 y=0,1 ( 1) y y [2 < α > α x ] x ( 1) y y, (8) y=0,1 α x = (2n 1) 1 + ( 1) 1 2 n. (9) Tehát D-t követően az állapotok új amplitúdója: { α x 3 2 n+2 ha x = x = 2 α ± 1 = 0 1 2 n+2 ha x x 0. (10)
5. lépés A 3. és 4. lépés többszöri elvégzése után elérhető, hogy P (x 0 ) valószínűséggel megtaláljuk x 0 -t az x f végállapotban. Ehhez vegyük észre, hogy a 3. és 4. lépést együttesen leíró operátor a következő: K = G 2 G 1, (11) ahol G 1 = 1 2 x 0 x 0 = U x0 (12) G 2 = 1 2 1 n i,j x i x j. (13)
A K operátor M számú ismétlésének meghatározásához, határozzuk meg a K operátor reprezentációját az x 0 és az x vektorok által meghatározott 2 dimenziós térben. ( ) 1 0 G 1 = (14) G 2 = 0 1 ( 1 0 0 1 ) 2 ( N ) 1 N 1, (15) N 1 1 így tehát K = G 2 G 1 = 1 N ( 2 N 2 N 1 2 N 1 2 N ). (16)
A végállapotban való p(x 0 ) mérési valószínűség megállapításához bontsuk fel spektrálisan a Grover-mag operátort: K κ j = e iω j κ j ahol j {1, 2}. (17) Felhasználva a K operátor két invariánsát, megkaphatjuk a K 2 2 diagonális reprezentációjának sajátértékeinek valós részét: ω ω 2 = ω 1 2 1/N (18) ω ω 2 ω 1 4 1/N, (19) feltételezve, hogy 1 + 2/N 1.
A kezdeti állapotból a Grover-mag m-szeri alkalmazása után x 0 állapotba történő átmenet valószínűsége a(x 0 ) := x 0 K m x in [ 1 = e imω + ( e im ω 1 ) ] x 0 κ 2 κ 2 x in, (20) N aminek ha vesszük az abszolút értékét, akkor a(x 0 ) (1 cos(m ω)) + O( 1/N), (21) ami akkor maximális, ha ( π M = 4 + π ) 2 n N ahol n N. (22) Tehát a szükséges lépésszám N-nek skálázik.
Áttekintés Feladat Algoritmus Felhasznált irodalom: Sailer Kornél: Kvantuminformatika jegyzet http://titan.physx.u-szeged.hu/ benedict/kvinfoj08.pdf Experimental Implementation of Fast Quantum Searching Phys. Rev. Lett. 80, 3408 3411 (1998)