quantum computing hartmut klauck universität frankfurt ws 04/05 24.11

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

Upload: adelheit-lahner

Post on 05-Apr-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

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

Quantum Computing

Hartmut KlauckUniversität FrankfurtWS 04/0524.11.

Page 2: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Bestimmen der Ordnung über ZN

Gegeben seien natürliche Zahlen x, N, x<N

Ordnung r(x) von x in ZN:min. r0: xr =1 mod N

„Periode“ der Potenzen von x

Page 3: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Bestimmen der Ordnung über ZN

Quantenalgorithmus, um r(x) zu bestimmen?

Algorithmus von Shor findet r(x) in Zeit poly(log N)

trivialer klassischer Ansatz: berechne xi für i=1,...,r(x) ist ineffizient, da r(x)=N-1 möglich

Page 4: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Reduktion Faktorisierung auf Ordnungsfinden Eingabe natürliche Zahl N

1. Test ob N Primzahl, Ausgabe N2. Test ob N= ab für nat. Zahlen a,b>1,

Ausgabe a3. Test ob N gerade, Ausgabe 24. Wenn nein: N=p1

(1) pm(m) mit

m>1,(j)¸1, pj>2 prim

Page 5: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Reduktion Faktorisierung auf Ordnungsfinden N=p1

(1) pm(m) mit m>1,(j)¸1, pj>2 prim

Ansatz: Wenn man eine nichttriviale Lösung zu x2=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 yr/2 -1 mod N

yr/2 1 mod N Dann erfüllt x=yr/2 die Gleichung x2=1 mod N

und x ist nichttrivial Z*

N : Gruppe der y aus [1,...,N-1] die teilerfremd zu N sind, mit Multiplikation

Page 6: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Reduktion Faktorisierung auf Ordnungsfinden Theorem V.1:

Sei N eine zusammengesetzte Zahl und x eine Lösung von x2=1 mod N mit1 < x < N-1. Dann sind nichttriviale Teiler von N: ggt(x-1,N) ggt(x+1,N)

Theorem V.2:Wenn N=p1

(1) pm(m) Primfaktorisierung

[alle pj2] und x uniform aus Z*N gezogen wird,

dann istProb[r=r(x) ist gerade und xr/2 -1 mod N] ¸ 1-1/2m-1 [¸ 1/2 falls m>1]

Page 7: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Reduktion Faktorisierung auf Ordnungsfinden Eingabe natürliche Zahl N

1. Test ob N Primzahl, Ausgabe N2. Test ob N= ab für nat. Zahlen a,b>1,

Ausgabe a3. Test ob N gerade, Ausgabe 24. Wenn nein: N=p1

(1) pm(m) mit

m>1,(j)¸1 , pj>2 prim

Page 8: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Reduktion Faktorisierung auf Ordnungsfinden

4. N=p1(1) pm

(m) mit m>1,(j)¸1 , pj>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 ZN

7. Wenn r gerade ist, und xr/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.

Page 9: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Analyse:

Schritt 1 [Primzahltest] deterministisch in Zeit poly(n) [AKS02][Test, ob ab für nat. Zahlen a,b; Test ob Primzahl]

Schritt 5: ggt(y,N) kann in Zeit O(L3) berechnet werden, Euklidischer Algorithmus

Schritt 6: per Reduktion Schritt 7: mit Wahrscheinlichkeit 1/2, Test

durch Division Schritt 8: Daher erwartet O(1)

Wiederholungen

Page 10: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Bemerkung

Finden der Ordnung von x in ZN ist tatsächlich per Polynomialzeit-Reduktionen äquivalent zu Faktorisierungsproblem

Shors Algorithmus löst Ordnungsfinden bezüglich einer als Black Box gegebenen Potenzierungsfunktion

Page 11: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Theorem V.1

Theorem V.1:Sei N eine zusammengesetzte Zahl und x eine Lösung von x2=1 mod N mit1 < x < N-1. Dann sind nichttriviale Teiler von N: ggt(x-1,N) ggt(x+1,N)

Beweis:

x2=1 mod N ) (x-1)(x+1)=0 mod NN teilt (x-1)(x+1), x-1<x+1<N, daher gibt es einen nichttrivialen gemeinsamen Faktor

Page 12: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Theorem V.2

Theorem V.2:Wenn N=p1

(1) pm(m) Primfaktorisierung

[alle pj 2] und x uniform aus Z*N gezogen

wird, dann istProb[r=r(x) ist gerade und xr/2 -1 mod N]¸ 1-1/2m-1

Page 13: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Hilfsmittel

Sei φ(N)=| Z*N|. Für jedes x2Z*

N gilt xφ(N)=1 mod N[Euler]

φ(p) ist gerade, wenn p prim Chinesischer Restsatz

Sei N=p1(1) pm

(m)

Für x1,...,xm gibt es genau eine Lösung x zux=xi mod pi

i) für alle i x zufällig ziehen entpricht x1,...,xm ziehen x2 Z*

N , xi2 Z*N(i) für alle i [N(i)=pi

(i)] ri sei Ordnung von xi in Ni

ri teilt r [Ordnung von x in ZN]: xr=1 mod N ) xi

r=xr=1 mod Ni

Page 14: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Theorem V.2

Lemma 1:Sei N=p, p2 prim. Sei φ(N)=| Z*

N|. D sei maximal so dass 2D Teiler von φ(N). Mit Wahrscheinlichkeit =1/2 teilt 2D die Ordnung r(x) eines zufälligen Elementes von Z*

N. Beweis: Z*

N zyklisch [weil p2], d.h. es gibt 1<g<N, so dass {gj mod N, j=1,..., φ(N)}= Z*

N Jedes x0 ist gk mod für ein k x zufällig ) k zufällig, gerade/ungerade mit

