Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


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

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

2 Bestimmen der Ordnung über Z N Gegeben seien natürliche Zahlen x, N, x<N Ordnung r(x) von x in Z N : min. r 0: x r =1 mod N Periode der Potenzen von x

3 Bestimmen der Ordnung über Z N 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-1 möglich

4 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, p j >2 prim

5 Reduktion Faktorisierung auf Ordnungsfinden N=p 1 (1) p m (m) mit m>1, (j) ¸ 1, p j >2 prim 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

6 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 [alle p j 2] und x uniform aus Z * N gezogen wird, dann ist Prob[r=r(x) ist gerade und x r/2 -1 mod N] ¸ 1-1/2 m-1 [ ¸ 1/2 falls m>1]

7 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, p j >2 prim

8 Reduktion Faktorisierung auf Ordnungsfinden 4.N=p 1 (1) p m (m) mit m>1, (j) ¸ 1, p j >2 prim 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) und teste ob einer ein Faktor ist 8.Wenn nicht, dann wiederhole 5.-7.

9 Analyse: Schritt 1 [Primzahltest] deterministisch in Zeit poly(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, Test durch Division Schritt 8: Daher erwartet O(1) Wiederholungen

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

11 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

12 Theorem V.2 Theorem V.2: Wenn N=p 1 (1) p m (m) Primfaktorisierung [alle p j 2] und x uniform aus Z * N gezogen wird, dann ist Prob[r=r(x) ist gerade und x r/2 -1 mod N] ¸ 1-1/2 m-1

13 Hilfsmittel Sei φ(N)=| Z * N |. Für jedes x 2 Z * N gilt x φ(N) =1 mod N [Euler] φ(p ) ist gerade, wenn p prim Chinesischer Restsatz Sei N=p 1 (1) p m (m) Für x 1,...,x m gibt es genau eine Lösung x zu x=x i mod p i i) für alle i x zufällig ziehen entpricht x 1,...,x m ziehen x 2 Z * N, x i 2 Z * N(i) für alle i [N(i)=p i (i) ] r i sei Ordnung von x i in N i r i teilt r [Ordnung von x in Z N ]: x r =1 mod N ) x i r =x r =1 mod N i

14 Theorem V.2 Lemma 1: Sei N=p, p 2 prim. Sei φ(N)=| Z * N |. D sei maximal so dass 2 D Teiler von φ(N). Mit Wahrscheinlichkeit =1/2 teilt 2 D die Ordnung r(x) eines zufälligen Elementes von Z * N. Beweis: Z * N zyklisch [weil p 2], d.h. es gibt 1<g<N, so dass {g j mod N, j=1,..., φ(N)}= Z * N Jedes x 0 ist g k mod für ein k x zufällig ) k zufällig, gerade/ungerade mit Wahrscheinlichkeit 1/2 k ungerade: g kr(x) =x r(x) = 1 mod N ) φ(N) teilt kr(x), 2 D teilt kr(x), teilt r(x) k gerade: x φ(N)/2 =g kφ(N)/2 =(g φ(N) ) k/2 =1 k/2 =1 mod N [Euler] ) r(x) teilt φ(N)/2 und somit teilt 2 D nicht r(x)

15 Theorem V.2 N=p 1 (1) p m (m) Primfaktorisierung. Mit Chinesischem Restsatz ist Wahl von x äquivalent zu Wahl von x 1,...,x m aus Z * N(i) für N(i)=p i (i) x=x i mod p i (i) Ordnung r i =r(x i ) in Z N(i) teilt r d maximal so dass 2 d Teiler von r, analog d i für r i Lemma 2: Wenn r=r(x) ungerade oder r gerade und x r/2 =-1 mod N, dann d i =d für alle i. Beweis: I) r ungerade nur, wenn alle r i ungerade, d.h. alle d i =0 II) r gerade, aber x r/2 = -1 mod N ) x i r/2 = -1 mod N i d.h. r i kein Teiler von r/2, r i Teiler von r, d.h. 2 d teilt r i, somit d i =d D.h. 2 d grösster Zweierpotenzteiler von r(x i ) für alle i

16 Theorem V.2 Theorem V.2: Wenn N=p 1 (1) p m (m) Primfaktorisierung [alle p j 2], und x uniform aus Z * N gezogen wird, dann ist Prob[r=r(x) ist gerade und x r/2 -1 mod N] ¸ 1-1/2 m-1 Beweis: Mit Chinesischem Restsatz ist Wahl von x äquivalent zu Wahl von x 1,...,x m aus Z * N(i) für N(i)=p i (i) x=x i mod p i (i) Ordnung r i =r(x i ) in Z N(i) teilt r d i maximal so dass 2 d i Teiler von r i Berechne Gegenwahrscheinlichkeit. Mit Lemma 2 sind alle d i gleich Wahrscheinlichkeit · 1/2 m-1 nach Lemma 1: Setze d=d 1. Für alle i=2,...,m sei D i max Zweierpotenzteiler von φ(N i ) Drei Fälle: D i >d, dann d i =D i mit Ws. 1/2 und dann auch d i d D i =d, dann d i = d mit Ws. 1/2 D i <d, dann d i = d niemals Jedesmal [2,...,m] ein Faktor · 1/2 zur Gesamtwahrscheinlichkeit

