42
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/05

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

Embed Size (px)

Citation preview

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

Quantum Computing

Hartmut KlauckUniversität FrankfurtWS 04/05

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

Organisatorisches Vorlesung: Mi. 14-16 c.t. Übung: Fr. 16-17 (ab 29.10.) Schein: Fachgespräch Zuordnung T2,T3 Voraussetzung: Vordiplom

(Informatik, Mathematik oder Physik) Website:

www.thi.informatik.uni-frankfurt.de/~klauck/QC04.html

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

Literatur

Nielsen/Chuang: Quantum Computation and Quantum Information

(Cambridge)

Ebenfalls empfohlen (online):

John Preskill's lecture notes

Umesh Vazirani's course

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

Warum Quantum Computing? Quantenmechanik: physikalische Theorie

(vor allem) der mikroskopischen Welt Moore’s Law: Alle ... (18 Mon?) verdoppelt

sich die Rechenleistung/Anzahl der Transistoren pro mm2

Grenze: 1 Transistor pro Elektron Quantenmechanische Effekte !

(binnen <20 Jahren)

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

Hitzeentwicklung in integrierten Schaltungen:

“Löschen” von Information nur möglich durch Abstrahlen von Wärme

) Reversible Berechnungen!

Quantenberechnungen sind reversibel

Warum Quantum Computing?

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

Warum Quantum Computing? Können Quanteneffekte sogar nützlich

sein? Es gibt einen Quantenalgorithmus, der

ganze Zahlen in polynomieller Zeit in Primfaktoren zerlegt, und so das RSA Kryptoverfahren bricht

Es gibt Quantenkryptographische Verfahren, die sicher sind (unter der Annahme, dass QM korrekt ist)

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

Weitere Gründe

Landauer: Information is physical Computation is physical Quantenmechanik ist ein

Berechnungsmodell

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

Quantenmechanik

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

Quantenmechanik

Selber Ausgang des Experimentes, wenn einzelne Elektronen/Photonen ausgestossen werden

) Wellenverhalten nicht bloss “statistisch”

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

Quantenmechanik

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

Historisches

Entwicklung der Quantenmechanik:Planck 1900, Schrödinger, Heisenberg, Bohr, Einstein.....

von Neumann’s Formalismus 1935: Einstein, Podolsky, Rosen

beschreiben quantenmech. “Verschränkung” (entanglement)

heute bestbestätigte physikalische Theorie

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

(Quanten) Informatik

1936: Turing schlägt universelle Berechnungsmaschine vor (Church Turing These)

1948 Shannon’s Informationstheorie 1965 Moore’s Law 1982: Feynman beobachtet, dass

Quantensysteme nicht effizient auf klassischen Computern simulierbar sind, schlägt quantenmechanische Computer

1982 Wiesner: Quantenkryptographie

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

Quanten Informatik

1985 Deutsch: erster Quantenalgorithmus 1993 Quantum Teleportation 1994 Shor: Quantenalgorithmus zum

Faktorisieren ganzer Zahlen 1996 Grovers Algorithmus:

unsortierte Datenbank mit n Elementen kann Zeit durchsucht werden

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

Qubits

Quantenmechanik ist eine Theorie von Zuständen und Transformationen

Zustände: Vektoren

Bits: 0 oder 1, in einem Register Zugeordnete Zustände |0i, |1i

Beispiele: Weg eines Elektrons im Doppelschlitzexperiment, Polarisation Photon

Quantenzustände: |0i+ |1i, ||2 +||2=1

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

Qubits (II)

|0i, |1i Basisvektoren im 2-dimensionalen komplexen Vektorraum C2

Qubits: |0i+ |1i, ||2 +||2=1 ,: Amplituden Einheitsvektoren (euklidische Norm) Vergleich: Wahrscheinlichkeitsverteilungen:

0 mit Ws. p, 1 mit Ws. 1-p) Einheitsvektoren 1-Norm

Qubits: , sind (komplexe) Zahlen, möglich. negativ!

Quadrate ergeben Ws. Verteilung

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

Quantenformalismus

