Einführung in Quantencomputer Literatur • M. Homeister, (jetzt FB Informatik und Medien an der Fachhochschule Brandenburg) “Quantum Computing verstehen”, Springer Vieweg Verlag (2005) • E. Rieffel und W. Polak, “An Introduction to Quantum Computing for Non-Physicists“, ACM Computing Surveys, Vol 32, No.3 (2000) 300-355, Preprint: http://arxiv.org/abs/quant-ph/9809016 • Javier Enciso “Introduction to Quantum Computing”, http://wwwmayr.in.tum.de/konferenzen/Jass09/ courses/2/Enciso_paper.pdf 1 Quantenmechanik Was ist Quantenmechanik • Sie beschreibt die Welt auf der atomaren Ebene • Sie ist bis heute “nicht verstanden”, denn sie beinhaltet seltsame Effekte: * ein Gegenstand kann in mehreren Zuständen gleichzeitig sein (Schrödingers Katze) * es kann zu “spukhafter Fernwirkung” kommen * eine Auswirkung einer Aktion kann “vor” dieser auftreten 2 Einstiegsfragen Was passiert, • wenn Licht auf zwei breite Spalten fällt? • wenn Licht auf zwei sehr schmale Spalten fällt? • wenn das Licht immer “dunkler” wird? • wenn ich anstatt Licht einen Elektronenstrahl nehme? • wenn ich einen Atomstrahl nehme? • wenn ich versuche herauszufinden, durch welchen Spalt das Atom geflogen ist? 3 Doppelspalt (1) • Das Doppelspaltexperiment: http://de.wikipedia.org/wiki/Doppelspaltexperiment Klassisch nur über Wellen zu erklären! 4 Doppelspalt (2) Erklärung mit Wellen: Ist der Wegunterschied ein Vielfaches der Wellenlänge, ist ein Maximum zu sehen. Erstaunlicherweise trifft das Gleiche auf Elektronen, Atome oder Moleküle zu! Wird versucht zu bestimmen, durch welchen Spalt das Teilchen gilt, verschwindet das Interferenzmuster. 5 Polarisation (1) Beispiel für ein “Teilchen” (Photon) und 2 “Zustände” (Polarisation) • Das Polarisationsexperiment: http://www.olympusmicro.com/primer/lightandcolor/polarization.html Das Licht kommt nicht durch einen Horizontal- und einen Vertikalfilter durch (Prinzip der 3-d Brillen im Kino) 6 Polarisation (2) Aber, wird ein weitere “diagonaler” Filter dazwischen gesetzt, kommt Licht durch Beachte: Licht kann auch als eine Menge einzelner Teilchen betrachtet werden, die Photonen, die sich wie Wellen verhalten können. 7 Polarisation (3) Erklärung des Polarisationsexperiment • Die Polarisation von Licht wird durch einen Einheitsvektor in Polarisationsrichtung beschrieben. • Horizontal-polarisiertes Licht befindet sich im Zustand | →i • Vertikal-polarisiertes Licht befindet sich im Zustand | ↑i • Eine Polarisationsmessung in horizontaler Richtung von Licht im Zustand | →i ergibt 1, d.h. 100% sind horizontal polarisiert. • Eine Polarisationsmessung in vertikaler Richtung von Licht im Zustand | →i ergibt 0, d.h. 0% sind vertikal polarisiert. • Man sagt, die Zustände | →i und | ↑i sind orthogonal zueinander. 8 Polarisation (4) • Im allgemeinen hat Polarisation eine beliebigen Richtung und ist eine Linearkombination oder Superposition von | ↑i und | →i. • Die Beschreibung geschieht durch den Zustandsvektor |Φi = a | ↑i + b | →i mit |a|2 + |b|2 = 1. • Teilchencharakter von Licht: Licht besteht aus sogenannten Photonen |Φi = a | ↑i + b | →i. | > |φ b a | > 9 > Polarisation (5) • Licht als Welle: |W ellei = a | ↑i + b | →i. Wird die Polarisation in Richtung | ↑i “gemessen”, ergibt sich ein Anteil |a|2, der durch den Filter geht, und ein Anteil |b|2 der nicht durch den Filter geht. • Licht als Teilchen: |P hotoni = a | ↑i + b | →i. Wird die Polarisation in Richtung | ↑i gemessen, ergibt sich mit der Wahrscheinlichkeit |a|2 eine 1, d.h. das Photon geht durch und mit der Wahrscheinlichkeit |b|2 eine 0, d.h. das Photon geht nicht durch, also das Photon ist mit der Wahrscheinlichkeit |a|2 im Zustand | ↑i und mit der Wahrscheinlichkeit |b|2 im Zustand | →i. Das Photon ist also gleichzeitig mit den Wahrscheinlichkeiten |a|2 und |b|2 in den beiden Zuständen | ↑i und | →i 10 Polarisation (6) • Eine Messung ändert den Zustand des Photons! • Die Superposition von | ↑i und | →i wird zerstört, das Photon ist nach der Messung entweder in | ↑i oder in | →i. • Die Wahl der Richtungen ist willkürlich, sie müssen nur senkrecht aufeinander stehen. • Interpretation von Polarisationsversuch 1: * Licht kommt im Zustand |Φi = √1 (| ↑i + | →i) 2 * Filter A “misst” 50% aller Photonen im Zustand | →i. * Filter C “misst” 0, denn | →i = 1 · | →i + 0 · | ↑i, kein Licht kommt durch. 11 Polarisation (7) • Interpretation von Polarisationsversuch 2: * Licht kommt im Zustand |Φi = √1 (| ↑i + | →i) 2 * Filter A “misst” 50% aller Photonen im Zustand | →i. * Für einen Filter in Diagonalrichtung sieht der Zustand | →i aus wie | →i = √1 (| րi − | տi) und der Zustand | ↑i aus wie 2 | ↑i = | րi + | տi. * Filter B in Diagonalrichtung “misst” 50% aller Photonen im Zustand | րi. * Für einen Filter in vertikaler Richtung sieht der Zustand | րi aus wie | րi = √1 ( | →i + | ↑i). 2 * Filter C in vertikaler Richtung “misst” 50% aller Photonen im Zustand | ↑i. 12 Bra/Ket Notation (1) • Die Linearkombination von Zuständen, in der sich ein quantenmechanisches Teilchen befindet, kann viele Bedeutungen haben: * Polarisation (wird zur Schlüsselübertragung bei Quantenkryptographie verwendet) * Spin (“Eigendrehung”, wird meist als Kenngröße bei Quantencomputern verwendet) * Energieniveau * Ort ..... • Die Darstellung der Zustände geschieht durch Vektoren, • die Darstellung der logischen Operationen dementsprechend durch Matrizen. 13 Bra/Ket Notation (2) • Notation nach Dirac mit bra/ket * kets wie |xi beschreiben Spaltenvektoren * bras wie hy| beschreiben Zeilenvektoren * Das Produkt hy||xi ≡ hy|xi (bra und ket gibt bracket oder Klammer) ist ein Skalarprodukt und damit eine Zahl. * Sie finden in der Literatur 4 Notation für ein Skalarprodukt: ∗ “Vektorschreibweise”: x · y = c ∗ “Matrixschreibweise”: xT y = c ∗ “Klammerschreibweise”: (x, y) = c ∗ “bra/ket-Schreibweise”: hy|xi = c * Das Produkt |xihy| = M ist ein Matrix (äußeres Produkt), oder aufgefasst als Vektoren bzw. Matrizen mit einer Spalte/Zeile: xyT = M 14 Bra/Ket Notation (2) Rechenregeln für 2 Zustände in Vektor- und Matrixschreibweise • |0i = 1 0 ! und |1i = • h1|1i = (0, 1) 0 1 ! 0 1 = 1; ! h0|0i = (1, 0) 1 0 ! = 1; • h1|0i = h0|1i = 0 • |0ih1| = 1 0 ! (0, 1) = 0 1 0 0 ! • Negation: X = |0ih1| + |1ih0| = 0 1 1 0 ! X|0i = |1i und X|1i = |0i 15 Q-TM Erste Idee eines Quantencomputer • 1985: Deutsch entwickelte ein formales Modell für einen Rechner, der in der Lage sein soll, beliebige physikalische Systeme effizient zu simulieren. • Sein Modell ist das quantenmechanische Analogon zur klassischen Turing-Maschine, die Quanten-Turing-Maschine (QTM) . • Deutschs Modell bildet immer noch die Grundlage dessen, was wir heute unter einem Quantenrechner verstehen. • Das Modell ist formal etwas “unhandlich”, deshalb werden heute zum Entwerfen von Algorithmen sogenannte Quantenschaltkreise verwendet. • Man kann beweisen, dass geeignete Varianten von Quantenschaltkreisen effizient durch Quanten-Turing-Maschinen simuliert werden können und umgekehrt. 16 QuBits (1) Ein Quantenbit • ein “klassisches Bit” ist entweder im Zustand |0i oder |1i, kann also den Wert 0 oder 1 darstellen. • ein “Quantenbit” oder QuBit kann beide Zustände gleichzeitig annehmen, also die Werte 0 und 1 gleichzeitig durch eine Superposition, z.B. |Φi = √1 (|0i + |1i) darstellen. 2 • n klassisches Bit können 2n Zahlen darstellen, jede Kombination von Werten der Bits ist eine Zahl. • n QuBits können eine Superposition aller 2n Zahlen sein, d.h. sie können alle Zahlen gleichzeitig darstellen. • Ein Quantenregister ist eine Folge von QuBits. 17 QuBits (2) Multi-QuBits • Beispiel: 2 QuBits werden durch das Produkt der Vektorräume jedes QuBits beschrieben, Vektorraum Teilchen 1: |0i1, |1i1, Vektorraum Teilchen 2: |0i2, |1i2 Zusammen ein “gemeinsamer Raum” (Tensorprodukt): |0i1 ⊗ |0i2, oder |00i |0i1 ⊗ |1i2, oder |01i |1i1 ⊗ |0i2, oder |10i |1i1 ⊗ |1i2, oder |11i • Die Basisvektoren |00i, |01i, |10i, |11i entsprechen 4 neuen Basisvektoren |1i, |2i, . . . |22i 18 QuBits (3) • Wird die Vektorschreibweise verwendet, lässt sich der zusammengesetzte Vektorraum durch Vektoren mit 4 Komponenten beschreiben. • Berechnet wird das Tensorprodukt zweier Vektoren gemäß a0 a1 ! b0 b1 ⊗ • Beispiel: 0 1 ! ⊗ 1 0 ! ! = = 0·1 0·0 1·1 1·0 a0b0 a0b1 a1b0 a1b1 = 0 0 1 0 19 QuBits (4) • Vektorschreibweise: 1 0 |00i = , 0 0 0 1 |01i = , 0 0 0 0 |10i = , 1 0 0 0 |11i = 0 1 • analog habe 3 QuBits 23 Basisvektoren: |000i, |001i, |010i, |011i, |100i, |101i, |110i, |111i • n-QuBits haben dementsprechend durch 2n Basisvektoren 20 QuBits (4) Zahlen mit QuBits • Eine Rechnung mit n klassischen Bits gibt ein Ergebnis. • Eine Rechnung mit n QuBits gibt die Ergebnisse aller möglichen Zahlen gleichzeitig, denn der Ausgangszustand eine Superposition aller möglichen Basisvektoren ist. • Problem 1: Die QuBits müssen miteinander “verbunden” werden, um als Zahl gelesen werden zu können und Rechnungen auf darauf durchzuführen • Problem 2: Es kann immer nur ein Ergebnis gelesen werden und nicht das Ergebnis aller mögliche Basiszustände, also aller möglichen Zahlen, und mit der “Messung” wird die Superposition zerstört 21 Verschränkte Zustände (1) Problem 1: QuBits müssen miteinander “verbunden” werden • Betrachte 2 unabhängige QuBits a1|0i1 + b1|1i1 und a2|0i2 + b2|1i2 • Das Tensorprodukt ergibt (a1|0i1, +b1|1i1) ⊗ (a2|0i2, +b2|1i2) = a1a2|00i + a1b2|01i + b1a2|10i + b1b2|11i • Ein 2-QuBits-Zustand |00i + |11i kann so nicht erzeugt werden, da dann a1b2 = b1a2 = 0 gelten muss, aber daraus auch a1a2 = 0 oder b1b2 = 0 folgt. 22 Verschränkte Zustände (2) • Zustände, die sich nicht aus zwei einzelnen QuBits darstellen lassen, heißen verschränkte Zustände und haben keine “klassisch” Entsprechung • QuBit-Paare in einem verschränkten Zustand werden als EPR-Paar (Einstein, Podolsky, Rosen) bezeichnet und sind die Grundlage der Quantenverschlüsselung • Zustände, die sich als Produkt von Zuständen einzelner QuBits schreiben lassen, heißen unverschränkt. 23