Algorithmen für Quantencomputer II - Institut für Theoretische Physik ...
Algorithmen für Quantencomputer II - Institut für Theoretische Physik ...
Algorithmen für Quantencomputer II - Institut für Theoretische Physik ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong><br />
Der Shor Algorithmus<br />
Hauptseminar <strong>Theoretische</strong> <strong>Physik</strong><br />
Universität Stuttgart, SS 2011<br />
Uwe Pracht
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Inhalte des Vortrags<br />
● Motivation: wie findet man Primfaktoren auf klassischem Wege?<br />
● Zwei Sätze der Zahlentheorie und ein Stellvertreterproblem.<br />
● Die Quantenmechanik des Shor Algorithmus.<br />
● Zusammenfassung und Literatur.<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 01/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Aufgabe: Finde zu einer natürlichen Zahl N zwei Primzahlen p,q mit N=pq.<br />
Einfachster Algorithmus: Ausprobieren, ob ein Teiler von N ist.<br />
Laufzeit völlig ineffizient!<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 02/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Aufgabe: Finde zu einer natürlichen Zahl N zwei Primzahlen p,q mit N=pq.<br />
Einfachster Algorithmus: Ausprobieren, ob ein Teiler von N ist.<br />
Laufzeit völlig ineffizient!<br />
Derzeit bester Algorithmus: general number field sieve (GNFS) [Pom96]<br />
Laufzeit ca. Kompl. Klasse NP<br />
exp. schwierig.<br />
[Pom96] Carl Pommercance, A Tale Of Two Sieves , Notices of the AMS 43 (12): pp. 1473–1485, (1996)<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 02/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Aufgabe: Finde zu einer natürlichen Zahl N zwei Primzahlen p,q mit N=pq.<br />
Einfachster Algorithmus: Ausprobieren, ob ein Teiler von N ist.<br />
Laufzeit völlig ineffizient!<br />
Derzeit bester Algorithmus: general number field sieve (GNFS) [Pom96]<br />
Laufzeit ca. Kompl. Klasse NP<br />
exp. schwierig.<br />
Abhilfe durch Quantenmechanik: Shor Algorithmus<br />
Laufzeit Kompl. Klasse P<br />
erheblich schneller<br />
als GNFS!<br />
Beispiel: L=130, GNFS benötigt 42 Tage L=260, GNFS benötig ca. 1 Mio. Jahre<br />
L=130, Shor benötigt 7 Stunden L=260, Shor benötigt 8x7=56 Stunden<br />
[Pom96] Carl Pommercance, A Tale Of Two Sieves , Notices of the AMS 43 (12): pp. 1473–1485, (1996)<br />
[Bru04] Dagmar Bruß, Skriptum zur Vorlesung Quanteninformationstheorie, Uni. Düsseldorf (2004/2005)<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 02/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Der Shor Algorithmus (nach Peter W. Shor, 1994) führt die Suche nach den<br />
Primfaktoren p,q auf die Suche nach der Periodizität r einer bestimmten Funktion f(x).<br />
Primfaktoren p.q werden anschließend aus r berechnet.<br />
Diese Periodizität kann klassisch ermittelt werden, oder wesentlich effizienter mit Hilfe<br />
der sog. Quantenfouriertransformation (QFT).<br />
Klassischer Teil zur<br />
Reduzierung des Problems<br />
auf Funktion f(x).<br />
Shor Algorithmus<br />
[Sho94]Peter W. Shor, SIAM Journal on Computing, ,26, S. 1484–1509 (1994)<br />
Quantenmechanischer Teil<br />
zur effizienten Lösung<br />
des Restproblems.<br />
(Finden der Periode r)<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 03/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
SATZ 1<br />
Seien p,q Primzahlen mit N=pq und a
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
SATZ 1<br />
Seien p,q Primzahlen mit N=pq und a
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
SATZ 1<br />
Seien p,q Primzahlen mit N=pq und a
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Ausgangspunkt <strong>für</strong> Quantenteil:<br />
2 Register der Länge n und m N<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 05/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Ausgangspunkt <strong>für</strong> Quantenteil:<br />
2 Register der Länge n und m N<br />
● Erzeuge gleichgewichtete<br />
Superposition im 1. Register<br />
mit<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 05/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Ausgangspunkt <strong>für</strong> Quantenteil:<br />
2 Register der Länge n und m N<br />
● Erzeuge gleichgewichtete<br />
Superposition im 1. Register<br />
mit<br />
Beispiel N=15 (1111)<br />
● Wähle (mindestens) n=3 und m=4<br />
● Superposition<br />
● Die Nummer eines Zustands ist<br />
gleichzeitig der Messwert.<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 05/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Bilde das erste auf das zweite Register<br />
durch die unitäre Transformation<br />
ab. Es folgt<br />
● Periodizität ist globale Eigenschaft der<br />
Funktion und steckt nach bereits einer<br />
Operation in den Zuständen des 1.<br />
Registers!<br />
David Deutsch:<br />
“massive quantum parallelism”<br />
Erster Hauptgrund <strong>für</strong> hohe Effizienz!<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 06/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Bilde das erste auf das zweite Register<br />
durch die unitäre Transformation<br />
ab. Es folgt<br />
● Periodizität ist globale Eigenschaft der<br />
Funktion und steckt nach bereits einer<br />
Operation in den Zuständen des 1.<br />
Registers!<br />
David Deutsch:<br />
“massive quantum parallelism”<br />
Erster Hauptgrund <strong>für</strong> hohe Effizienz!<br />
Wähle ein a < N = 15 mit ggT(a,N)=1<br />
z.B. a=11 (oder 14, 13, 8, 7, 4, 2)<br />
Damit lautet der Zustand nach der<br />
unitären Transformation<br />
Die Nummern der Zustände des 1.<br />
Registers haben i.A einen Offset l<br />
gegenüber Null. Hier ist l=0 und l=1.<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 06/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Messung am 2. Register projeziert das<br />
1. Register je nach Offset l auf<br />
Mit [d/r] der größten natürlichen Zahl<br />
kleiner gleich d/r (Gauß-Klammer)<br />
● Durch (sehr) häufige Wiederholung der<br />
Messung und Selektion nach Offset<br />
lässt sich prinzipiell jetzt schon Periode<br />
r auslesen.<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 07/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Messung am 2. Register projeziert das<br />
1. Register je nach Offset l auf<br />
Mit [d/r] der größten natürlichen Zahl<br />
kleiner gleich d/r (Gauß-Klammer)<br />
● Durch (sehr) häufige Wiederholung der<br />
Messung und Selektion nach Offset<br />
lässt sich prinzipiell jetzt schon Periode<br />
r auslesen.<br />
Nur Projektion auf die Zustände<br />
des 2. Registers ist ungleich 0:<br />
● Offset l=0 ; also Projektion auf<br />
1. Register in Superposition<br />
● Offset l=1 ; also Projektion auf<br />
1. Register in Superposition<br />
● Durch häufige Messung am 1. Register<br />
lassen sich die Nummern der Zustände<br />
und damit die Periode zu r=2 auslesen<br />
● Für große N unpraktisch, schneller mit<br />
Quantenfouriertransformation (QFT)<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 07/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Idee der QFT : Verschiebe den uninteressanten Offset in eine <strong>für</strong> die Messung irrelevante<br />
Phase. Die Wirkung des unitären QFT Operators auf einen Zustand ist definiert als<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 08/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Idee der QFT : Verschiebe den uninteressanten Offset in eine <strong>für</strong> die Messung irrelevante<br />
Phase. Die Wirkung des unitären QFT Operators auf einen Zustand ist definiert als<br />
Betrachte im Folgenden den Fall , also . Die QFT des 1.<br />
Registers lautet somit<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 08/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Genauere Betrachung der Funktion g(z)<br />
Summe ist geometrische Reihe<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 09/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Genauere Betrachung der Funktion g(z)<br />
Summe ist geometrische Reihe<br />
1) sei<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 09/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Genauere Betrachung der Funktion g(z)<br />
Summe ist geometrische Reihe<br />
1) sei<br />
2) sei<br />
Alle Zustände, die die Bedingung 2) erfüllen, verschwinden durch destruktive Interferenz.<br />
Zweiter Hauptgrund <strong>für</strong> hohe Effizienz!<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 09/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Zusammengefasst lautet die QFT des 1. Registers somit<br />
z-Summation auf k-Summation umgeschrieben<br />
Unterschied zum Anfang: Offset l steht nicht mehr im Zustand sondern in dem <strong>für</strong> die<br />
quantentheoretische Messung irrelevanten Phasenfaktor.<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 10/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Der Gesamtzustand ( 1. und 2. Register)<br />
lautet somit<br />
Wobei der l-abhängige Phasenfaktor in<br />
das nicht interessierende 2. Register<br />
geschoben wurde. Die Periodizität steht<br />
nun in der Bezeichnung der Zustände<br />
des 1. Registers und ist durch Messung<br />
am 1. Register direkt zugänglich<br />
Bekannt:<br />
Bekannt durch Messung:<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 11/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Der Gesamtzustand ( 1. und 2. Register)<br />
lautet somit<br />
Wobei der l-abhängige Phasenfaktor in<br />
das nicht interessierende 2. Register<br />
geschoben wurde. Die Periodizität steht<br />
nun in der Bezeichnung der Zustände<br />
des 1. Registers und ist durch Messung<br />
am 1. Register direkt zugänglich<br />
Bekannt:<br />
Bekannt durch Messung:<br />
Register 2 wurde im Zustand<br />
entsprechend l=1 präpariert. QFT des 1.<br />
Registers:<br />
Damit lautet der Endzustand<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 11/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Endzustand<br />
● Mit der Wahrscheinlichkeit ½ wird am 1. Register der Messwert gemessen,<br />
der zum Zustand mit Nummer 0 (k=0) gehört<br />
, also keine Information<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 12/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Endzustand<br />
● Mit der Wahrscheinlichkeit ½ wird am 1. Register der Messwert gemessen,<br />
der zum Zustand mit Nummer 0 (k=0) gehört<br />
, also keine Information<br />
● Mit gleicher Wahrscheinlichkeit wird , also der Zustand mit Nummer 4 (k=1)<br />
gemessen<br />
, also r=2<br />
● Damit ist der Quantenteil des Algorithmus am Ende.<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 12/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
● Endzustand<br />
● Mit der Wahrscheinlichkeit ½ wird am 1. Register der Messwert gemessen,<br />
der zum Zustand mit Nummer 0 (k=0) gehört<br />
, also keine Information<br />
● Mit gleicher Wahrscheinlichkeit wird , also der Zustand mit Nummer 4 (k=1)<br />
gemessen<br />
, also r=2<br />
● Damit ist der Quantenteil des Algorithmus am Ende.<br />
● Klassisch geht es weiter nach SATZ 2:<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 12/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Zusammenfassung des Shor Algorithmus<br />
● Findet nicht-triviale Faktoren in polynomialer Zeit und damit wesentlich schneller als<br />
alle bisher bekannten klassischen Verfahren (exponentielle Laufzeit).<br />
● Aufgebaut aus klassischem und quantenmechanischen Teil.<br />
● Im Quantenteil: Suche nach Faktoren wird in Suche nach Periodizität r der Funktion<br />
f(x) verwandelt. Suche erfolgt durch Quantenfouriertransformation.<br />
● Superposition Implementierung QFT Durchläufe Insgesamt<br />
● Praktische Umsetzung jedoch auf heutigem Stand ausgesprochen schwierig und<br />
bisher nur <strong>für</strong> den einfachsten Fall N=15 mit insgesamt 7 Qubits gelungen, [Lan07].<br />
● Größtes Problem: Für Zahlen, die klassisch nicht mehr faktorisiert werden können,<br />
sind extrem lange Dekohärenzzeiten (> mehrere Stunden) erforderlich.<br />
● Fazit: Shor Algorithmus in der Theorie von großer Bedeutung, aber momentan noch<br />
jenseits einer praktischen Umsetzung.<br />
[Lan07] B. P. Lanyon et al., PRL 99, 250505 (2007)<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 13/14
Einführung zahlentheo. Aspekte Implementierung von f QFT Auswertung Konklusion<br />
Verwendete und weiterführende Literatur<br />
● Zahlentheoretische Aspekte<br />
[Pom96] Carl Pommercance, A Tale Of Two Sieves , Notices of the AMS 43 (12): pp. 1473–1485, (1996)<br />
● Zur Theorie<br />
[Bru04] Dagmar Bruß, Skriptum zur Vorlesung Quanteninformationstheorie, Uni. Düsseldorf (2004/2005)<br />
[Ste97] Andrew Steane, Skriptum Quantum Computing, University of Oxford (1997)<br />
[Aud05] Jürgen Audretsch, Verschränkte Systeme, Wiley-VCH Verlag (2005)<br />
[Sho94] Peter W. Shor, SIAM Journal on Computing, ,26, S. 1484–1509 (1994)<br />
● Zur experimentellen Umsetzung<br />
[Lan07] B. P. Lanyon et al., PRL 99, 250505 (2007)<br />
<strong>Algorithmen</strong> <strong>für</strong> <strong>Quantencomputer</strong> <strong>II</strong> Uwe Pracht 14/14