Transcript PowerPoint
Fakultät für Informatik - Technische Universität München
Lehrstuhl für Effiziente Algorithmen
us
1 r1 2isk k
exp x mod N
r k0 r
Hauptseminar im WS 2002/03:
Quantencomputing
Shors Algorithmus und der
Algorithmus von Kitaev
Sebastian Pohle
Konzeption
• In letzten Vortrag bereits Shors Algorithmus vorgestellt
• Algorithmus von Kitaev ist eine Verallgemeinerung verschiedener
Quantenalgorithmen
• Basierend auf Quantenfouriertransformation
• Vorgehensweise: Von einfachen Verfahren zu komplizierteren
Algorithmen
Detaillierte Beschreibung
… Zwischenrufe während des Vortrages sind erbeten …
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
2
Gliederung
•
1. Einführung
•
2. Einfache Quantenalgorithmen
•
DFT (Diskrete Fouriertransformation)
QFT (Quantenfouriertransformation)
4. Phasenabschätzung / Phasenmessung
5. Algorithmus von Kitaev
•
Deutschs XOR-Problem
Algorithmus von Deutsch und Jozsa
Algorithmus von Simon
3. Fouriertransformation
•
•
Rechenbasis und verwendete Notationen
Faktorisierung
Bestimmung der Ordnung
Finden versteckter Untergruppen
Abelian Stabilizer Problem (ASP)
6. Einige Verfahren
RSA
Kettenbruchzerlegung
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
3
1. Einführung
Rechenbasis und verwendete Notationen
• Kontrollierter Unitärer Operator
U (C(U))
1
0
0
0
U
0
1
0
0
0 0
0 0
a b
c d
c t c Uc t
• B = {0,1}
• als Qubits { |0>, |1> }
• Bn = { |0>, |1> }
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
4
1. Einführung
Rechenbasis und verwendete Notationen
• Duale Basis { |0‘>, |1‘> }
0
1
0 1
2
• Hadamard-Operator
H
• Rechenoperationen in Bn
und
1
H
1
2
1
0 1
2
1 1
1 1
x y ( x1 y1 ,, xn yn ) B n
x y ( x1 y1 xn yn ) B
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
5
2. Einfache Quantenalgorithmen
• Codierung als Quantenalgorithmus bringt folgende
Vorteile
Nur eine Befragung durchgeführt
Alle Antworten wollen wir gleichzeitig bekommen
Aufgabe: Wir müssen alle Fragen gleichzeitig stellen…
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
6
2. Einfache Quantenalgorithmen
•
Als Ausgangspunkt haben wir eine boolsche Funktion, die eine
boolsche Zeichenkette (= String) auf 0 oder 1 (einen boolschen Wert)
abbildet
f : {0,1}n {0,1}
•
Wir wissen über f
•
als Black-Box betrachtet (bzw. als Orakel)
entweder ist f ausgewogen, liefert also genau in der Hälfte der möglichen
Fälle 0, in der anderen eine 1
oder konstant.
f darstellbar als unitäre Operation
U f : x1 x2 xn y
x1 x2 xn y f ( x1 ,, xn
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
7
2. Einfache Quantenalgorithmen
2.1 Deutschs XOR-Problem
• Sei zunächst n = 1. Also f : B B.
• Wir legen an das Eingangsregister die Superposition
1
0 1
2
• und erhalten
1
0 0 1 0 1 0 0 0 1
2
2
• Es entstehen vier mögliche Ergebnisse. Dies schreiben wir in der
dualen Basis.
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
8
2. Einfache Quantenalgorithmen
2.1 Deutschs XOR-Problem
• für eine konstante Funktion erhält man:
1
0 f 0 1 f 1
2
1
0 0 1 0
2
1
0 1 1 1
2
1
0 0 0 1
2
1
0 0 0 1
2
• für eine ausgewogene Funktion:
1
0 f 0 1 f 1
2
1
0 0 1 1 1 0 0 1 1
2
2
1
0 1 1 0 1 0 0 1 1
2
2
• messen 2. Qubit:
Fall y=0: alle Informationen sind verloren
Fall y=1: x enthät die Aussage ob f konstant oder ausgeglichen war
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
9
2. Einfache Quantenalgorithmen
2.1 Deutschs XOR-Problem
• Algorithmus liefert nur in 50% der Fälle ein sinnvolles Ergebnis
Ergebnis ist jedoch immer korrekt
• Schaltkreis
0
H
x
x
H
0f(x)
H
Uf
0
0
• klassischer Algorithmus gleich schnell
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
10
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
• Nun sei n beliebig und f : Bn B
f
1
2
1
f x
x
xB n
• Als Ausgangszustand für y verwenden
wir den gemischten Zustand
1
0 1
2
x 0 1 wenn f x 0
U f : x 0 1
x 0 1 wenn f x 1
• Das liefert
1
Uf :
2
xB
n
0 1
x
n
2
1
n
2
1
xB n
f x
0 1
x
2
• Auffällig: das erste Qubit wird verändert
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
11
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
• Wir müssen nun anhand der Messung von f unterscheiden, ob f
konstant oder ausgewogen war.
Führen wir nun wieder die Hadamard-Transformation durch
Hn : x
1
2
1
x y
n
H n : 0 0
y
yB n
1
2
n
yB
y
n
letzterer Zustand steht für ein konstantes f (bis auf Vorzeichen)
nur der Zustand H n f 00
steht für eine konstante Funktion (Exponent=0)
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
12
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
0 0
1
n
x{0,1}
2
x
1
x 0 1
2n 2
(1)
Hn
0
Hn
x
Uf
1
x 0 1
2
2n
x
H
y
0
yf(x)
1
2
(1) x z f ( x ) z 0 1
3
2n
2
z
x
U f : x, y x, y f ( x)
x z x z
(
1
)
z ,, z
1 1
H
n
x1 ,, xn
1
n n
n
z1 ,, zn
2n
H n x
23.01.2003
3
f ( x)
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
x z
(
1
)
z
z
2n
13
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
•
Auswertung
1
2n
0, ausgewogen
f ( x)
(
1
)
x
1, konstant
Nur Nullen werden gemessen → Funktion war konstant
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
14
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
• Klassischer Algorithmus
Sobald zwei verschiedene
Antworten kommen, wissen wir,
das die Funktion ausgewogen war
Nach 2n-1 + 1 gleichen Antworten
ist klar, dass die Funktion konstant
war
Außerdem
Irrtumswahrscheinlichkeit im 2.
Fall abschätzbar:
23.01.2003
2n 1 2n
/ 2 k
pk
k k
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
15
2. Einfache Quantenalgorithmen
2.3 Algorithmus von Simon
•
Nun haben wir als Ausgangspunkt
n
Es gibt eine Periode 0 a Z 2
so dass für
f : Z 2n Z 2n
x y
f ( x) f ( y ) x y a
Wiederum kann das Orakel als Block befragt werden
U f : x, y x, y f ( x)
•
auch 2-in-1-Funktion genannt
•
Aufgabe: Bestimmung der Periode a
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
16
2. Einfache Quantenalgorithmen
2.3 Algorithmus von Simon
• Rechenschritte
Schritt 1. Wir beginnen mit dem Zustand 00
wenden die Hn darauf an und erhalten x x
Schritt 2. Uf wird angewendet
Schritt 3. 2. Reg. messen, 1. Reg. beibehalten
Schritt 4. Hn auf das 1. Register anwenden
1
x0 y
yB
x x f x
1
x0 y
y
n
x0 x0
y
y: y 0
1 r1 2isk k 1
exp x mod N
r k 0 r
Schritt 5. Werr für y finden, so dass
Schritt 6. Schritte wiederholen, bis ausreichens y da sind, um das
lineare Gleichungssystem
zu lösen O(n2)
23.01.2003
U us
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
17
2. Einfache Quantenalgorithmen
2.3 Algorithmus von Simon
• Quantenalgorithmus
0
0
23.01.2003
Hn
Hn
yf(x)
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
18
2. Einfache Quantenalgorithmen
2.3 Algorithmus von Simon
•
Klassischer Algorithmus
Falls zwei Antworten gleich, so ist
die Lösung a gefunden
Ansonsten muss weiter probiert
werden
Erfolgswahrscheinlichkeit
23.01.2003
pk k 2 / 2n
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
19
3. Fouriertransformation
3.1 Diskrete Fouriertransformation
• Fouriertransformation ist eine unitäre Operation
• Beweis für die DFT
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
20
3. Fouriertransformation
3.2 Quantenfouriertransformation
• direkte Übertragung der DFT auf Quantenzustände
1
yk
N
N 1
x e
2 ijk / N
j 0
1
j
N
j1 , , jn
0
j
N 1
e
k
e 2i 0. jn 1
0
2 ijk / N
j 0
e 2i 0. jn1 jn 1 0 e 2i 0. j1 j2 jn 1
2n / 2
• realisierbar mit Hadamard und Rotationsoperatoren
1
H
2
23.01.2003
1 1
1 1
0
1
Rk
2i / 2 k
0
e
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
21
3. Fouriertransformation
3.2 Quantenfouriertransformation
•
Rechnung mit Quantenschaltkreis
erstes Qubit
nächstes Qubit…
1
21/ 2
1
21/ 2
1
22 / 2
1
22 / 2
insgesamt:
1
2
23.01.2003
n/2
0 e 2i 0. j1 1 j2 jn
0
e 2i 0. j 2 1 j3 jn
0
e 2i 0. j2 jn 1 j3 jn
0
e 2i 0. j2 jn 1 0 e 2i 0. jn 1
0 e 2i 0. j1 j2 jn 1 j2 jn
0 e 2i 0. j1 j2 jn 1
0 e 2i 0. j1 j2 jn 1
0 e 2i 0. j1 j2 jn 1
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
22
3. Fouriertransformation
3.2 Quantenfouriertransformation
• 3-Qubit Quantenfouriertransformation
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
23
4. Phasenabschätzung / Phasenmessung
•
Quantenschaltkreis für Phasenabschätzung
•
zuerst Hadamard-Transformation
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
24
4. Phasenabschätzung / Phasenmessung
•
Ergebnis in Fouriertbasis
1
2
n/2
0 e 2i 0. t 1
0
e 2i 0. t 1 t 1 0 e 2i 0.1 2 t 1
Rücktransformation
•
Quantenschaltkreis für Phasenabschätzung
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
25
5. Algorithmus von Kitaev
• Allgemeines Problem:
Finden der Periode einer Funktion
entspricht einer Untergruppenstruktur
Modul N für allgemeine abelsche Gruppen wählbar
• Beispiel: Natürliche Zahlen modulo N
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
26
5. Algorithmus von Kitaev
5.1 Eigenwertbestimmung
•
Ordnungsbestimmung (hier am Beispiel von Shors Algorithmus
Sei xr = 1 (mod N)
U y xy(mod N )
2is
exp
us
r
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
27
5. Algorithmus von Kitaev
5.1 Eigenwertbestimmung
•
Quantenschaltkreis für Shors Algorithmus
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
28
5. Algorithmus von Kitaev
5.2 Anwendugnen
• Weitere Quantenalgorithmen:
Auffinden versteckter Untergruppen
Diskreter Logarithmus
Abelian Stabilizer Problem
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
29
6. Einige Verfahren
6.1 RSA
• Vorbereitung:
Wähle zwei große Primzahlen, p und q
Berechne Produkt n=pq
Wähle eine kleine zufällige ungerade Zahl e, die relativ prim zu φ(n)=(p1)(q-1) ist
Berechne d, die multiplikative Inverse zu e modulo φ(n)
Öffentlicher Schlüssel: P=(e,n)
Privater Schlüssel S=(d,n)
• Verschlüsselung:
E(M)=Me (mod n)
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
30
6. Einige Verfahren
6.1 RSA
• Entschlüsselung:
E(M) → D(E(M)) = E(M)d (mod n)
D(E(M)) = E(M)d (mod n)
= Med (mod n)
= M1+kφ(n) (mod n)
= M Mkφ(n) (mod n)
= M (mod n)
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
31
Vorschlag für Abschlussveranstaltung
• NMR-Quantencomputer
Faktorisierung der Zahl 15
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
32
Literatur und weitere Quellen
• Nielsen, Chuang - Quantum Computation and Quantum Information
• Werner: Quantencomputer – die neue Generation von
Supercomputern
• Jozsa: Quantum Algorithms
• Bornemann: Vorlesung Quantencomputer
Simulator unter www-m3.ma.tum.de/m3/teaching/QCOMP0102/
23.01.2003
Shors Algorithmus und der Algorithmus von Kitaev Hauptseminar Quantum Computing LEA TUM WS 02/03
33
Vielen Dank für Ihre
Aufmerksamkeit.