Quantenzustände sind Vektoren in einem Hilbertraum (Vektorraum mit innerem Produkt)

Hilbertraum entspricht Qubit Register

Hilbertraum hier: Ck mit Standardprodukth (vi) | (wi) i =i=1…k vi

*wi

x*: komplex konjugierte Zahl

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

Dirac Notation

h | “BRA” Zeilen Vektor | i “KET” (Spalten) Vektor h | i inneres Produkt

(Produkt von Zeilenvektor und Spaltenvektor)

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

Mehrere Qubits

Hilbertraum: Dimension 2k

D.h. 2k Basisvektoren Notation |ii, i=1,...,2k

Einheitsvektoren (Zustände) sind von der Form i i |ii; i=1....2k

Alternativ: identifiziere i=1...2k mit x2{0,1}k

Basiszustände |xi, x2 {0,1}k

Basiszustände entsprechen klassischen Belegungen des “Registers”

Allgemeine Zustände sind “Superposition” von 2k Strings

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

Tensorprodukt

Hilberträume H, K, Dimension dH und dK

Tensorprodukt H K ist Raum der Dimension dH¢dK

Tensorprodukt von Vektoren: (a1,..., al) (b1,...,br)= (a1b1,a1b2,...,a1br,a2 b1,......,albr)

Beispiel: |0i = (10)T; |1i= (01)T

und |01i= |0i |1i = (0100)T

Basiszustände von H K: |xi |yi =|xyi

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

Was geschieht man mit Qubits? Quantensysteme evolvieren gemäss der

Schrödinger Gleichung Ergebnis: Quantentransformation;

entspricht unitärer Transformation auf Zuständen

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

Lineare Algebra

Lineare Abbildungen A(x+y)=Ax+Ay x,y: Vektoren in Ck, A: k £ k Matrix Reelle Zahlen: Abbildungen O orthogonal, wenn

OOT=I komplexe Zahlen: U unitär, wenn UUy =I

U*: Einträge komplex konjugiertUy = (U*)T

unitäre Abbildungen bewahren die Länge von Vektoren (bilden Zustände auf Zustände ab)

Transformation in QM:unitäre Abbildung (reversibel)

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

Beispiel unitäre Transf.

Auf einem Qubit:klassische Transformationen:Identität, Negation

Hadamard Transformation:

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

Beispiel Transformation

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

Beispiel Transformation

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

Beispiel Transformation

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

Unitäre Transformationen U |xi definiert für alle x2 {0,1}k

) U definiert

Tensorprodukt:

A B=

Beispiel: H n=H H: n-faches Produkt von H, Hadamard Transformation auf n Qubits

H n ( |0i ) n = ( H|0i ) n

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

Messungen

Quantenzustände (Vektoren in Ck) werden durch unitäre Abbildungen transformiert

Wie bekommt man eine Ausgabe in einer Berechnung?

“Messe” i i |ii

Ergebnis: i mit Wahrscheinlichkeit |i|2

i |i2|=1

Nach der Messung ist der Zustand zu |ii “kollabiert”, wenn Ausgabe i beobachtet

Messprozess ist “Postulat” wie unitäre Entwicklung

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

Zusammenfassung

Zustände: Einheitsvektoren in Hilbertraum, log Dimension entspricht Anzahl Qubits

Superposition der Strings Länge k ergibt ein Register mit k Qubits, Hilbertraum dim 2k

Evolution: unitäre Transformation Messung: i |ii ergibt Ausgabe i

mit Ws |i|2, Zustand kollabiert zu |ii bei Ausgabe i

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

Quanteninformatik

Jede lokale unitäre Transformation ist berechenbar (auf 2 Qubits)

Globale Transformation aus lokalen zusammensetzen (Quanten Schaltkreise)

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

Zeit für einen Algorithmus David Deutsch s Algorithmus Setup: Input ist Black Box Funktion f:{0,1} {0, 1}

unbekannt (Eingabe) Zugriff: Lese f(0), f(1) Entweder f(0)=f(1) oder f(0) f(1) Problem: Welcher Fall?

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

