Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.11.

Ähnliche Präsentationen


Präsentation zum Thema: "Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.11."—  Präsentation transkript:

1 Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.11.

2 Simons Problem Gegeben: Black Box Funktion f:{0,1} n ! {0,1} n Es gibt ein geheimes s 2 {0,1} n : Für alle x: f(x)=f(x © s) Für alle x,y: x y © s ) f(x) f(y) Bestimme s ! Beispiel: f(x)=2 b x/2 c Jedes k: f(2k)=f(2k+1); s=00... 01 Simons Algorithmus löst das Problem in Zeit poly(n) Jeder klassische randomisierte Algorithmus benötigt (2 n/2 ) Fragen an die Black Box, selbst wenn Fehler erlaubt sind

3 Klassische Algorithmen Gegeben: randomisierter Fragealgorithmus, der s berechnet, gegeben Orakelzugriff auf f Fixiere ein f=f s für jedes s Wenn es randomisierten Algo mit T Fragen (worst case) und Erfolgswahrscheinlichkeit p gibt, dann gibt es einen deterministischen Algo mit T Fragen und Erfolg p für zufällige s Randomisierter Algorithmus ist Schaltkreis mit zusätzlicher Eingabe r 2 {0,1} m E s E r [Erfolg auf f s bei Zusatzeingabe r]=p ) es gibt ein r, so dass E s [Erfolg auf f s bei Zusatzeingabe r] ¸ p Fixiere r ) deterministischer Algorithmus

4 Klassische Algorithmen s sei zufällig aus {0,1} n -{0 n } Dies bestimmt f=f s Gegeben: deterministischer Fragealgorithmus, Erfolg 2/3 auf zufälligem s k Fragen seien schon gestellt; Fixiere Werte (x i,f(x i )) Wenn es x i,x j gibt mit f(x i )=f(x j ), dann Erfolg, Stop Sonst: alle f(x i ) verschieden, kein Wert x i © x j =s, Anzahl Paare Es gibt noch mindestens 2 n -1- mögliche s s kann noch als uniform zufällig unter diesen angesehen werden

5 Klassische Algorithmen Es gibt noch 2 n -1- ¸ 2 n -k 2 mögliche s s kann noch als uniform zufällig unter diesen angesehen werden Frage x k+1 (abhängig vorherige Fragen/Antworten) Für jedes feste x k+1 gibt es k Kandidaten s(1),...,s(k): s(j)=x j © x k+1 für s Wahrscheinlichkeit, dass ein Kandidat richtiges s trifft · k/ (2 n -k 2 ) [über Wahl von s]

6 Klassische Algorithmen Wahrscheinlichkeit, dass ein Kandidat richtiges s trifft · k/(2 n -k 2 ) [über Wahl von s] Gesamterfolgswahrscheinlichkeit: Wenn T<2 n/2 /10, dann Erfolg zu klein

7 Variation Entscheidungsproblem: mit Wahrscheinlichkeit 1/2: s=0 n mit Ws 1/2: s uniform aus {0,1} n -{0 n } Algorithmus entscheide, welcher Fall Analyse analog zu vorher, bei weniger als 2 n/2 /10 Fragen Erfolgswahrscheinlichkeit nah 1/2

8 Der Quantenalgorithmus Beginne mit Zustand |0 n i |0 n i Wende H ­ n auf erste n Qubits an Wende U f an Messe Qubits n+1,...,2n Ergebnis f(z) Es gibt z, z © s mit f(z)=f(z © s) Zustand: (1/2 1/2 |z i + 1/2 1/2 |z © s i ) |f(z) i Vergesse |f(z) i

9 Der Quantenalgorithmus Zustand: 1/2 1/2 |z i + 1/2 1/2 |z © s i Jedes z 2 {0,1} n mit Wahrscheinlichkeit 1/2 n, gegeben also Wahrscheinlichkeitsverteilung auf Zuständen [gemischter Zustand] Messung ergäbe einfach zufälliges z aus {0,1} n [zufälliges z aus Messung 1, dann mit Ws. 1/2: z, mit Ws. 1/2: z © s, insgesamt zufälliges z] Wie bekommt man Information über s? Wende wieder an H ­ n an

10 Der Quantenalgorithmus Zustand: 1/2 1/2 |z i + 1/2 1/2 |z © s i z uniform zufällig Wende wieder an H ­ n an Ergebnis: y y |y i mit y =1/2 1/2 ¢ 1/2 n/2 (-1) y ¢ z +1/2 1/2 ¢ 1/2 n/2 (-1) y ¢ (z © s) =1/2 (n+1)/2 ¢ (-1) y ¢ z [1+(-1) y ¢ s ] y ¢ z= i y i z i

