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

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

Upload: amalia-boll

Post on 05-Apr-2015

109 views

Category:

Documents


1 download

TRANSCRIPT

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

Quantum Computing

Hartmut KlauckUniversität FrankfurtWS 04/0517.11.

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

Simons Problem

Gegeben: Black Box Funktion f:{0,1}n!{0,1}n Es gibt ein geheimes s2{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)=2bx/2c 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 (2n/2) Fragen an die Black Box, selbst wenn Fehler erlaubt sind

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

Klassische Algorithmen

Gegeben: randomisierter Fragealgorithmus, der s berechnet, gegeben Orakelzugriff auf f

Fixiere ein f=fs 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 r2{0,1}m

Es Er [Erfolg auf fs bei Zusatzeingabe r]=p ) es gibt ein r, so dass Es [Erfolg auf fs bei Zusatzeingabe r]¸ p

Fixiere r ) deterministischer Algorithmus

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

Klassische Algorithmen

s sei zufällig aus {0,1}n-{0n} Dies bestimmt f=fs

Gegeben: deterministischer Fragealgorithmus, Erfolg 2/3 auf zufälligem s

k Fragen seien schon gestellt; Fixiere Werte (xi,f(xi)) Wenn es xi,xj gibt mit f(xi)=f(xj), dann Erfolg, Stop Sonst: alle f(xi) verschieden,

kein Wert xi©xj=s, Anzahl Paare Es gibt noch mindestens 2n-1- mögliche s s kann noch als uniform zufällig unter diesen

angesehen werden

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

Klassische Algorithmen

Es gibt noch 2n-1- ¸ 2n-k2 mögliche s s kann noch als uniform zufällig unter

diesen angesehen werden Frage xk+1 (abhängig vorherige

Fragen/Antworten) Für jedes feste xk+1 gibt es k Kandidaten

s‘(1),...,s‘(k): s‘(j)=xj©xk+1 für s Wahrscheinlichkeit, dass ein Kandidat

richtiges s trifft · k/ (2n-k2)[über Wahl von s]

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

Klassische Algorithmen

Wahrscheinlichkeit, dass ein Kandidat richtiges s trifft · k/(2n-k2)[über Wahl von s]

Gesamterfolgswahrscheinlichkeit:

Wenn T<2n/2/10, dann Erfolg zu klein

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

Variation

Entscheidungsproblem: mit Wahrscheinlichkeit 1/2: s=0n

mit Ws 1/2: s uniform aus {0,1}n-{0n} Algorithmus entscheide, welcher Fall Analyse analog zu vorher, bei weniger als

2n/2/10 Fragen Erfolgswahrscheinlichkeit nah 1/2

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

Der Quantenalgorithmus

Beginne mit Zustand |0ni|0ni Wende H n auf erste n Qubits an Wende Uf an Messe Qubits n+1,...,2n Ergebnis f(z) Es gibt z, z©s mit f(z)=f(z©s) Zustand: (1/21/2 |zi + 1/21/2|z©si) |f(z)i Vergesse |f(z)i

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

Der Quantenalgorithmus

Zustand: 1/21/2 |zi + 1/21/2|z©si Jedes z2{0,1}n mit Wahrscheinlichkeit 1/2n,

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

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

Der Quantenalgorithmus

Zustand: 1/21/2 |zi + 1/21/2|z©si z uniform zufällig Wende wieder an H n an Ergebnis:

y y |yi mit y=1/21/2 ¢1/2n/2 (-1)y¢z +1/21/2¢1/2n/2(-1)y¢

(z©s)

=1/2(n+1)/2 ¢ (-1)y¢z [1+(-1)y¢s]

y¢z=i yizi

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

Der Quantenalgorithmus

y y |yi 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: yi si ´ 0 mod 2

Also Gleichung über Z2, alle y mit yi si ´ 0 mod 2 gleich wahrscheinlich

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

Postprocessing

Ergebnis Gleichung yi si ´ 0 mod 2

Alle y mit yi si ´ 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

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

Simons Algorithmus

H|0ni

|0niUf

n-1 mal, dann Gleichungssystem lösen

H

y(1),...,y(n-1)

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

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 Bedingungy(j)¢s=0 mod 2[d.h. aus Unterraum U Dim. n-1 von (Z2)n]

Wahrscheinlichkeit, dass y(j+1) linear abhängig von y(1),...,y(j): Vj=span[y(1),...,y(j)] hat Dim. j

Ws, dass zufälliges y(j+1) aus U in Vj liegt:2j/2n-1

Wahrscheinlichkeit, dass alle lin. unabh.:j=1,...,n-1 (1-2j-1/2n-1)= j=1,...,n-1 (1-1/2j)

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

Analyse

Wahrsch. dass alle lin. unabh.:j=1,...,n-1 (1-1/2j)

Abschätzung: mindestens1/2 ¢ (1-[j=2,...,n-1 1/2j])¸ 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(n3) oder durch andere Verfahren O(n2.376)

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

Variation

Entscheidungsproblem: mit Wahrscheinlichkeit 1/2: s=0n

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

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

Zusammenfassung

Simons Problem kann durch einen Quantenalgorithmus mit Zeit O(n2.376) und O(n) Fragen mit Erfolgswahrscheinlichkeit 0.99 gelöst werden

Jeder klassische randomisierte Algorithmus mit Erfolgswahrscheinlichkeit 2/3 braucht (2n/2) Fragen (und Zeit)

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

Bisherige Algorithmen

Deutsch-Josza und Simon: f balanciert oder konstant f hat „Periode“ s (über (Z2)n)

Erst Hadamard, dann Uf, dann Hadamard und Messung

D-J: Black Box mit Ausgabe (-1)f(x)

S: normale Black Box

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

Bestimmen der Ordnung über ZN

Gegeben seien ganze Zahlen x, N, x<N Ordnung r(x) von x in ZN:

min. r: xj =1 mod N „Periode“ der Potenzen von x Black Box Ux,N rechne

Ux,N |ji|ki= |ji|xjk mod Ni Quantenalgorithmus, um r(x) zu

bestimmen?

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

Bestimmen der Ordnung über ZN

Ux,N |ji|ki= |ji|xjk mod Ni 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 möglich

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

Anwendung eines solchen Algorithmus

Faktorisierungsproblem: Gegeben natürliche, zusammengesetzte Zahl N finde einen nichttrivialen Faktor

Kann durch einen Algorithmus zur Ordnungsbestimmung gelöst werden !

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

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 <N1/2, d.h. exponentielle Zeit

Bester bekannter klassischer Algo: Zeit exp( O ( log1/3 N loglog2.3N ) )

Page 23: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.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

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

Reduktion Faktorisierung auf Ordnungsfinden N=p1

(1) pm(m) mit m>1,(j)¸1

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 25: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.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, und x

uniform aus Z*N gezogen wird, dann ist

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

1¸ 1/2

Page 26: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.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

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

Reduktion Faktorisierung auf Ordnungsfinden

4. N=p1(1) pm

(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 ZN

7. Wenn r gerade ist, und xr/2 -1 mod N, dann berechne ggt(x-1,N) und ggt(x+1,N)

8. Wenn nicht, dann wiederhole 5.-7.

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

Analyse:

Schritt 1 [Primzahltest] deterministisch in Zeit poly(log 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 Schritt 8: erwartet O(1) Wiederholungen

Page 29: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.11

Bemerkung

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

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

Page 30: Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05 17.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