Deutschs Problem

Zugriff f:{0,1}{0,1} durch Lesen von f(0) oder f(1)

klassische deterministische Algorithmen ohne Fehler müssen f(0) und f(1) lesen.

Randomisierte Algorithmen mit 1 Frage haben Fehlerwahrscheinlichkeit 1/2

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

Quantenfragen

randomisierte Fragen: Ws verteilung auf 0 oder 1

Quanten Frage: SuperpositionNotwendig: unitäre Operation!

Uf |ii|ai=|ii|a© f(i) für alle i,a2{0,1}; © ist XOR Operation: 0©0=0; 0©1=1; 1©1=0

Uf auf allen Basiszuständen definiert) Uf definiert

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

Idee “Parallele” Berechnung Uf: Frage an das f-Orakel Zwei Qubits

(H I) |00i I: Identität=1/21/2 (|00i+|10i)

Wende Uf an Ergebnis 1/21/2 ( |0,f(0)i+|1,f(1)i ) f:{0,1}n {0,1}: wende Uf H n an Ergebnis:

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

“Parallele” Berechnung

Was kann man mit diesem Zustand anfangen?

Messung ergibt nur uniforme Verteilung auf x,f(x)

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

Deutschs Algorithmus

Starte mit |01i Wende H H an Ergebnis:

1/2 (|0i +|1i) (|0i -|1i) Wende Uf an Ergebnis:

1/2 ( |0,f(0)i-|0,f(0)©1i+|1,f(1)i-|1,f(1)©1i )

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

Deutschs Algorithmus

Idee für Analyse:Effekt Uf auf |xi 1/21/2(|0i-1i):

(-1)f(x) |xi 1/21/2(|0i-|1i)

Uf |0i 1/21/2( |0i-|1i ) = |0i 1/21/2 ( |f(0)i -|f(0) © 1i )= (-1)f(0) |0i 1/21/2( |0i-|1i)

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

Deutschs Algorithmus

Idee für Analyse:Effekt Uf auf |xi 1/21/2(|0i-1i):

(-1)f(x) |xi 1/21/2(|0i-|1i)

Uf |1i 1/21/2( |0i-|1i ) = |1i 1/21/2 ( |f(1)i -|f(1) © 1i )= (-1)f(1) |1i 1/21/2( |0i-|1i)

Zweites Qubit ist nur zur Hilfe....und kann jetzt vergessen werden

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

Deutschs Algorithmus

Wende Hadamard an (auf verbleibendem Qubit)

Zustand vorher:f(0) = f(1): § 1/21/2 (|0i+|1i)f(0) f(1): § 1/21/2 (|0i-|1i)

Fall 1: f(0)=f(1):H § 1/21/2 (|0i+|1i) = § |0i

Fall 2: f(0) F(1):H § 1/21/2 (|0i-|1i) = § |1i

Messung unterscheidet Fälle sicher

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

Deutsch Algorithmus

H

Uf

H|0i

|1i

MessungH

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

Deutsch-Josza Algorithmus

f:{0,1}n {0,1} Ist f balanciert (50% 0, 50 % 1) oder konstant?

Annahme: einer der beiden Fälle, ansonsten Ausgabe egal

Quantum : 1 Frage Deterministisch: 2n/2+1 Fragen!

Warum? Lege f abhängig von den Fragen eines

Algorithmus’ fest, f(x1)=0,...,f(xl)=0 Bis l > 2n/2 keine korrekte Entscheidung möglich Algorithmus funktioniert für f nicht “Adversary Argument”

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

Deutsch Josza Algorithmus

n Qubits im Zustand |0ni 1 Qubits im Zustand |1i Wende H n+1 an, dann Uf

Ergebnis:

Wende H n an und messe Ergebnis: 0n iff f ist konstant

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

Diskussion

Deterministisch: 2n/2+1 Fragen Quantum: 1 Frage, O(n) Gatter (lokale

Transformationen), kein Fehler Randomisierte Algorithmen sind ebenfalls

effizient, aber nur mit Fehler