Wahrscheinlichkeit 1/2 k ungerade:

gkr(x)=xr(x)= 1 mod N ) φ(N) teilt kr(x), 2D teilt kr(x), teilt r(x)

k gerade: xφ(N)/2=gkφ(N)/2=(gφ(N))k/2=1k/2=1 mod N [Euler] ) r(x) teilt φ(N)/2 und somit teilt 2D nicht r(x)

Page 15: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Theorem V.2

N=p1(1) pm

(m) Primfaktorisierung. Mit Chinesischem Restsatz ist Wahl von x äquivalent zu Wahl von x1,...,xm aus Z*

N(i) für N(i)=pi

(i)

x=xi mod pi(i)Ordnung ri=r(xi) in ZN(i) teilt r

d maximal so dass 2d Teiler von r, analog di für ri

Lemma 2:Wenn r=r(x) ungerade oder r gerade und xr/2=-1 mod N, dann di=d für alle i.

Beweis: I) r ungerade nur, wenn alle ri ungerade, d.h. alle di=0 II) r gerade, aber xr/2 = -1 mod N

) xir/2 = -1 mod Ni

d.h. ri kein Teiler von r/2,ri Teiler von r, d.h. 2d teilt ri, somit di=d

D.h. 2d grösster Zweierpotenzteiler von r(xi) für alle i

Page 16: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Theorem V.2

Theorem V.2:Wenn N=p1

(1) pm(m) Primfaktorisierung [alle pj 2], und x uniform

aus Z*N gezogen wird, dann ist

Prob[r=r(x) ist gerade und xr/2 -1 mod N]¸ 1-1/2m-1

Beweis: Mit Chinesischem Restsatz ist Wahl von x äquivalent zu Wahl von

x1,...,xm aus Z*N(i) für N(i)=pi

(i)

x=xi mod pi(i)Ordnung ri=r(xi) in ZN(i) teilt r

di maximal so dass 2di Teiler von ri

Berechne Gegenwahrscheinlichkeit. Mit Lemma 2 sind alle di gleich Wahrscheinlichkeit ·1/2m-1 nach Lemma 1:

Setze d=d1. Für alle i=2,...,m sei Di max Zweierpotenzteiler von φ(Ni)Drei Fälle:

Di>d, dann di=Di mit Ws. 1/2 und dann auch did Di=d, dann di= d mit Ws. 1/2 Di<d, dann di = d niemals

Jedesmal [2,...,m] ein Faktor ·1/2 zur Gesamtwahrscheinlichkeit

Page 17: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

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.

Page 18: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

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

Page 19: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

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

Page 20: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

RSA

Öffentlicher Schlüssel: (e,N) Bobs Nachricht sei x<N Verschlüsselte Nachricht: y=xe mod N Alices Dekodierung: yd =xed mod N ed=1 mod N, also ed=1+ kφ(N) Ergebnis also x1+kφ(N) =x¢x kφ(N) mod N

x2 Z*N, dann xkφ(N) =1 mod N, und daher

yd =x mod N Sonst: OBDA p teilt x, q nicht

x=0 mod p, also xed= 0 mod p, xq-1=1 mod qxφ(N) =1 mod N und xed=x mod q und mit chin. Restsatz auch xed=x mod N

Wenn ein Angreifer (Eve) faktorisieren kann, kann N in pq zerlegt werden, und d wäre nicht mehr geheim

Page 21: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Hidden Subgroup Problem Ordnungsfinden und Simons Problem sind

Instanzen des Hidden Subgroup Problems Coset zu einer Untergruppe H einer Gruppe G:

gH={gh: h2 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 CD hat f verschiedene Werte

Finde H. Bzw. Generatoren von H.

Page 22: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Hidden Subgroup Problem Simons Problem:

G ist (Z2)m

H ist {0,s} Cosets {x, x©s} f: f(x)=f(x©s)

xy©s) f(x)f(y)

Page 23: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

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)=xj mod N f(kr+a)= xkr+a mod N=xa mod N

=f(a)=f(k’r+a) f(kr+a) = xa mod N xb mod

Nf(kr+b) falls ab mod r

Page 24: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Hidden Subgroup Problem Deutsch-Josza

ebenfalls, Übung

Page 25: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Hidden Subgroup Problem [Kitaev] Es gibt einen Quantenalgorithmus

mit polynomieller Zeit, der die Untergruppe H identifiziert, wennn G abelsch ist

Weiteres Beispiel HSP: Graph IsomorphismusGegeben G1, G2, kann man Knotennummern permutieren, so dass beide gleich sind?

HSP über Gruppe der Permutationen, nicht abelsch,kein polynomieller Quantenalgorithmus bekannt

Page 26: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Hidden Subgroup Problem Graph Isomorphismus:

Gegeben Graphen W1, W2, 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 n2 Generatoren Als HSP:

• Gruppe: Sn, 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

Page 27: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Fourier Transformation

Klassische Fouriertransformation: g sei Funktion ZN ! C

[Vektor mit N Einträgen]

Mit w=e2 i/N ist Matrix für Fouriertransformation durch FTN(i,j)=wij; 0· i,j· N-1 gegeben

Trivialer Algorithmus zur Fouriertransformation: Zeit O(N2)

Schnelle Fouriertransformation [FFT] in ZeitO(N log N)

Page 28: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 24.11

Quanten Fourier Transformation

Sei N=2n. Sei |i=j=0,...,N-1 j |ji ein Zustand. Die Fouriertransformation von |i ist

|i =j=0,...,N-1 j |ji, mit

Also Fouriertransformation als Superposition Auch QFT genannt Gibt es einen effizienten Algorithmus der QFT

implementiert? Effizient:polynomiell in n=log N