11 Der Quantenalgorithmus y y |y i mit y =1/2 (n+1)/2 ¢ (-1) y ¢ z [1+(-1) y ¢ s ] Fall 1: y ¢ s ungerade ) y =0 Fall 2: y ¢ s gerade ) y = § 1/2 (n-1)/2 Messe nun [Wahrscheinlichkeiten unabhängig von z] Immer: Ergebnis y: y i s i ´ 0 mod 2 Also Gleichung über Z 2, alle y mit y i s i ´ 0 mod 2 gleich wahrscheinlich

12 Postprocessing Ergebnis Gleichung y i s i ´ 0 mod 2 Alle y mit y i s i ´ 0 mod 2 gleiche Ws. Reduziert Anzahl der möglichen s um 1/2 Weiteres Vorgehen: Wiederhole n-1 mal Löse Gleichungssystem Wenn n-1 linear unabhängige Gleichungen erhalten, dann ist s bestimmt

13 Simons Algorithmus H |0 n i UfUf n-1 mal, dann Gleichungssystem lösen H y(1),...,y(n-1)

14 Analyse Durch n-1 linear unabhängige Gleichungen ist s bestimmt, jede Gleichung hat uniform zufällige Koeffizienten y(j) 1,...,y(j) n unter Bedingung y(j) ¢ s=0 mod 2 [d.h. aus Unterraum U Dim. n-1 von (Z 2 ) n ] Wahrscheinlichkeit, dass y(j+1) linear abhängig von y(1),...,y(j): V j =span[y(1),...,y(j)] hat Dim. j Ws, dass zufälliges y(j+1) aus U in V j liegt: 2 j /2 n-1 Wahrscheinlichkeit, dass alle lin. unabh.: j=1,...,n-1 (1-2 j-1 /2 n-1 )= j=1,...,n-1 (1-1/2 j )

15 Analyse Wahrsch. dass alle lin. unabh.: j=1,...,n-1 (1-1/2 j ) Abschätzung: mindestens 1/2 ¢ (1-[ j=2,...,n-1 1/2 j ]) ¸ 1/4 [Benutze (1-a)(1-b) ¸ 1-a-b für 0<a,b<1] D.h. mit Wahrscheinlichkeit 1/4 findet der Algo n-1 linear unabh. Gleichungen, und s kann berechnet werden Durch Gauss Elimination O(n 3 ) oder durch andere Verfahren O(n 2.376 )

16 Variation Entscheidungsproblem: mit Wahrscheinlichkeit 1/2: s=0 n mit Ws 1/2: s uniform aus {0,1} n -{0 n } Algorithmus soll entscheiden, welcher Fall Verwende selben Algorithmus wie zuvor

17 Zusammenfassung Simons Problem kann durch einen Quantenalgorithmus mit Zeit O(n 2.376 ) und O(n) Fragen mit Erfolgswahrscheinlichkeit 0.99 gelöst werden Jeder klassische randomisierte Algorithmus mit Erfolgswahrscheinlichkeit 2/3 braucht (2 n/2 ) Fragen (und Zeit)

18 Bisherige Algorithmen Deutsch-Josza und Simon: f balanciert oder konstant f hat Periode s (über (Z 2 ) n ) Erst Hadamard, dann U f, dann Hadamard und Messung D-J: Black Box mit Ausgabe (-1) f(x) S: normale Black Box

19 Bestimmen der Ordnung über Z N Gegeben seien ganze Zahlen x, N, x<N Ordnung r(x) von x in Z N : min. r: x j =1 mod N Periode der Potenzen von x Black Box U x,N rechne U x,N |j i |k i = |j i |x j k mod N i Quantenalgorithmus, um r(x) zu bestimmen?

20 Bestimmen der Ordnung über Z N U x,N |j i |k i = |j i |x j k mod N i Quantenalgorithmus, um r(x) zu bestimmen? Algorithmus von Shor findet r(x) in Zeit poly(log N) trivialer klassischer Ansatz: berechne x i für i=1,...,r(x) ist ineffizient, da r(x)=N möglich

21 Anwendung eines solchen Algorithmus Faktorisierungsproblem: Gegeben natürliche, zusammengesetzte Zahl N finde einen nichttrivialen Faktor Kann durch einen Algorithmus zur Ordnungsbestimmung gelöst werden !