17 Warum Faktorisierung? Das Problem [...] zusammengesetzte Zahlen in ihre Primfaktoren zu zerlegen ist eines der wichtigsten und nützlichsten in der ganzen Arithmetik. Die Würde der Wissenschaft verlangt, dass jedes Hilfsmittel zur Lösung solch eines eleganten Problems kultiviert wird.

18 Warum Faktorisierung? RSA-Verfahren [Z. Bsp. SSL im Internet] [Rivest Shamir Adleman] Alice möchte verschlüsselte Nachrichten empfangen Alice veröffentlicht einen öffentlichen Schlüssel, behält für sich einen privaten Schlüssel Mit dem öffentlichen Schlüssel kann man Nachrichten verschlüsseln, mit dem privaten entschlüsseln Es scheint schwer zu sein, verschlüsselte Nachrichten ohne den privaten Schlüssel zu öffnen RSA wird durch Faktorisierung gebrochen

19 RSA Alice zieht zwei grosse Primzahlen p,q, berechnet N=pq Alice wählt e, teilerfremd zu φ(N)=(p-1)(q-1) Alice berechnet d, das Inverse von e in Z * N [das ist einfach, weil Faktorisierung von N bekannt] Öffentlicher Schlüssel: (e,N) Geheimer Schlüssel: d

20 RSA Öffentlicher Schlüssel: (e,N) Bobs Nachricht sei x<N Verschlüsselte Nachricht: y=x e mod N Alices Dekodierung: y d =x ed mod N ed=1 mod N, also ed=1+ kφ(N) Ergebnis also x 1+kφ(N) =x ¢ x kφ(N) mod N x 2 Z * N, dann x kφ(N) =1 mod N, und daher y d =x mod N Sonst: OBDA p teilt x, q nicht x=0 mod p, also x ed = 0 mod p, x q-1 =1 mod q x φ(N) =1 mod N und x ed =x mod q und mit chin. Restsatz auch x ed =x mod N Wenn ein Angreifer (Eve) faktorisieren kann, kann N in pq zerlegt werden, und d wäre nicht mehr geheim

21 Hidden Subgroup Problem Ordnungsfinden und Simons Problem sind Instanzen des Hidden Subgroup Problems Coset zu einer Untergruppe H einer Gruppe G: gH={gh: h 2 H} Es gebe eine Gruppe G, sowie eine unbekannte Untergruppe H Es gebe eine Black Box Funktion f, so dass f ist konstant auf jedem Coset von H auf zwei Cosets C D hat f verschiedene Werte Finde H. Bzw. Generatoren von H.

22 Hidden Subgroup Problem Simons Problem: G ist ( Z 2 ) m H ist {0,s} Cosets {x, x © s} f: f(x)=f(x © s) x y © s ) f(x) f(y)

23 Hidden Subgroup Problem Ordnungsfinden G ist Z H ist {0,r,2r,3r,......}; r=r(x) mod N Cosets {a,a+r,a+2r,....] f(j)=x j mod N f(kr+a)= x kr+a mod N=x a mod N =f(a)=f(kr+a) f(kr+a) = x a mod N x b mod N f(kr+b) falls a b mod r

24 Hidden Subgroup Problem Deutsch-Josza ebenfalls, Übung

25 Hidden Subgroup Problem [Kitaev] Es gibt einen Quantenalgorithmus mit polynomieller Zeit, der die Untergruppe H identifiziert, wennn G abelsch ist Weiteres Beispiel HSP: Graph Isomorphismus Gegeben G 1, G 2, kann man Knotennummern permutieren, so dass beide gleich sind? HSP über Gruppe der Permutationen, nicht abelsch,kein polynomieller Quantenalgorithmus bekannt

26 Hidden Subgroup Problem Graph Isomorphismus: Gegeben Graphen W 1, W 2, kann man Knotennummern permutieren, so dass beide gleich sind? Man kann zeigen, dass Problem Polynomialzeit- reduzierbar auf Bestimmen der Generatoren der Gruppe von Permutationen ist, die einen Graphen W unverändert lassen [aut(W)] Es gibt nur n 2 Generatoren Als HSP: Gruppe: S n, Permutationen auf W Untergruppe H: aut(W) Cosets: H Funktion f: f( )= (W) Dann: f( 1 )= f( 2 ), 1 (W) = 2 (W), 2 -1 ( 1 (W)) = W, 2 -1 ± 1 2 aut (W), 2 -1 ± 1 H = H, 1 H = 2 H Also 1, 2 aus demselben Coset

27 Fourier Transformation Klassische Fouriertransformation: g sei Funktion Z N ! C [Vektor mit N Einträgen] Mit w=e 2 i/N ist Matrix für Fouriertransformation durch FT N (i,j)=w ij ; 0 · i,j · N-1 gegeben Trivialer Algorithmus zur Fouriertransformation: Zeit O(N 2 ) Schnelle Fouriertransformation [FFT] in Zeit O(N log N)

28 Quanten Fourier Transformation Sei N=2 n. Sei | i = j=0,...,N-1 j |j i ein Zustand. Die Fouriertransformation von | i ist | i = j=0,...,N-1 j |j i, mit Also Fouriertransformation als Superposition Auch QFT genannt Gibt es einen effizienten Algorithmus der QFT implementiert? Effizient:polynomiell in n=log N


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

Ähnliche Präsentationen


Google-Anzeigen