Hauptseminar im WS 2002/03:
Hauptseminar im WS 2002/03:
Quantencomputing Quantencomputing
Shors Algorithmus und der Shors Algorithmus und der
Algorithmus von Kitaev Algorithmus von Kitaev
Sebastian Pohle Sebastian Pohle
Fakultät für Informatik - Technische Universität München
Lehrstuhl für Effiziente Algorithmen r x N
isk
u rr k
k
s 2 mod
1 1exp
0
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
2
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 …
Gliederung
• 1. Einführung
Rechenbasis und verwendete Notationen
• 2. Einfache Quantenalgorithmen
Deutschs XOR-Problem
Algorithmus von Deutsch und Jozsa
Algorithmus von Simon
• 3. Fouriertransformation
DFT (Diskrete Fouriertransformation)
QFT (Quantenfouriertransformation)
• 4. Phasenabschätzung / Phasenmessung
• 5. Algorithmus von Kitaev
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 - Ha uptseminar Quantum Computing LEA TUM WS 02/03
4
1. Einführung
Rechenbasis und verwendete Notationen
• Kontrollierter Unitärer Operator U (C(U))
• B = {0,1}
• als Qubits { |0>, |1> }
• B
n= { |0>, |1> }
t U c t
c c
d c
b a 0 0
0 0
0 0 1 0
0 0 0 1
U
1. Einführung
Rechenbasis und verwendete Notationen
• Duale Basis { |0‘>, |1‘> }
• Hadamard-Operator
• Rechenoperationen in B
n
0 1
2 1 1
und 1
2 0
0 1
1 1
1 1 2 H 1
H
B y
x y
x y x
B y
x y
x y x
n n
n n
n
) (
) ,
, (
1 1
1 1
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
6
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…
2. Einfache Quantenalgorithmen
• Als Ausgangspunkt haben wir eine boolsche Funktion, die eine
boolsche Zeichenkette (= String) auf 0 oder 1 (einen boolschen Wert) abbildet
als Black-Box betrachtet (bzw. als Orakel)
• Wir wissen über f
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 } 1 , 0 { }
1 , 0 {
: n
f
n n
n
f x x x y x x x y f x x
U : 1 2 1 2 ( 1,,
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
8
2. Einfache Quantenalgorithmen
2.1 Deutschs XOR-Problem
• Sei zunächst n = 1. Also f : B B.
• Wir legen an das Eingangsregister die Superposition
• und erhalten
• Es entstehen vier mögliche Ergebnisse. Dies schreiben wir in der dualen Basis.
0 1
2
1
0 0 0 1
2 0 1
1 0
2 0
1
2. Einfache Quantenalgorithmen
2.1 Deutschs XOR-Problem
• für eine konstante Funktion erhält man:
• für eine ausgewogene Funktion:
• messen 2. Qubit:
Fall y=0: alle Informationen sind verloren
Fall y=1: x enthät die Aussage ob f konstant oder ausgeglichen war
1 0 0
2 0 1 1
1 1 2 0
1
1 0 0
2 0 0 1
1 0
2 0 1 1
1 0
2 0
1 f f
1 1 0
2 0 0 1
1 1 2 0
1
1 1 0
2 0 1 1
1 0
2 0 1 1
1 0
2 0
1 f f
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
10
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
• klassischer Algorithmus gleich schnell
0 x
0
x
0f(x)
U
fH 0
H H
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
• Nun sei n beliebig und f : B
n B
• Als Ausgangszustand für y verwenden wir den gemischten Zustand
• Das liefert
• Auffällig: das erste Qubit wird verändert
Bn
x
x
f x
f 1
2 1
0 1 wenn 1
0 wenn
1 1 0
0
: x f x
x f x x
Uf
0 1
2
1
21 1 0
2 1 2
1 0 2
: 1
n
n x B
x f n
B n x
f x x
U
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
12
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
letzterer Zustand steht für ein konstantes f (bis auf Vorzeichen)
nur der Zustand
steht für eine konstante Funktion (Exponent=0)
n n
B n y n
B y
y x n n
y H
y x
H
2 0 1
0 :
2 1 : 1
0 0
f Hn
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
z x n
x f z
x z
2 1 0 2
) 1
( ( )
3
0
0 x
y
x
yf(x)
U
fH
Hn Hn
1
1 2 3
1
0 0
n
} 1 , 0 {
1 2
1 0 2
x n
x
x n
x
f x
2 1 0 2
) 1 ( ( )
2
) ( ,
,
: x y x y f x
U f
n z
z n
z x z x n
n n
n
n z z
x x
H 2
, , )
1 , (
, , , 1
1 1
1
1
n z
z x
n z
x
H 2
) 1
(
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
14
2. Einfache Quantenalgorithmen
2.2 Algorithmus von Deutsch und Jozsa
• Auswertung
Nur Nullen werden gemessen → Funktion war konstant
x
x f
n 1 ,konstant ausgewogen ,
) 0 1 2 (
1 ( )
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:
k n
n
k k k
p
2 2
2 1 /
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
16
2. Einfache Quantenalgorithmen
2.3 Algorithmus von Simon
• Nun haben wir als Ausgangspunkt
Es gibt eine Periode so dass für
Wiederum kann das Orakel als Block befragt werden
• auch 2-in-1-Funktion genannt
• Aufgabe: Bestimmung der Periode a
n
n Z
Z
f : 2 2 Zn
a 2
0
y x
a y x y
f x
f ( ) ( )
) ( ,
,
: x y x y f x
U f
2. Einfache Quantenalgorithmen
2.3 Algorithmus von Simon
• Rechenschritte
Schritt 1. Wir beginnen mit dem Zustand wenden die Hn darauf an und erhalten
Schritt 2. Uf wird angewendet
Schritt 3. 2. Reg. messen, 1. Reg. beibehalten
Schritt 4. Hn auf das 1. Register anwenden
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)
0 0
x x
x
x f
x
0 :
0
0 1
1
y B y
y
y x y
x y y
n
N r x
isk u r
U r k
k
s 2 mod
1 1exp 1 0
0
0 x
x
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
18
2. Einfache Quantenalgorithmen
2.3 Algorithmus von Simon
• Quantenalgorithmus
0 Hn Hn
0 yf(x)
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 pk k2 /2n
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
20
3. Fouriertransformation
3.1 Diskrete Fouriertransformation
• Fouriertransformation ist eine unitäre Operation
• Beweis für die DFT
3. Fouriertransformation
3.2 Quantenfouriertransformation
• direkte Übertragung der DFT auf Quantenzustände
• realisierbar mit Hadamard und Rotationsoperatoren
1
0
/
1 N 2 j
N ijk j
k x e
y N
k N e
j N
j
N
ijk
1
0
/
1 2
i k
k e
R 2 /2
0
0 1
2 /
. 0 2 .
0 2 .
0 2
1 2
1 0
1 0
1 , 0
,
2 1 1
n
j j j i j
j i j
i n
n n
n
n e e
j e j
1 1
1 1 2 H 1
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
22
3. Fouriertransformation
3.2 Quantenfouriertransformation
• Rechnung mit Quantenschaltkreis
erstes Qubit
nächstes Qubit…
insgesamt:
nj j j i
n j
i
j j e
j j e
n
2
. 0 2 2
/ 1
2 .
0 2 2
/ 1
1 2 0
1
1 2 0
1
2 1 1
nj j i j
j j i
n j
j i j j i
j j e
e
j j e
e
n n
n
3 .
0 2 .
0 2 2
/ 2
3 2 . 0 . 2
0 2 2
/ 2
1 0
1 2 0
1
1 0
1 2 0
1
2 2
1 2 1
0 1
0 1
0 1
2
1 2 0. 2 0. 2 0.
2 /
2 2
1j jn i j jn i jn
j i
n e e e
3. Fouriertransformation
3.2 Quantenfouriertransformation
• 3-Qubit Quantenfouriertransformation
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
24
4. Phasenabschätzung / Phasenmessung
• Quantenschaltkreis für Phasenabschätzung
• zuerst Hadamard-Transformation
4. Phasenabschätzung / Phasenmessung
• Ergebnis in Fouriertbasis
Rücktransformation
• Quantenschaltkreis für Phasenabschätzung
0 1
0 1
0 1
2
1 2 0. 2 0. 1 2 0. 1 2
2 /
t t
t
t i i
i
n e e e
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
26
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
5. Algorithmus von Kitaev
5.1 Eigenwertbestimmung
• Ordnungsbestimmung (hier am Beispiel von Shors Algorithmus
Sei xr = 1 (mod N)
) (mod N xy
y
U
N r x
isk
u r k
r
k
s 2 mod
1 1exp
0
N r x
isk u r
U r k
k
s 2 mod
1 1exp 1
0
us
r is
2 exp
23.01.2003 Shors Algorithmus und der Algorithmus von Kitaev - Ha uptseminar Quantum Computing LEA TUM WS 02/03
28
5. Algorithmus von Kitaev
5.1 Eigenwertbestimmung
• Quantenschaltkreis für Shors Algorithmus
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 - Ha uptseminar Quantum Computing LEA TUM WS 02/03
30
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)=(p- 1)(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)
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 - Ha uptseminar Quantum Computing LEA TUM WS 02/03
32
Vorschlag für Abschlussveranstaltung
• NMR-Quantencomputer
Faktorisierung der Zahl 15
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/