22 Faktorisierung Wenn ein nichttrivialer Faktor in polynomieller Zeit gefunden werden kann, kann die komplette Primfaktorisierung in polynomieller Zeit gefunden werden, da es zu N höchstens log N Primfaktoren gibt polynomieller Zeit: in der Länge von N, d.h. log N Naiver Algorithmus: teste alle Faktoren <N 1/2, d.h. exponentielle Zeit Bester bekannter klassischer Algo: Zeit exp( O ( log 1/3 N loglog 2.3 N ) )

23 Reduktion Faktorisierung auf Ordnungsfinden Eingabe natürliche Zahl N 1. Test ob N Primzahl, Ausgabe N 2. Test ob N= a b für nat. Zahlen a,b>1, Ausgabe a 3. Test ob N gerade, Ausgabe 2 4. Wenn nein: N=p 1 (1) p m (m) mit m>1, (j) ¸ 1

24 Reduktion Faktorisierung auf Ordnungsfinden N=p 1 (1) p m (m) mit m>1, (j) ¸ 1 Ansatz: Wenn man eine nichttriviale Lösung zu x 2 =1 mod N finden kann, dann kann ein Faktor von N berechnet werden Wenn y aus [1,...,N-1] gezogen wird und teilerfremd zu N ist, dann ist die Ordnung r von y mit hoher Ws. gerade und y r/2 -1 mod N y r/2 1 mod N Dann erfüllt x=y r/2 die Gleichung x 2 =1 mod N und x ist nichttrivial Z * N : Gruppe der y aus [1,...,N-1] die teilerfremd zu N sind, mit Multiplikation

25 Reduktion Faktorisierung auf Ordnungsfinden Theorem V.1: Sei N eine zusammengesetzte Zahl und x eine Lösung von x 2 =1 mod N mit 1 < x < N-1. Dann sind nichttriviale Teiler von N: ggt(x-1,N) ggt(x+1,N) Theorem V.2: Wenn N=p 1 (1) p m (m) Primfaktorisierung, und x uniform aus Z * N gezogen wird, dann ist Prob[r(x) ist gerade und x r/2 -1 mod N] ¸ 1-1/2 m-1 ¸ 1/2

26 Reduktion Faktorisierung auf Ordnungsfinden Eingabe natürliche Zahl N 1. Test ob N Primzahl, Ausgabe N 2. Test ob N= a b für nat. Zahlen a,b>1, Ausgabe a 3. Test ob N gerade, Ausgabe 2 4. Wenn nein: N=p 1 (1) p m (m) mit m>1, (j) ¸ 1

27 Reduktion Faktorisierung auf Ordnungsfinden 4.N=p 1 (1) p m (m) mit m>1, (j) ¸ 1 5.Bestimme zufälliges x aus [1,...,N-1]. Wenn ggt(x,N) 1, dann Ausgabe ggt(x,N) 6.Bestimme Ordnung r von x in Z N 7.Wenn r gerade ist, und x r/2 -1 mod N, dann berechne ggt(x-1,N) und ggt(x+1,N) 8.Wenn nicht, dann wiederhole 5.-7.

28 Analyse: Schritt 1 [Primzahltest] deterministisch in Zeit poly(log N) [AKS02] [Test, ob a b für nat. Zahlen a,b; Test ob Primzahl] Schritt 5: ggt(y,N) kann in Zeit O(L 3 ) berechnet werden, Euklidischer Algorithmus Schritt 6: per Reduktion Schritt 7: mit Wahrscheinlichkeit 1/2 Schritt 8: erwartet O(1) Wiederholungen

29 Bemerkung Finden der Ordnung von x in Z N ist tatsächlich per Polynomialzeit-Reduktionen äquivalent zum Faktorisierungsproblem Shors Algorithmus löst Ordnungsfinden bezüglich einer als Black Box gegebenen Potenzierungsfunktion

30 Theorem V.1 Theorem V.1: Sei N eine zusammengesetzte Zahl und x eine Lösung von x 2 =1 mod N mit 1 < x < N-1. Dann sind nichttriviale Teiler von N: ggt(x-1,N) ggt(x+1,N) Beweis: x 2 =1 mod N ) (x-1)(x+1)=0 mod N N teilt (x-1)(x+1), x-1<x+1<N, daher gibt es einen nichttrivialen gemeinsamen Faktor


Herunterladen ppt "Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.11."

Ähnliche Präsentationen


Google-Anzeigen