Quantencomputer - Eine Einf hrung - TU Grazarrigoni/vorlesungen/quantumcomputer/script/... · z.B....

241
QUANTENCOMPUTER Eine Einf¨ uhrung Enrico Arrigoni WS 2009/10 Herzlichen Dank an den Herren Roland Peckl und Stefan Rossegger ur die Hilfe bei der Verfassung des Textes. —— Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 1 / 221

Transcript of Quantencomputer - Eine Einf hrung - TU Grazarrigoni/vorlesungen/quantumcomputer/script/... · z.B....

  • QUANTENCOMPUTER

    Eine Einführung

    Enrico Arrigoni

    WS 2009/10

    Herzlichen Dank an den Herren Roland Peckl und Stefan Rosseggerfür die Hilfe bei der Verfassung des Textes. ——

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 1 / 221

  • Motivation ?A

    nzah

    l der

    Ato

    me

    in e

    inem

    Bit

    Jahr

    DAS MOOR'SCHE GESETZ

    1960 1970 1980 1990 2000 2010 2020

    0.1

    1000

    107

    1011

    1015

    1019

    ?Quantenmechanisches Regime

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 2 / 221

  • Inhalt

    1. EinführungGeschichtlichesStruktur und Gliederung der VorlesungWas bedeutet schnellere Algorithmen ?Exkurs: warum ist die Faktorisierung interessant?

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 3 / 221

  • Inhalt

    2. Klassische Logik und klassische RechnungVom elementaren Prozess zur (komplizierten) FunktionElementare Operationen (B) sind die Boolsche OperatorenBeispiel für die Realisierung einer Funktion (C) durch Boolsche OperatorenUniversalitätDirac-Darstellung für klassische ZuständeDarstellung von logischen Operatoren in Dirac-Schreibweise

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 4 / 221

  • Inhalt

    2. Klassische Logik und klassische RechnungVom elementaren Prozess zur (komplizierten) FunktionElementare Operationen (B) sind die Boolsche OperatorenBeispiel für die Realisierung einer Funktion (C) durch Boolsche OperatorenUniversalitätDirac-Darstellung für klassische ZuständeDarstellung von logischen Operatoren in Dirac-Schreibweise

    3. Konzepte der QuantenmechanikDer quantenmechanische Zustand - Dirac DarstellungDie MessungZeitentwicklung

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 4 / 221

  • Inhalt

    4. QuantenBits - QUBITSGates für ein QuBitZwei-Qubits GatesCONTROLLED NOT - Gate - CNOTEinstein, Podolsky, Rosen (EPR) Paradox (EINSCHUB)Phase-shift GateControlled-U - GateQuanten-Arithmetik

    Auswertung von Funktionen

    QuantenparallelismusZusammenfassung und Überlegungen

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 5 / 221

  • Inhalt

    4. QuantenBits - QUBITSGates für ein QuBitZwei-Qubits GatesCONTROLLED NOT - Gate - CNOTEinstein, Podolsky, Rosen (EPR) Paradox (EINSCHUB)Phase-shift GateControlled-U - GateQuanten-Arithmetik

    Auswertung von Funktionen

    QuantenparallelismusZusammenfassung und Überlegungen

    5. Erste QuantenalgorithmenEinfacher Algorithmus (D. Deutsch)Quanten-Recherche in Datenbanken (Grover-Algorithmus)

    Realisierung der Spiegelung RS

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 5 / 221

  • Inhalt

    6. Einige Physikalische RealisierungenNotwendige VoraussetzungenIonen in einer Ionenfalle

    1-Qubit Transformation1-Qubit Transformation1-Qubit Transformation1-Qubit Transformation

    Messung2-Qubit TransformationenWeitere Realisierungen

    Richtige Behandlung des J-TermesNukleare Spins in einem Molekül (NMR)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 6 / 221

  • Inhalt

    6. Einige Physikalische RealisierungenNotwendige VoraussetzungenIonen in einer Ionenfalle

    1-Qubit Transformation1-Qubit Transformation1-Qubit Transformation1-Qubit Transformation

    Messung2-Qubit TransformationenWeitere Realisierungen

    Richtige Behandlung des J-TermesNukleare Spins in einem Molekül (NMR)

    7. FaktorisierungFaktorisierungsalgorithmus (Shor’94)Quanten-Algorithmus für die Suche nach der Periode einer FunktionFourier-Transformation

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 6 / 221

  • Vorwort

    Allgemeine Bemerkungen

    Die Vorlesung richtet sich vor allem an Studierende der Physik, die einbesonderes Interesse an Quantenmechanik und ihre Anwendungen haben.Die faszinierenden Eigenschaften der Quantenmechanik zeigen neueMöglichkeiten auf, Probleme, die mit gewöhnlichen Algorithmen undComputern nur in astronomischen Zeiten lösbar wären, effizient und schnellzu behandeln.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 7 / 221

  • Vorwort

    Allgemeine Bemerkungen

    Die Vorlesung richtet sich vor allem an Studierende der Physik, die einbesonderes Interesse an Quantenmechanik und ihre Anwendungen haben.Die faszinierenden Eigenschaften der Quantenmechanik zeigen neueMöglichkeiten auf, Probleme, die mit gewöhnlichen Algorithmen undComputern nur in astronomischen Zeiten lösbar wären, effizient und schnellzu behandeln.In dieser Vorlesung soll durch einige Beispiele vermittelt werden, wie aus deneinfachsten Regeln der Quantenmechanik solche für den Quantencomputernotwendigen Algorithmen entwickelt und realisiert werden können.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 7 / 221

  • Vorwort

    Was ist ein Quantencomputer ?Eine fundamental neue Art von Informationsverarbeitung, dass dieeinzigartigen Eigenschaften der Quantenmechanik benutzt um ihre Effizienzzu verbessern.Mit Hilfe quantenmechanischer Überlegungen und deren Gesetzen sollenbestimmte Algorithmen verbessert und weiterentwickelt werden.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 8 / 221

  • Vorwort

    Warum diese Vorlesung?Zweck dieser Vorlesung ist es, eine sinnvolle Ergänzung zu denQuantenmechanik-Grundlagen anzubieten und eine moderne Anwendung derQuantenmechanik vorzustellen.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 9 / 221

  • Vorwort

    Warum diese Vorlesung?Zweck dieser Vorlesung ist es, eine sinnvolle Ergänzung zu denQuantenmechanik-Grundlagen anzubieten und eine moderne Anwendung derQuantenmechanik vorzustellen.Das Gebiet Quantencomputer hat sich in den letzten Jahren schnellentwickelt und gewinnt immer mehr an Bedeutung,vor allem durch die rasendschnelle Entwicklung der Mikroelektronik und der Informationstechnologie.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 9 / 221

  • Vorwort

    Warum diese Vorlesung?Zweck dieser Vorlesung ist es, eine sinnvolle Ergänzung zu denQuantenmechanik-Grundlagen anzubieten und eine moderne Anwendung derQuantenmechanik vorzustellen.Das Gebiet Quantencomputer hat sich in den letzten Jahren schnellentwickelt und gewinnt immer mehr an Bedeutung,vor allem durch die rasendschnelle Entwicklung der Mikroelektronik und der Informationstechnologie.Bedingt durch die Miniaturisierung der Bausteine (Schalt-u.Speicherelemente) spielt die Quantenmechanik bereits jetzt eine wichtigeRolle in der Hardware moderner Computer.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 9 / 221

  • Vorwort

    Für die Software gilt aber nach wie vor die klassische Logik.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 10 / 221

  • Vorwort

    Für die Software gilt aber nach wie vor die klassische Logik.Ebendies ist Aufgabe der Quanten-Informatik, sich darüber Gedanken zumachen, wie die quantenmechanischen Gesetze direkt in der Logik, also indie Software angewendet werden können. Einige dieser Möglichkeiten sollenin dieser Vorlesung gezeigt werden.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 10 / 221

  • Einführung

    1. EinführungGeschichtlichesStruktur und Gliederung der VorlesungWas bedeutet schnellere Algorithmen ?Exkurs: warum ist die Faktorisierung interessant?

    2. Klassische Logik und klassische Rechnung

    3. Konzepte der Quantenmechanik

    4. QuantenBits - QUBITS

    5. Erste Quantenalgorithmen

    6. Einige Physikalische Realisierungen

    7. FaktorisierungEnrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 11 / 221

  • Einführung

    Geschichtliches

    Landauer (1961)

    Nur unumkehrbare (irreversible) logische Operationen verursachen einenEnergieverlust (Dissipation). Dies ist beim Quantencomputer vonbesonderer Wichtigkeit, da hier nur reversible Operationen zulässigsind.Im Prinzip können umkehrbare Berechnungen ohne Energieverlustdargestellt werden.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 12 / 221

  • Einführung

    Moor’sches Gesetz (1975)

    Die Zahl der Transistoren pro Fläche verdoppelt sich alle 2 Jahre, wennman die Linie in Abb.2 extrapoliert. D.h.: im Jahre 2020 würde ein Bitdurch ein einzelnes Atom beschrieben.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 13 / 221

  • Einführung

    Anz

    ahl d

    er A

    tom

    e in

    ein

    em B

    it

    Jahr

    DAS MOOR'SCHE GESETZ

    1960 1970 1980 1990 2000 2010 2020

    0.1

    1000

    107

    1011

    1015

    1019

    ?Quantenmechanisches Regime

    Abbildung: Das Moor’sche Gesetz

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 14 / 221

  • Einführung

    Benioff,Feynman (1982)

    Erste Idee eines Quantencomputers: ein System, dasquantenmechanische Bits kontrolliert, um komplexequantenmechanische Systeme zu simulieren.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 15 / 221

  • Einführung

    Physikalische Quantensysteme (z.B.: ein Festkörper) können im Prinzipdurch klassische Rechner simuliert werden, jedoch nur sehr ineffizient.Da der Hilbertraum sehr groß ist , wächst der Bedarf an Speicherplatzund Rechenzeit exponentiell mit der Systemgröße an.Feynman: Die Positive Seite ist aber, dass genau aus diesem Grundkönnen quantenmechanische -Systeme exponentiell mehr Informationspeichern und verarbeiten.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 16 / 221

  • Einführung

    Deutsch (1989)

    Erste einfache quanten-logische Schaltung, somit erster Entwurf einespraktischen Quantencomputer.

    Shor (1994)

    Formulierte den ersten Algorithmus, der durch einen QC exponentiellschneller durchgeführt werden kann, als mit einem klassischen Rechner,nämlich die Faktorisierung grosser Zahlen (siehe Kap.9.1).

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 17 / 221

  • Einführung

    Cirac und Zoller (1995,Innsbruck) -Monroe et al. (1995,Boulder)

    Erster Vorschlag (Cirac+Zoller) und Realisierung (Monroe et al) einer2-Quantenbit Schaltung durch Berillium+-Ionen in einer Falle.

    Turchette (1995,Caltech)

    Ebenfalls Realisierung einer 2-Quantenbit Schaltung mit polarisiertenPhotonen

    Shor, Steane (1996)

    Erste Vorschläge, wie man Fehler in QC korrigieren kann.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 18 / 221

  • Einführung

    Struktur und Gliederung der Vorlesung

    Klassische vs. Quantenlogik

    Klassische Computer: Datenspeicherung und -verarbeitungBits, Bool’sche Schaltungen (Gates), Netzwerke etc.

    Die Sprache der Quantenmechanik Dirac’sche Darstellung für klassischeZustände und logische Operatoren.

    IrreversibilitätNichtumkehrbarkeit von Operationen und somit Entropiezuwachs

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 19 / 221

  • Einführung

    Fundamentale Gesetze der Quantenmechanik

    SuperpositionsprinzipEin QM Zustand besteht aus einer Überlagerung mehrerer (klassischen)Zuständen: somit kann dieser prinzipiell eine größere Menge vonInformation gleichzeitig speichern und bearbeiten.z.B. Elektron mit Spin polarisiert in x-Richtung (~ = 1):|Sx = +1/2 >= |Sz = +1/2 > +|Sz = −1/2 >.N Elektronen können prinzipiell gleichzeitig 2N Konfigurationenspeichern.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 20 / 221

  • Einführung

    MessprinzipUnschärferelation: es ist unmöglich einen Quantenzustand komplett zubestimmen. Eine Messung beeinflusst (und zerstört) immer denQuantenzustand.Konsequenz: die Superposition mehrerer Zustände kann nicht beobachtetwerden. Wenn man z.B den Spin Sz eines Teilchen misst, bekommt manentweder +1,oder -1. Die restliche Information wird zerstört.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 21 / 221

  • Einführung

    InterferenzWas ein Quantencomputer wirklich ausnutzen kann.Ein Quantenalgorithmus muß die INTERFERENZ geschickt ausnutzen.Das ist die Herausforderung der (theoretischen) Quanteninformatik.Man kann das nicht für alle numerische Fragen tun.In dieser Vorlesung werden wir sehen, welche diese Fragen sind, und wieman die Interferenz ausnutzen kann, um schnellere Algorithmen zuerzeugen.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 22 / 221

  • Einführung

    VerschränkungZwei getrennte Systeme, die in der Vergangenheit wechselgewirkt haben,können gemeinsame Information enthalten, die nicht lokal zugänglich ist.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 23 / 221

  • Einführung

    Quantenalgorithmen

    Fundamentale FrageWie nutzt man die quantenmechanische -Gesetze, um schnellereAlgorithmen zu machen?

    Was heißt schneller?Konzept der Rechenkomplexität

    Einige algorithmen:Suche in Datenbanken (Grover), Faktorisierung (Shor),. . .

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 24 / 221

  • Einführung

    weitere Anwendungen:

    Perkeft sichere Datenübertragung (Cryptographye)

    Simulierung quantenmechanischer Systeme: Forschung inFestkörperphysik, Teilchenphysik ..

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 25 / 221

  • Einführung

    Physikalische Realisierung (Hardware)

    Verschiedene Möglichkeiten der RealisierungIonen in einer Ionenfalle, Quantum Dots, Photonen in einemHohlraumresonator, Otisches Gitter (Bose-Einstein Kondensation),Supraleiter, Nuclear Magnetic Resonance etc.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 26 / 221

  • Einführung

    Wie werden Fehler korrigiert

    Die wichtigsten Fehlerz.B.: Wechselwirkung mit der Umgebung (Dekohärenz), Phasenfehler,Störung durch Messung, etc.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 27 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Was bedeutet schnellere Algorithmen ?

    (Algorithmenkomplexität)Alles kann man im Prizip berechnen, (z.B. Zeitentwicklung einesQuantenmechanisches Systems) aber mit welchem Aufwand (Zeit).Hängt natürlich von der Geschwindigkeit des Computers ab.Trotzdem kann man eine Definition angeben von schnellen (berechenbaren)oder langsamen (unberechenbaren) Algorithmen (oder entsprechenderProbleme) die nicht von der Maschine abhängt:1

    1Für berechenbar verwendet man auch die Bezeichnung”effizientünd für unberechenbar

    ”ineffizient“

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 28 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Ein Algorithmus ist berechenbar, wenn die Rechenzeit (T : Anzahl derelementaren Rechenschritte) nicht schneller als ein Polynom der Größe desInputs wächst (Schwierigkeitsklasse “P”)L = Größe des Inputs = Anzahl von Bits == Anzahl von Binärstellen (oderDezimalstellen)Beispiel: T ∼ L3

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 29 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Ein Algorithmus ist berechenbar, wenn die Rechenzeit (T : Anzahl derelementaren Rechenschritte) nicht schneller als ein Polynom der Größe desInputs wächst (Schwierigkeitsklasse “P”)L = Größe des Inputs = Anzahl von Bits == Anzahl von Binärstellen (oderDezimalstellen)Beispiel: T ∼ L3Algorithmen, deren T schneller als jedes Polynom von L wächst sindUNBERECHENBAR (Schwierigkeitsklasse “N” oder

    ”NP“)

    z.B. exponentiell T ∼ expL aber auch T ∼ exp(L1/2) (subexponentiell).

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 29 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Church und Turing Vermutung (1936):Diese Klassendefinition ist universell: hängt nicht von der Maschine ab.Z.B. die Klasse kann mit einer sog.

    ”Turing Maschine“ getestet werden:

    einfachste Maschine die nur eine Einzeloperation pro Schritt machen undspeichern kann.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 30 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    PN Probleme:Das sind Probleme, die (nach der obigen Definition) UNBERECHENBARsind, aber gegeben einen Ansatz für die Lösung, kann diese inPOLYNOMIALER Zeit getestet werden.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 31 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    PN Probleme:Das sind Probleme, die (nach der obigen Definition) UNBERECHENBARsind, aber gegeben einen Ansatz für die Lösung, kann diese inPOLYNOMIALER Zeit getestet werden.Wichtiger Beispiel (auch für Quantencomputers): FAKTORISIERUNG:gegeben n, Finde a,b, so daß a× b = n (angenommen wir wissen, dass esnur zwei Faktoren gibt, n, a, b ganzzahlig)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 31 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Für die Multiplikation gilt T ∼ L2.Am besten sieht man das mit Hilfe eines Beispiels:

    1 2 3 ×4 5 6

    7 3 86 1 5

    4 9 2

    · · · · · · · · · · · ·

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 32 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Für die Multiplikation gilt T ∼ L2.Am besten sieht man das mit Hilfe eines Beispiels:

    1 2 3 ×4 5 6

    7 3 86 1 5

    4 9 2

    · · · · · · · · · · · ·Der “Hauptteil” besteht aus L2 Multiplikationen einzelner Dezimalstellen.

    Die Summe und die Restübertragung ändern den L2 Verhalten von T nicht.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 32 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Einfachter Algorithmus zur Faktoriesierung von n: Man versucht n durchalle Zahlen zwischen 2 und

    √n = 2L zu dividieren, bis man einen Faktor

    gefunden hat. Für diesen Algorithmus T 2L/2 ∗ L2, also EXPONENTIELL

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 33 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Einfachter Algorithmus zur Faktoriesierung von n: Man versucht n durchalle Zahlen zwischen 2 und

    √n = 2L zu dividieren, bis man einen Faktor

    gefunden hat. Für diesen Algorithmus T 2L/2 ∗ L2, also EXPONENTIELLDer beste Algorithmus ist nicht wesentlich besser:T ∼ exp[L1/3(logL)2/3].

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 33 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Beispiel:

    Dezimalstellen Faktorisierung/[Jahre] mit Quantencomputer/[Jahre]

    log102 ·L eαL13 (log L)

    23 ) ∝ L3

    20 10−5 0.0650 0.05 1

    100 151 8

    129 5000 17

    150 60000 27

    300 19 · 109 216

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 34 / 221

  • Einführung Was bedeutet schnellere Algorithmen ?

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 35 / 221

  • Einführung Exkurs: warum ist die Faktorisierung interessant?

    Exkurs: warum ist die Faktorisierung interessant?

    Cryptographye:Der Spion A will geheime Informationen an B übertragen, über einunsicheres (oder sogar öffentliches) Kanal (z.B. , Radio, Internet, ..)Standardmethoden:A und B einigen sich vorher über einen Schlüssel (Das trivialste - abereinfach zu knacken - ist eine Permutation der Buchstaben. Die sog.. 1-PadMethoden stellen eine Verbesserung dieser Methode dar).

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 36 / 221

  • Einführung Exkurs: warum ist die Faktorisierung interessant?

    Nachteile:1) Der Schlüssel muss unbedingt über ein sicheres Kanal übertragen werden(z.B., A und B treffen sich vorher)2) A kann erwischt werden, oder unzuverlässig sein oder sein Kode gestohlenwerdenBeide methoden sind schlecht für z.B. Internet

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 37 / 221

  • Einführung Exkurs: warum ist die Faktorisierung interessant?

    Lösung: Public Key Cryptography(oder RSA von den Namen der Erfindern, Rivest,Shamir,Adleman). Wird in Internet bei Verschlüsselten Verbindungen benutzt:z.B. bei Kontoführung oder Bezahlung mit Kreditkarte, usw. oder sshprotocol zur login in einer remoten Machine

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 38 / 221

  • Einführung Exkurs: warum ist die Faktorisierung interessant?

    Lösung: Public Key Cryptography(oder RSA von den Namen der Erfindern, Rivest,Shamir,Adleman). Wird in Internet bei Verschlüsselten Verbindungen benutzt:z.B. bei Kontoführung oder Bezahlung mit Kreditkarte, usw. oder sshprotocol zur login in einer remoten MachineWie der Name sagt ist der Schlüssel Öffentlich, d.h. jeder kennt ihn. Jederkann mit diesem Schlüssel eine verschlüsselte Nachricht herstellen nur Bkann aber die Nachricht entschlüsseln

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 38 / 221

  • Einführung Exkurs: warum ist die Faktorisierung interessant?

    Lösung: Public Key Cryptography(oder RSA von den Namen der Erfindern, Rivest,Shamir,Adleman). Wird in Internet bei Verschlüsselten Verbindungen benutzt:z.B. bei Kontoführung oder Bezahlung mit Kreditkarte, usw. oder sshprotocol zur login in einer remoten MachineWie der Name sagt ist der Schlüssel Öffentlich, d.h. jeder kennt ihn. Jederkann mit diesem Schlüssel eine verschlüsselte Nachricht herstellen nur Bkann aber die Nachricht entschlüsselnWie funktioniert das?Siehe Preskill’s lecture notes, Sec. 6.10.2 :http://www.theory.caltech.edu/people/preskill/ph229/notes/chap6.ps

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 38 / 221

  • Einführung Exkurs: warum ist die Faktorisierung interessant?

    RSAM Codierung

    Kann nur mit Kenntnis der Faktoren P und Q

    dekodiert werden !

    P x Q = MBank(P,Q Primzahlen)Internet

    M

    RSA Kryptographie

    Rechenzeit zur Faktorisierung von M

    1/3~ exp L ~ L3

    (Shor 94)

    DezimalStellen

    Quanten− Algor."Klassischer" Algor.

    150 Tage 2.5 Stunden100

    300 6 Millionen Jahre 2.5 Tage

    L

    (1 GHz Rechengeschw.) (1 MHz)

    Rechenschritte Rechenschritte

    xf(x) = Y mod MPeriode der Funktion

    Suche derZeitaufwendigster Schritt :

    Warum?

    (z.B. mit 300 Dezimalstellen )MQuantenalgorithmus: Faktorisierung einer riesigen Zahl

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 39 / 221

  • Klassische Logik und klassische Rechnung

    1. Einführung

    2. Klassische Logik und klassische RechnungVom elementaren Prozess zur (komplizierten) FunktionElementare Operationen (B) sind die Boolsche OperatorenBeispiel für die Realisierung einer Funktion (C) durch Boolsche OperatorenUniversalitätDirac-Darstellung für klassische ZuständeDarstellung von logischen Operatoren in Dirac-Schreibweise

    3. Konzepte der Quantenmechanik

    4. QuantenBits - QUBITS

    5. Erste Quantenalgorithmen

    6. Einige Physikalische RealisierungenEnrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 40 / 221

  • Klassische Logik und klassische Rechnung

    Information wird in Einheiten von Bits dargestellt:

    b =

    {

    0 (nein)

    1 (ja)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 41 / 221

  • Klassische Logik und klassische Rechnung

    Information wird in Einheiten von Bits dargestellt:

    b =

    {

    0 (nein)

    1 (ja)

    Bits müssen physikalisch dargestellt werden können, z.B.:

    Zwei weit entfernte Ströme oder Spannungen in elektrischenSchaltungen

    Zwei in verschiedene Richtungen magnetisierte Bereiche

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 41 / 221

  • Klassische Logik und klassische Rechnung

    Bits müssen prinzipiell beliebig kopierbar und dauerhaft sein. KomplizierteInformation kann, in binärer Schreibweise, als Reihe von Bits dargestelltwerden.z.B.:

    6=110 , 7=111 ,”a”=100 ,”b”=101Eine Gruppierung von L Bits nennen wir ein Register. Dieses kann in binärerKodierung 2L Werte darstellen.Es erhebt sich nun die Frage: Können andere Schemen besser sein?

    Unär =⇒ 1,11,111 : Speicher wächst exponentiellTrinär,usw =⇒ können binär effizient dargestellt werden

    Um Rechnungen durchführen zu können muß man beliebige Funktionen anRegister anwenden können

    R′

    = f(R1, R2, ...)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 42 / 221

  • Klassische Logik und klassische Rechnung

    z.B. für Bits:

    b′= f1(b) 1 Bit −→ 4 unterschiedliche Funktionen

    b′= f2(b1, b2) 2 Bits −→ 16 unterschiedliche Funktionen

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 43 / 221

  • Klassische Logik und klassische Rechnung

    Vom elementaren Prozess zur (komplizierten)

    Funktion

    Man möchte beliebig komplizierte Funktionen als ”Netzwerk”elementarerOperatoren ausdrücken. Das ist auch das Ziel eines Quantencomputers.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 44 / 221

  • Klassische Logik und klassische Rechnung

    IDEE

    (A) Implementierbare physikalische Bauelemente(z.B.: elektrische Kreise mit MOS-Fet’s)⇓

    (B) Netzwerk elementarer OperatorenBoolsche Operatoren(bilden einen universellen Satz)⇓

    (C) beliebig komplizierte Funktion

    Beispiel: Addition als “Netzwerk” elementarer Operationen

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 45 / 221

  • Klassische Logik und klassische Rechnung

    Elementare Operationen (B) sind die Boolsche

    Operatoren

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 46 / 221

  • Klassische Logik und klassische Rechnung

    Not

    .

    bb0−→11−→0

    And

    .

    b

    b b b1

    2

    1 2

    0 00 11 0

    −→ 0

    1 1 −→ 1

    Or

    .

    b1

    2

    1 2b

    b

    b0 0 −→ 0

    0 11 01 1

    −→ 1

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 47 / 221

  • Klassische Logik und klassische Rechnung

    Beispiel für die Realisierung einer Funktion (C)

    durch Boolsche Operatoren

    Z.B. Addition

    Man benötigt zwei Input Register

    A = A3 A2 A1B = B3 B2 B1

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 48 / 221

  • Klassische Logik und klassische Rechnung

    ein Übertrag- und ein Output-Register:

    R4 R3 R2 R1 = 0 ..... Übertrag der vorigen BitsS4 S3 S2 S1 ..... Summe

    Man braucht zunächst die bit-sum (mod 2) Funktion:(a+ b)mod2 = (a⊕ b) · (a · b)Dann haben wir für die einzelnen Bits der Summe und des Übertrags:Si = ((Ai +Bi)mod2 +Ri)mod2 ..... SummeRi+1 = [(Ai ·Bi)⊕ (Ai ·Ri)]⊕ (Bi ·Ri) = Int(Ai+Bi+Ri2 ) ..... Übertrag

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 49 / 221

  • Klassische Logik und klassische Rechnung

    Bsp:

    A = 1 1 1 B = 0 1 1

    R2 = [(A1 · B1)︸ ︷︷ ︸

    1

    ⊕ (A1 ·R1)︸ ︷︷ ︸

    0︸ ︷︷ ︸

    1

    ]⊕ (B1 · R1︸ ︷︷ ︸

    0

    ) = 1

    Ergebnis:

    A = 1 1 1 B = 0 1 1R = 1 1 1 0 S = 1 0 1 0

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 50 / 221

  • Klassische Logik und klassische Rechnung

    Netzwerk zur Realisierung der bit-sum-Funktion

    mod2

    a

    b

    NAND

    (a+b)

    Nand = And-Not

    =

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 51 / 221

  • Klassische Logik und klassische Rechnung

    Universalität

    Boolsche Operatoren können als Netzwerk anderer Operatoren aufgebautwerden.Mit Nand können alle Boolschen Operatoren gebildet werden.D.h.: Nand ist ein universelles Logikelement.

    Not Not(a) = a =⇒ a = Nand(a, a)And a · b =⇒ Nand(a, b)Or a⊕ b =⇒ Nand(a, b)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 52 / 221

  • Klassische Logik und klassische Rechnung

    MosfetGatter (Gate)

    +V

    Senke (Drain)

    Quelle (Source)

    Vs=0

    +VgStrom fließt also nur wenn

    VG > Vkrit ≈ 1V olt

    Für Bits gilt:Vi > 2V −→ 1Vi 6 0.8V−→ 0

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 53 / 221

  • Klassische Logik und klassische Rechnung

    Not(b)

    b

    V

    (Output)

    R

    (Input)

    b

    Nand(b)

    R

    V

    (Output)

    a

    b

    Nand(a,b)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 54 / 221

  • Klassische Logik und klassische Rechnung

    Dirac-Darstellung für klassische Zustände

    1-Bit Zustände

    Zustand(Basis): |0〉 |1〉︸ ︷︷ ︸

    Bits

    |2〉 ...

    Klassischer Zustand kann nur ein Basiselement sein, z.B.:|Ψ〉 = |1〉 ”Ket”-Vektor〈Ψ| = 〈1| ”Bra”-Vektor

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 55 / 221

  • Klassische Logik und klassische Rechnung

    Skalarprodukt:

    〈0|1〉 = 0

    〈1|1〉 = 1

    〈m|n〉 = δm,n

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 56 / 221

  • Klassische Logik und klassische Rechnung

    2-Bit Zustände

    Basis |00〉 |01〉 |10〉 |11〉 ”Ket”-Vektor〈00| 〈01| 〈10| 〈11| ”Bra”-Vektor

    Skalarprodukt:

    〈01|01〉 = 1〈01|10〉 = 0〈01|11〉 = 0

    usw.

    〈mn|m′n′〉 = δm,m′ δn,n′

    Bemerkung: N-Bit Zustände kann man auch dezimal darstellen:

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 57 / 221

  • Klassische Logik und klassische Rechnung

    |0, 0〉 = |010〉|0, 1〉 = |110〉|1, 0〉 = |210〉|1, 1〉 = |310〉

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 58 / 221

  • Klassische Logik und klassische Rechnung

    Darstellung von logischen Operatoren in

    Dirac-Schreibweise

    1-Bit Operatoren:

    χ︸︷︷︸

    Operator

    = X00︸︷︷︸

    Koeffizient

    |0〉〈0| +X01|0〉〈1| +X10|1〉〈0| +X11|1〉〈1|

    Anwendung an einem Zustand:

    χ|Ψ〉 .... χ angewandt auf Ψfür |Ψ〉 = |1〉

    χ|1〉 = X00|0〉 〈0|1〉︸︷︷︸

    0

    +X01|0〉 〈1|1〉︸︷︷︸

    1

    +X10|1〉 〈0|1〉︸︷︷︸

    0

    +X11|1〉 〈1|1〉︸︷︷︸

    1

    = X01|0〉+X11|1〉Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 59 / 221

  • Klassische Logik und klassische Rechnung

    Not-Operator

    Not = 1 · |1〉〈0| + 1 · |0〉〈1|Beweis: Not|0〉 = |1〉 〈0|0〉

    ︸︷︷︸

    1

    +|0〉 〈1|0〉︸︷︷︸

    0

    = |1〉 (ähnlich für |1〉)Vektor-Matrixdarstellung:

    |0〉 ⇒(

    10

    )

    |1〉 ⇒(

    01

    )

    Dann

    Not =

    (0 11 0

    )

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 60 / 221

  • Klassische Logik und klassische Rechnung

    2-Bit Operatoren:

    And-Operator

    And = |0〉〈00| + |0〉〈01| + |0〉〈10| + |1〉〈11|

    z.B.: And|01〉 =|0〉 〈00|01〉

    ︸ ︷︷ ︸

    0

    +|0〉 〈01|01〉︸ ︷︷ ︸

    1

    +|0〉 〈10|01〉︸ ︷︷ ︸

    0

    +|1〉 〈11|01〉︸ ︷︷ ︸

    0

    = |0〉

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 61 / 221

  • Klassische Logik und klassische Rechnung

    Matrixdarstellung:

    |00〉(= |010〉)

    −→

    1000

    , |01〉

    (= |110〉)−→

    0100

    , |10〉

    (= |210〉)−→

    0010

    ,

    |0〉 −→(

    10

    )

    , |1〉 −→(

    01

    )

    ,

    And =

    (1 1 1 00 0 0 1

    )

    2× 4 matrix

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 62 / 221

  • Klassische Logik und klassische Rechnung

    Or-Operator

    Or = |0〉〈00| + |1〉〈01| + |1〉〈10| + |1〉〈11|

    Beweis: Or|01〉 =|0〉 〈00|01〉

    ︸ ︷︷ ︸

    0

    +|1〉 〈01|01〉︸ ︷︷ ︸

    1

    +|1〉 〈10|01〉︸ ︷︷ ︸

    0

    +|1〉 〈11|01〉︸ ︷︷ ︸

    0

    = |1〉

    Matrixdarstellung:

    Or =

    (1 0 0 00 1 1 1

    )

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 63 / 221

  • Klassische Logik und klassische Rechnung

    Bemerkung:And und Or-Gates sind keine richtige quantenmechanische Operatoren, dadadurch der Hilbertraum reduziert wird. Es sind irreversible operatoren, daman diese nicht invertieren kann.Irreversible Prozesse erhöhen die Entropie, d.h.: es kostet Arbeit auf denAnfangspunkt zurückzukehren.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 64 / 221

  • Konzepte der Quantenmechanik

    1. Einführung

    2. Klassische Logik und klassische Rechnung

    3. Konzepte der QuantenmechanikDer quantenmechanische Zustand - Dirac DarstellungDie MessungZeitentwicklung

    4. QuantenBits - QUBITS

    5. Erste Quantenalgorithmen

    6. Einige Physikalische Realisierungen

    7. Faktorisierung

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 65 / 221

  • Konzepte der Quantenmechanik

    Der Zustand |Ψ〉 beschreibt ein physikalisches System vollständig (”Strahl”im Hilbertraum).

    a) Vektorraum über die komplexen Zahlen C bezeichnet durch |Ψ〉b) Es existiert ein inneres Produkt 〈Ψ| • |Ψ〉 in C mit allen Eigenschaften

    des Skalarproduktes

    Positivität 〈Ψ|Ψ〉 > 0 (für |Ψ〉 6= 0)Linearität 〈Φ| • (a|Ψ1〉+ b|Ψ〉) = a〈Φ|Ψ1〉+ b〈Φ|Ψ2〉Schrägsymmetrie 〈Φ|Ψ〉 = 〈Ψ|Φ〉∗

    c) Vollständigkeit durch die Normierung (kein Problem in endlichenRäumen) ||Ψ|| = 〈Ψ|Ψ〉1/2

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 66 / 221

  • Konzepte der Quantenmechanik

    Der quantenmechanische Zustand - Dirac

    Darstellung

    Der quantenmech. Zustand kann mittels der Diracdarstellung dargestelltwerden:”KET-Vektor” |Ψ〉 = a0|0〉+ a1|1〉 + a2|2〉+ . . .”BRA-Vektor” 〈Ψ| = a∗0〈0| + a∗1〈1|+ a∗2〈2|+ . . .Die Basis ist hierbei {|0〉, |1〉, |2〉, . . .}. Zum Beispiel wäre die notwendigeBasis, um 1 Bit darzustellen {|0〉, |1〉} (Dies entspricht z.B. Spin up bzw.Spin down)Das Skalarprodukt der Vektoren |Ψ〉 = a0|0〉+ a1|1〉 + . . . und|Φ〉 = b0|0〉+ b1|1〉+ . . . wäre dann, unter Berücksichtigung von〈m|n〉 = δm,n,

    〈Ψ|Φ〉 = a∗0b0〈0|0〉+a∗1b0〈1|0〉+. . .+a∗0b1〈0|1〉+a∗1b1〈1|1〉+. . . = a∗0b0+a∗1b1+. .

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 67 / 221

  • Konzepte der Quantenmechanik

    Starten wir mit einem zweidimensionalen RaumOperatoren werden geschrieben als:

    X = X00|0〉〈0| +X01|0〉〈1| +X10|1〉〈0| +X11|1〉〈1|

    Die Anwendung auf einen Zustand |Ψ〉 ergibt

    X|Ψ〉 = X00a0|0〉〈0|0〉 +X00a1|0〉〈0|1〉 +X01a0|0〉〈1|0〉 +X01a1|0〉〈1|1〉 + . .. . .+X10a0|1〉〈0|0〉 +X11a1|1〉〈1|1〉 =(X00a0 +X01a1)|0〉+ (X10a0 +X11a1)|1〉

    (1)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 68 / 221

  • Konzepte der Quantenmechanik

    Für Hilberträume endlicher Dimensionen (unser Fall) kann man eineDarstellung mittels Zeilenvektoren (Bra), Spaltenvektoren (Ket) bzw.Matrizen (Operatoren) verwenden:

    Basis:

    |0〉 |1〉 · · · |n〉m m

    100· · ·

    010· · ·

    0· · ·· · ·1

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 69 / 221

  • Konzepte der Quantenmechanik

    Ket:

    |a〉 ≡ a0 |0〉+ a1 |1〉+ · · · an |n〉

    a0a1· · ·an

    Bra:

    〈a| ⇔ (a∗0, a∗1, · · · , a∗n)Skalarprodukt:

    〈b |a〉 ⇔ (b∗0, b∗1, · · · , b∗n) ·

    a0a1· · ·an

    = b∗0 a0 + b∗1 a1 + · · ·+ b∗n an

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 70 / 221

  • Konzepte der Quantenmechanik

    Normierungc|Ψ〉 beschreibt den selben Zustand wie |Ψ〉. Mit Hilfe der Normierung kannman diese Vielfalt etwas reduzieren:

    |Ψ̄〉 = |Ψ〉√〈Ψ|Ψ〉

    ⇒ 〈Ψ̄|Ψ̄〉 = 1

    Allerdings auch eiφ|Ψ̄〉 ist normiert, wobei die Phase undefiniert bleibt.Erst durch die Linearkombination zweier Zustände wird die relative Phasewichtig.

    |Ψ〉 = (eiφ1 |Ψ1〉+ eiφ2 |Ψ2〉)〈Ψ|Ψ〉 = (e−iφ1〈Ψ1|+ e−iφ2〈Ψ2|) · (eiφ1 |Ψ1〉+ eiφ2 |Ψ2〉)

    = 〈Ψ1|Ψ1〉+ 〈Ψ2|Ψ2〉+ei(φ1−φ2)〈Ψ2|Ψ1〉+ e−i(φ1−φ2)〈Ψ1|Ψ2〉︸ ︷︷ ︸

    Interferenz

    (2)

    Die Interferenzterme, welche die relative Phase beinhalten, können gemessenwerden. Diese Terme sind wichtig für Quanten-Computer.Beispiel, Spin polarisiert in x oder y-Richtung:

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 71 / 221

  • Konzepte der Quantenmechanik

    | →〉 ≡ |Sx; +〉 = 1√2(| ↑〉+ | ↓〉) ei0 = +1

    | ←〉 ≡ |Sx;−〉 = 1√2(| ↑〉 − | ↓〉) eiπ = −1

    |Sy; +〉 = 1√2(| ↑〉+ i| ↓〉) eiπ/2 = +i

    |Sy;−〉 = 1√2(| ↑〉 − i| ↓〉) ei3π/2 = −i

    Es ist die Relative Phase, welche die Orientierung der Spins kontrolliert.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 72 / 221

  • Konzepte der Quantenmechanik

    ObservableObservablen entsprechen physikalischen Grössen, die im Prinzip gemessenwerden können. Diese werden mittels Hermitescher Operatoren  dargestellt

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 73 / 221

  • Konzepte der Quantenmechanik

    a)Operator:ist eine lineare Transformation von Zuständen, z.B.:Â|Ψ〉 = Â(a|Ψ1〉+ b|Ψ2〉) = aÂ|Ψ1〉+ bÂ|Ψ2〉Operatoren in endlich dimensionalen Hilberträumen können als Matrizen

    dargestellt werden z.B.: Â =

    (a bc d

    )

    b) Hermitesch:

    bedeutet, dass die Eigenschaft † = (̂AT )∗ =  gilt.

    † ≡(a∗ c∗

    b∗ d∗

    )

    also für eine hermitesche Matrix: a, d sind reell und b = c∗.

    c) Spektraldarstellung:Die Eigenzustände eines Hermiteschen Operators  bilden einevollständige Basis , d.h. sie haben einen vollständig orthonormalen Satzvon Eigenvektoren |An〉 mit reellen Eigenwerten an. Die letztenentsprechen den physikalisch erlaubten Werten der Observablen.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 74 / 221

  • Konzepte der Quantenmechanik

    Die Eigenwertgleichung lautet

    Â|An〉 = an|An〉

    mit der vollständig orthonormalen Basis {|An〉;n = 0, 1...}Orthonormal bedeutet dass 〈An|Am〉 = δn,m.Vollständig bedeutet dass jeder beliebiger Zustand in dieser Basisentwickelt werden kann: |Ψ〉 = ∑n cn|An〉.Sehr nützlich ist folgende Darstellung des Identitätoperators I mit Hilfevollständig orthonormierter Basen (wir benutzen hier unterschiedlicheBasen {|An〉} oder {|Bn〉} oder {|n〉})

    I =∑

    n

    |An〉〈An| =∑

    n

    |Bn〉〈Bn| =∑

    n

    |n〉〈n|

    Mit Hilfe dieser Darstellung kommt man zu einer weiterenDarstellungsform eines Operators (Spektraldarstellung):

    Â = I Â I =∑

    n,m

    |An〉 〈An|Â|Am〉︸ ︷︷ ︸

    anδnm

    〈Am| =∑

    n

    an|An〉〈An|

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 75 / 221

  • Konzepte der Quantenmechanik

    Die Messung

    Die Messung eines Observablen  ergibt im Allgemeinen ein nichtdeterministisches Ergebnis.Wird  in einem Zustand Ψ gemessen, wobei|Ψ〉 = ∑n Ψn |An〉die Entwicklung von Ψ in Eigenzuständen von  ist, kann das Ergebnis derMessung einer der Werten an Liefern.Die Wahrscheinlichkeit, dass an gemessen wird ist

    W (an) =|Ψn|2〈Ψ |Ψ〉

    (oder einfach |Ψn|2 im Fall eines normierten Zustandes).Die Messung ändert den Zustand |Ψ〉: dieser

    ”kollabiert“ auf den

    entsprechenden Eigenzustand |An〉.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 76 / 221

  • Konzepte der Quantenmechanik

    |Ψ〉 ← Messung(Â)←{

    Endzustand: |An〉Ergebnis der Messung: an

    Wahrsch.:|Ψn|2〈Ψ |Ψ〉

    Beispiel: Spinmessung in einer Stern-Gerlach-ApparaturAnfangzustand |Ψx〉 = |Sx; +〉 = 1√2 (|Sz; +

    ~

    2 〉+ |Sz;−~2 〉)Messung von Ŝz ergibt mit einer Wahrscheinlichkeit von 1/2 den Wert +

    ~

    2 .Die Messung verändert den Zustand: |Ψx〉 → |Sz; +~2 〉. Mit der selbenWahrscheinlichkeit bekommt man den Wert −~2 (und |Ψx〉 → |Sz;−~2 〉).Eine zweite Messung von Ŝz mit einer nachgeschaltetenStern-Gerlach-Apparatur würde, wenn zuvor +~2 gemessen wurde, mit einerWahrscheinlichkeit von 1 den selben Zustand messen.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 77 / 221

  • Konzepte der Quantenmechanik

    Man kann von einem Erwartungswert (Mittelwert) sprechen, wenn manmehrere Messungen des selben Zustandes durchführt. Dies ist auch dieübliche Vorgangsweise in einem Experiment, wo man mehrere “Kopien”desselben Zustandes hat.Dieser Fall ist in einem Quantencomputer in der Regel nicht relevant. Hierhat man normalerweise am Ende der Rechnung nur eine Kopie einesZustandes. Da man aber in der Quantemechanik einen Zustand nichtkopieren kann, ist für den Quantencomputer der Erwartungswert nichtrelevant.

    Observable: Ŝz =~

    2(|Sz; +〉〈Sz ; +| − |Sz;−〉〈Sz;−|)

    Erwartungswert: 〈Ψx|Ŝz|Ψx〉 = 〈Ψx|~

    2(|Sz; +〉 − |Sz;−〉) =

    ~

    2(〈Sz; +|Sz; +〉 − 〈Sz;−|Sz;−〉) = 0

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 78 / 221

  • Konzepte der Quantenmechanik

    Abbildung: Schematische Darstellung einer Stern-Gerlach-Apparatur

    Aus der Linearität von QM Zustände folgt die Möglichkeit des QUBITS.Beispiel: Spin eines Elektrons (Atoms)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 79 / 221

  • Konzepte der Quantenmechanik

    Für einen klassischen Computer stehen nur zwei Mölichkeiten für die Bits(0, 1) zur Verfügung. Wir könnten solche Bits durch die zwei Spinrichtungendarstellen:

    0→ +~2

    → |0〉 ≡ |Sz; +~

    2〉

    1→ −~2

    → |1〉 ≡ |Sz;−~

    2〉

    Der Vorteil besteht darin, dass man quantenmechanisch viel mehr Speichernkann, im Prinzip jede beliebige Überlagerung a|0〉 + b|1〉. Diese speichertzwei klassische bits gleichzeitig. Das Problem, ist, dass eine Messung immernur einen der beiden Werten ergibt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 80 / 221

  • Konzepte der Quantenmechanik

    Zeitentwicklung

    Die Zeitentwicklung eines quantenmechanischen Zustandes ist unitär und istdurch den hermiteschen Hamiltonoperator Ĥ generiert.SchrödingerbildZur Vereinfachung wird ~ = 1 angenommen:

    d

    dt|Ψ(t)〉 = −iĤ |Ψ(t)〉

    Lösungsansatz: |Ψ(t)〉 = U(t)|Ψ(0)〉

    d

    dtU(t) = −iĤU(t)

    wenn Ĥ zeitunabhängig ist folgt daraus ⇒ U(t) = e−itĤDamit die Norm von |Ψ〉 erhalten bleibt muß der ZeitentwicklungoperatorU(t) unitär sein.

    U(t)U(t)† = e−itĤeitĤ†

    = e−itĤeitĤ = IEnrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 81 / 221

  • Konzepte der Quantenmechanik

    ⇒ 〈Ψ(t)|Ψ(t)〉 = 〈Ψ(0)|U †(t)U(t)|Ψ(0)〉 = 〈Ψ(0)|Ψ(0)〉

    Dies gilt für isolierte Systeme (dynamisch reversibel)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 82 / 221

  • QuantenBits - QUBITS

    1. Einführung

    2. Klassische Logik und klassische Rechnung

    3. Konzepte der Quantenmechanik

    4. QuantenBits - QUBITSGates für ein QuBitZwei-Qubits GatesCONTROLLED NOT - Gate - CNOTEinstein, Podolsky, Rosen (EPR) Paradox (EINSCHUB)Phase-shift GateControlled-U - GateQuanten-Arithmetik

    Auswertung von Funktionen

    QuantenparallelismusZusammenfassung und Überlegungen

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 83 / 221

  • QuantenBits - QUBITS

    Qubits können im Prinzip mit Hilfe eines beliebigen zwei-Niveau Systemrealisiert werden. Dazu gibt es mehrere Möglichkeiten:

    A) Spin12 - Teilchen , z.B. in einem Magnetfeld in die z-Richtung

    |0〉 = |Sz; +〉 = | ↑〉 = |+〉 =(

    10

    )

    |1〉 = |Sz;−〉 = | ↓〉 = |−〉 =(

    01

    )

    B) Photonen - Polarisationszustände

    |0〉 = |Rechtspolarisiert〉|1〉 = |Linkspolarisiert〉

    C) Zwei metastabile Zustände eines Atomsinstabiler Zustand

    |0 ... Grundzustand

    |1 ... metastabilder Zustand

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 84 / 221

  • QuantenBits - QUBITS

    Der Zustand |1〉 muss aureichend langlebig sein, daher kann es keinendirekter Dipolübergang zwischen |0〉 und |1〉 geben.

    Zur Vereinfachung werden wir als Beispiel vorwiegend das Spin12 - Systemverwenden. Wichtige Voraussetzung ist die Möglichkeit, elementareOperationen (die entsprechenden ”Gates”), auf die QuBits anwenden zukönnen. Erlaubte Operationen sind quantenmechanische“Zeitentwicklungen”, also unitäre Transformationen.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 85 / 221

  • QuantenBits - QUBITS

    Gates für ein QuBit

    Einfachstes ”Gates”: NOTDieses entspricht einen SPIN FLIP, welcher durch einen sogenanntenπ-Laserimpuls realisiert werden kann (siehe Sec. 8).

    LaserimpulsLaserimpuls

    Formell:

    σx

    (10

    )

    =

    (01

    )

    bzw. σx

    (10

    )

    =

    (01

    )

    ⇒ σx = NOTDie größte Schwierigkeit hier ist, dass einzelne Atome kontrolliert werdenmüssen. Eine gute Möglichkeit sind QUANTEN DOTS oderIONENFALLEN.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 86 / 221

  • QuantenBits - QUBITS

    Ein neue, rein quantenmechanisches Gate ist derHadamard Gate (H)

    H |↑〉 −→ 1√2

    (|↑〉+ |↓〉) = |→〉

    H |↓〉 −→ 1√2

    (|↑〉 − |↓〉) = − |←〉

    Man kann das auch schreiben:

    H

    (10

    )

    = 1√2

    (11

    )

    ⇒ H|0〉 = 1√2(|0〉 + |1〉)

    H

    (01

    )

    = 1√2

    (1−1

    )

    ⇒ H|1〉 = 1√2(|0〉 − |1〉)

    (3)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 87 / 221

  • QuantenBits - QUBITS

    Ein neue, rein quantenmechanisches Gate ist derHadamard Gate (H)

    H |↑〉 −→ 1√2

    (|↑〉+ |↓〉) = |→〉

    H |↓〉 −→ 1√2

    (|↑〉 − |↓〉) = − |←〉

    Man kann das auch schreiben:

    H

    (10

    )

    = 1√2

    (11

    )

    ⇒ H|0〉 = 1√2(|0〉 + |1〉)

    H

    (01

    )

    = 1√2

    (1−1

    )

    ⇒ H|1〉 = 1√2(|0〉 − |1〉)

    (3)

    H2 = I.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 87 / 221

  • QuantenBits - QUBITS

    Formell kann man H ausdrücken mit Hilfe des Drehoperators.

    R̂(α~n) ≡ eiα~S~n mit Si = 12σi (~ = 1)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 88 / 221

  • QuantenBits - QUBITS

    Formell kann man H ausdrücken mit Hilfe des Drehoperators.

    R̂(α~n) ≡ eiα~S~n mit Si = 12σi (~ = 1)

    R̂(α~n) = eiα

    2~σ·~n = cos

    α

    2+ i~σ · ~n sin α

    2

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 88 / 221

  • QuantenBits - QUBITS

    Formell kann man H ausdrücken mit Hilfe des Drehoperators.

    R̂(α~n) ≡ eiα~S~n mit Si = 12σi (~ = 1)

    R̂(α~n) = eiα

    2~σ·~n = cos

    α

    2+ i~σ · ~n sin α

    2

    “Phasenshift” gefolgt von einer Drehung um −π2 um die y-Achse:

    H = R̂(−π2ŷ)

    (1 00 −1

    )

    =1√2

    (1 −11 1

    )(1 00 −1

    )

    =1√2

    (1 11 −1

    )

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 88 / 221

  • QuantenBits - QUBITS

    Formell kann man H ausdrücken mit Hilfe des Drehoperators.

    R̂(α~n) ≡ eiα~S~n mit Si = 12σi (~ = 1)

    R̂(α~n) = eiα

    2~σ·~n = cos

    α

    2+ i~σ · ~n sin α

    2

    “Phasenshift” gefolgt von einer Drehung um −π2 um die y-Achse:

    H = R̂(−π2ŷ)

    (1 00 −1

    )

    =1√2

    (1 −11 1

    )(1 00 −1

    )

    =1√2

    (1 11 −1

    )

    Beispiel:

    H| ↑〉 = 1√2

    (

    1 11 −1

    )(

    10

    )

    =1√2

    (

    11

    )

    =1√2(| ↑〉+ | ↓〉) = |Sx; +〉

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 88 / 221

  • QuantenBits - QUBITS

    Zwei-Qubits Gates

    Schwieriger wird es, wenn man versucht, ein Gate auf zwei QuBitsanzuwenden. Solche Operationen würden dem klassischen OR, AND etcentsprechen.Es gibt zunächst zwei Schwierigkeiten: Um solche Gate zu erzeugen mussman die Korrelation zwischen den einzelnen Spins “einschalten”.Die andere Schwierigkeit ist, dass AND, OR etc. irreversible Operationensind. In der Quantenmechanik müssen Operationen jedoch reversibel sein, dafür die Zeitentwicklung unitäre Operatoren vorausgesetzt werden.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 89 / 221

  • QuantenBits - QUBITS

    Die Darstellung von mehreren QuBits wird formell als Tensorprodukteinzelner Qubit-Zuständen dargestellt. In der Dirac-Darstellung schreiben wir

    |b1b2〉 oder |b1〉 ⊗ |b2〉 mit bi ∈ {0, 1}

    Das Skalarprodukt ist dann

    〈b1b2|b′1b′2〉 = δb1,b′1δb2,b′2

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 90 / 221

  • QuantenBits - QUBITS

    Beispiel: Wir wollen eine Hadamard-Transformation auf einem zwei-QubitZustand wirken lassen. Da müssen wir festlegen auf welches Qubit diesewirkt. Wir können das mit einem Superscript machen, oder explizit durchAnwendung des Tensorproduktes. z.B. hier wirkt H auf das zweite QuBit:

    H(2) = I⊗H ⇒ H(2)|b1b2〉 = (I⊗H)(|b1〉⊗|b2〉) = I|b1〉⊗(H|b2〉) = |b1(Hb2)〉

    Die Operation”Hadamard auf das zweite Qubit“ bedeutet eigentlich

    ”Identität auf das erste und Hadamard auf das zweite Qubit“.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 91 / 221

  • QuantenBits - QUBITS

    z. B., mit b1 =↑, b2 =↑ und Gleichung (3) folgt

    H(2)| ↑↑〉 = | ↑〉 ⊗ (H| ↑〉) = | ↑〉 ⊗ 1√2(| ↑〉+ | ↓〉) = 1√

    2(| ↑↑〉 + | ↑↓〉)

    Eine übersichtlichere Darstellungsmöglichkeit erfolgt durch ein sogenannteQuanten-Netzwerk

    Endzustand

    12

    H

    Anfangszustand

    0

    0 1

    0

    0

    Netzwerk

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 92 / 221

  • QuantenBits - QUBITS

    CONTROLLED NOT - Gate - CNOT

    Der (I⊗H)-Gate wirkt unabhängig auf die zwei Qubits. In diesem Sinne istdieser kein echtes zwei-Qubit Gate.Ein echtes (korreliertes) zwei-Qubit Gate ist der Controlled NOT (CNOT ).Seine Wirkung lautet

    ”wende auf den zweiten QuBit NOT an, nur dann

    wenn der erste QuBit 1 ist, ansonsten tue nichts“.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 93 / 221

  • QuantenBits - QUBITS

    Formell kann man CNOT mit Hilfe von Projektoren schreiben:

    P0 =12(I + σz) =

    (1 00 0

    )

    ⇒ Projektor auf |0〉

    P1 =12(I− σz) =

    (0 00 1

    )

    ⇒ Projektor auf |1〉

    Dann ist

    CNOT = P(1)1 NOT

    (2) +P(1)0 I

    (2) oder besser: P1⊗NOT +P0⊗ I

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 94 / 221

  • QuantenBits - QUBITS

    Beispiel

    CNOT |1 b〉 = CNOT |1〉⊗|b〉 = P1|1〉⊗NOT |b〉+P0|1〉⊗I|b〉 = |1〉⊗|b̄〉 = |1 b̄〉

    Man kann leicht zeigen, dass im allgemeinenCNOT |b1 b2〉 = |b1 (b1 + b2)mod2〉.In einem Quanten-Netzwerk wird der CNOT Gate wie unten dargestellt, wasdie

    ”Kontrolle“ des ersten Qubits auf dem zweiten deutlich macht.

    MOD 2

    X X

    Y Y X

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 95 / 221

  • QuantenBits - QUBITS

    Der CNOT -Gate tauscht einfach |10〉 mit |11〉. Seine Matrixdarstellung istalso relativ einfach:

    CNOT =

    (I2×2 O2×2O2×2 σx

    )

    =

    1 0 0 00 1 0 00 0 0 10 0 1 0

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 96 / 221

  • QuantenBits - QUBITS

    Beispiel Betrachten wir die Anwendung folgendes Netzwerkes auf demZustand |0 0〉:

    H

    ⇒ CNOT (H ⊗ I)|00〉 = CNOT1√2(|0〉 + |1〉)|0〉 = 1√

    2(|00〉 + |11〉)

    Der Endzustand ist ein sog. Verschränkter Zustand, was eine wichtigeRolle in der Quanteninformatik spielt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 97 / 221

  • QuantenBits - QUBITS

    Ein Verschränkter Zustand:

    kann nicht als Produktzustand von zwei Teilchen geschrieben werden

    Getrennte auch wiederholte Messung an den einzelnen Teilchen könnenden Zustand nicht aufschlüsseln

    kann nur durch Wechselwirkung zwischen Teilchen (CNOT ) entstehen.Diese Wechselwirkung kann aber auch in der Vergangenheitstatgefunden haben.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 98 / 221

  • QuantenBits - QUBITS

    Einstein, Podolsky, Rosen (EPR) Paradox

    (EINSCHUB)

    Verschränkte Zustande spielen eine besondere Rolle und führen manchmal zuParadoxen, wie der berümte EPR ParadoxAus dem Zerfall eines S = 0 Teilchens in zwei Spin-12 Teilchen entstehenzwei Teilchen (A und B) mit entgegengesetztem Spin. Da der Gesamtspinerhalten ist, müssen die Zustände von A und B so kombiniert sein, dass derGesamtspin 0 bleibt (Addition der Drehimpulse). Dieser Zustand istverschränkt.

    |S = 0〉 = 1√2(| ↑↓〉 − | ↓↑〉)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 99 / 221

  • QuantenBits - QUBITS

    Man kann leicht zeigen, dass der Zustand die gleiche Form hat, wenn mandie x-Richtung als Quantisierungsachse wählt.

    |S = 0〉 ∝ 1√2(| →←〉 − | ←→〉) (4)

    Der Zustand von A und B alleine ist nicht wohl definiert, bis eine Messunggemacht wird. Das gilt im Prinzip auch, wenn die Zerfallteilchen ein weitenWeg zurückgelegt haben, und weit voneinander sind (das gilt nur wenn dieTeilchen nicht mit der Umgebung wechselwirkt haben: Die Wechselwirkungmit der Umgebung kann die Rolle einer

    ”Messung“ spielen).

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 100 / 221

  • QuantenBits - QUBITS

    Die Beobachterin Alice bekommt das Teilchen A und Bob das Teilchen B.Alice macht eine Messung der z-Komponente des Spins (von Teilchen A)entlang der z-Achse. Nach der Messung (siehe Sec. 5.2), fällt A in einemEigenzustand von Sz.Die Messung bewirkt eine Projektion auf dem entsprechenden Eigenzustandvon Sz. Es kann also, mit jeweils 50% Wahrscheinlichkeit einer der folgendenErgebnissen vorkommen:

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 101 / 221

  • QuantenBits - QUBITS

    Die Messung von Alice ergibt Sz = +~/2. Der |S = 0〉 wird auf demZustand projiziert wo Sz(A) = +~/2:

    |S = 0〉 −→Messung

    (P↑ ⊗ I) |S = 0〉 = (|↑〉 〈↑| ⊗ I) |S = 0〉 ∝ |↑ ↓〉

    Die Messung von Alice ergibt Sz = −~/2.

    |S = 0〉 −→Messung

    (P↓ ⊗ I) |S = 0〉 = (|↓〉 〈↓| ⊗ I) |S = 0〉 ∝ |↓ ↑〉

    (Im Endergebnis sind die unwichtigen Konstanten bzw. Phasen gefallen.)In beiden Fällen fällt B in einem Eigenzustand von Sz. Das besondere daranist, dass dies gleichzeitig mit Alices Messung passiert.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 102 / 221

  • QuantenBits - QUBITS

    Es sieht so aus also, als ob Information vom Teilchen A zu Teilchen B mitunendlicher Geschwindigkeit übertragen werden könnte, im Widerspruch zumRelativitätsprinzip.Kann Alice dieses Effekt benutzen, um Information an Bob mitÜberlichtgeschwindigkeit zu übertragen?

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 103 / 221

  • QuantenBits - QUBITS

    Alice könnte ihr Stern-Gerlach Apparatus anders ausrichten, und eineMessung der Sx-Komponente (statt Sz) von A durchführen. In diesem Fall,würde sowohl A als auch B in ein Eigenzustand von Sx (statt Sz) fallen(siehe Eq. 4).Erkennt Bob in welchen Eigenzustand

    ”sein“ Teilchen (B) gefallen ist, könnte

    er instantan die Information erhalten, welche Komponente des Spins (Szoder Sx) Alice gemessen hat. Alice könnte also diese Eigenschaft ausnutzen,um Information an Bob mit unendlicher Geschwindigkeit zu übertragen.Steht also die Quantenmechanik mit der Relativität in Widerspruch?

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 104 / 221

  • QuantenBits - QUBITS

    Die Antwort ist nein. Die Lößung des Paradoxon ist folgende:

    Alice kann das Ergebnis ihrer Messung nicht beeinflussen. Entscheidetsie sich z. B. für die z-Richtung, wird sie Sz = ±~/2 mit jeweils 50%Wahrscheinlichkeit bekommen.

    Bob muss auch eine Messung machen. Angenommen er wählt diez-Richtung.

    Wählt Alice die z-Richtung, bekommt Bob Sz = ±~/2 mit jeweils 50%Wahrscheinlichkeit. B ist zwar in einem Eigenszustand von Sz , aber ebeneiner der beiden Sz = ±~/2, weil Alice ihre Messung nicht beeinflussenkann.Wählt Alice die x-Richtung, bekommt Bob ebenfalls Sz = ±~/2 mitjeweils 50% Wahrscheinlichkeit. In diesem Fall, weil B in einemEigenzustand von Sx ist.

    Also Alice kann keine Information auf dieser Weise übertragen, auch dannnicht wenn viele Teilchen gleichzeitig verwendet werden.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 105 / 221

  • QuantenBits - QUBITS

    Phase-shift Gate

    Ein weiteres 1-Qubit Gate ist das Phase-shift Gate Uφ. Dieses verschiebt umφ die relative Phase zwischen |1〉 und |0〉

    ����|x〉 ei φ x |x〉φ

    In matrix Form:

    Uφ =

    (1 00 eiφ

    )

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 106 / 221

  • QuantenBits - QUBITS

    Betrachten wir jetzt folgendes Netzwerk (Beweis:Übg.):ιφ

    H Hπ + φ /2α2

    0 α αcos 0 + e sin 1

    Oder, in Operatorschreibweise:

    U(π2+φ) H U2α H|0〉 = const.

    (

    cosα |0〉+ eiφ sinα |1〉)

    (5)

    Die rechte Seite von Eq. (5) stellt die allgemeinste unitäre Transformationeines Spin-12 -Objekt dar: es entspricht die Rotation von der z-Achse hin zurRichtung (θ, φ) in Kugelkoordinaten. Das Ergebnis zeigt, dass H und Uφallgemeine 1-Qubit Transformationen erzeugen können. Sie stellen alsoein universellen Satz für 1-QuBit Transformationen dar.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 107 / 221

  • QuantenBits - QUBITS

    Man muss allerdings beachten, dass es eigentlich nicht nur eine, sondern einKontinuum von Uφ Transformationen gibt: eine für jedes Wert von φ.Man kann aber ein einzeles Uφ̄ wählen, mit φ̄/(2π) irrational. Ein beliebigesUφ kann dann durch n-fache Anwendung von Uφ̄ (mit geeigneten n) beliebiggenau reproduziert werden, da

    ∀ǫ, φ ∃n : |φ− (nφ̄ mod(2π)| < ǫ

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 108 / 221

  • QuantenBits - QUBITS

    Controlled-U - Gate

    Das CU -Gate macht das analoge zum CNOT -Gate für ein beliebiges 1-QubitGate U . Es wendet U auf den zweiten QuBit an, genau dann wenn der ersteQuBit |1〉 ist. Ansonsten tut es nichts:

    CU = (P0 ⊗ I + P1 ⊗ U)

    Dieses Gate kann aber auch durch einem Netzwerk bestehend aus 2 CNOTund 3 geeignete 1-QuBit Operationen A,B und C erstezt werden. A,B,Cmüssen so gewählt werden, dass

    CBA = I und CσxBσxA = U (6)

    Dass dieses möglich ist bleibt als Übungsaufgabe (oder kann in Ref. [1]

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 109 / 221

  • QuantenBits - QUBITS

    gefunden werden). Der entsprechende Netzwerk ist:

    U A B C

    ���� ��

    ����

    ������

    ����

    Es ist leicht, sich zu vergewissen, dass dieses gilt, solange Eq. (6) gilt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 110 / 221

  • QuantenBits - QUBITS

    Wir haben also gezeigt, dass ein beliebiges CU mit einem geeignetenNetzwerk aus nur drei Gate, nämlich CNOT , H und Uφ̄, realisiert werdenkann. Das legt nahe, dass diese drei Operatoren eigentlich ein universellenSatz für beliebige unitäre Transformationen nicht nur von 2 sondern vonn-QuBits, also von einem beliebigen Quantencomputer darstellen. Das ist inder Tat so, den Beweis ersparen wir aber uns. Dieser befindet sich in Ref. [1].

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 111 / 221

  • QuantenBits - QUBITS

    Wir haben also den”Zwischenschritt“ in Sec. 4.1

    ”bewiesen“ nämlich, dass

    eine beliebige Operation als Komposition von einem kleinen Satz(”Universeller Satz“) von einfachen Transformationen realisiert werden kann.

    Das gilt eigentlich nicht für beliebige Operationen sondern für beliebigeunitäre Transformationen. Wir werden aber gleich sehen dass, bei geeigneterDarstellung, die ersten eine Untermenge der letzteren sind.Ein allgemeiner Quanten-Netzwerk wird also aus ein-und zwei-Qubit Gatebestehen und man kann sich das physikalisch so vorstellen:

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 112 / 221

  • QuantenBits - QUBITS

    Mag

    net

    Ster

    n−G

    erla

    ch

    Stern−GerlachMessung durch

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 113 / 221

  • QuantenBits - QUBITS

    Quanten-Arithmetik

    Eine Reihe von n Qubits bildet ein Register

    |bn〉 ⊗ · · · |b2〉 ⊗ |b1〉 ⊗ |b0〉 = |bn · · · b2b1b0〉

    Dezimaldarstellung, z.B.

    |1110〉 = |(13)10〉 oder |0110〉 = |(5)10〉

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 114 / 221

  • QuantenBits - QUBITS

    Wie schon erwähnt, kann durch ein geeignetes Netzwerk vonQuantengates jede beliebige unitäre Transformation auf n-Qubitsdurchgeführt werden.Leider sind die üblichen klassischen 2-Qubit nicht zugelassen, weil diesenicht unitär (reversibel) sind. Z.B existiert die inverse von AND nicht,da die Anzahl der QuBits (Eingang, Ausgang) verändert wird. Einenotwendige (aber nicht ausreichende) Forderung für unitäreTransformationen ist natürlich, dass die Anzahl der QuBits unverändertbleiben soll.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 115 / 221

  • QuantenBits - QUBITS

    Das AND Gate kann reversibel gemacht werden mit Hilfe desC2NOT -Gate (oder TOFFOLI-Gate). C

    2NOT ist ein drei-Qubit Gate. Seine

    Wirkung ist folgende: NOT wird auf das dritte Qubit x3 angewandt,genau dann wenn beide x1 = 1 und x2 = 1.

    ����

    ����

    |x1〉

    |x2〉

    |x3〉

    |x1〉

    |x2〉

    |((x1 · x2) + x3)mod2〉

    }

    Input-Register

    Output-Register

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 116 / 221

  • QuantenBits - QUBITS

    Wie realisiert man die AND-Schaltung?Man betrachtet x1 und x2 als ”

    input-register“ und x3 als output register. x3wird am Anfang auf 0 präpariert.Im output hat man dann genau x3 = x1 AND x2.Diese Schaltung zeigt schon, wie man irreversible Operationen durch einreversibles Gate darstellen kann, nähmlich indem ein output und ein inputregister einführt, wobei der letztze unverändert bleibt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 117 / 221

  • QuantenBits - QUBITS

    Selbstverständlich kann der 3-Qubit C2NOT -Gate als Netzwerk von 1 und 2-Qubit Gate realisiert werden. Zuerst bilden wir den Netzwerk für den C2U2-Gate,wo U ein geeigneter 1-Qubit Operator ist:

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 118 / 221

  • QuantenBits - QUBITS

    Selbstverständlich kann der 3-Qubit C2NOT -Gate als Netzwerk von 1 und 2-Qubit Gate realisiert werden. Zuerst bilden wir den Netzwerk für den C2U2-Gate,wo U ein geeigneter 1-Qubit Operator ist:

    =U U UU

    2 −1

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 118 / 221

  • QuantenBits - QUBITS

    Selbstverständlich kann der 3-Qubit C2NOT -Gate als Netzwerk von 1 und 2-Qubit Gate realisiert werden. Zuerst bilden wir den Netzwerk für den C2U2-Gate,wo U ein geeigneter 1-Qubit Operator ist:

    =U U UU

    2 −1

    In unserem Fall soll U2 = NOT sein, also wir brauchen√NOT .

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 118 / 221

  • QuantenBits - QUBITS

    Selbstverständlich kann der 3-Qubit C2NOT -Gate als Netzwerk von 1 und 2-Qubit Gate realisiert werden. Zuerst bilden wir den Netzwerk für den C2U2-Gate,wo U ein geeigneter 1-Qubit Operator ist:

    =U U UU

    2 −1

    In unserem Fall soll U2 = NOT sein, also wir brauchen√NOT .

    NOT = σx = ei π2σxe−i

    π

    2 Also,

    √NOT = ei

    π

    4σxe−i

    π

    4 =1√2(I + iσx)e

    −i π4

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 118 / 221

  • QuantenBits - QUBITS

    Auswertung von Funktionen

    Das Ziel einer Rechnung ist es, für ein gegebenes input x eine beliebigeFunktion f(x) zu berechnen .Die Frage stellt sich, ob so ein Quanten-Netzwerk existiert. Nach denÜberlegungen von Sec. 6.6 ist es klar, dass die Antwort ja ist, solange dieentsprechende Transformation unitär ist.Nennen wir Uf diese Transformation, die von der Funktion f abhängt.

    (n−QuBits)

    X

    INPUT − Register(n−QuBits)

    fU

    NETZWERKQUANTEN−

    TRANSFORMAT.f(X)

    OUTPUT − Register

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 119 / 221

  • QuantenBits - QUBITS

    Man kann sich leicht vergewissern, dass dieses nicht immer möglich ist, zumBeispiel wenn die Funktion f(x) nicht invertierbar ist, weil in dem Fall Ufebenfalls nicht invertierbar also nicht unitär sein kann. Unter anderem könntef(x) weniger Bits haben als die Variabel x.Die Lösung dieses Problems erfolg ähnlich wie beim oben diskutiertenreversiblen AND. Wir benötigen zwei Register, ein Input Register |x〉, der ausn-Qubits besteht, und ein Output Register |y〉, der aus m-Qubits besteht.Im Anfangzustand wird im Input Register die Variabel x

    ”geschrieben“,

    während der output-Register auf y = 0 präpariert wird.Im Endzustand (nach der Transformation) bleibt der input-Registerunverändert, wärend das output Register den Wert der Funktion f(x) erhält.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 120 / 221

  • QuantenBits - QUBITS

    Um ein Operator vollständig zu definieren muss man seine Wirkung auf alleBasis-Elemente |x〉 ⊗ |y〉 = |x, y〉 spezifizieren.Wir definieren also den Funktionsauswertung-Operator Uf als

    Uf |x, y〉 = |x, (y + f(x))MOD 2m〉 (7)

    was für y = 0 den gewünschten Effekt hat.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 121 / 221

  • QuantenBits - QUBITS

    Hier noch einmal die Transformation als Quanten-Netzwerk:

    fU

    NETZWERKQUANTEN−

    TRANSFORMAT.

    INPUT − Regi.(n−QuBits) (m−QuBits)

    (i.d.R. y=0)

    OUTOUT − Reg.

    |X,Y 〉 |X, (Y + f(X))MOD2m〉

    (Wir werden von nun an das MOD 2m stets implizieren, anders kann nichtsein, wenn man m-Qubits hat.)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 122 / 221

  • QuantenBits - QUBITS

    Ein einfacher Beispiel für so eine Transformation ist ein Quanten-Adder fürzwei Qubits, den man mit Hilfe des C2NOT -Gates erzeugen kann:

    (ÜBERTRAG)

    X 1

    X 2

    X 1

    X 2

    X X1 2

    0

    0

    INPUT− Reg.

    OUTPUT−Reg.

    (X + X )1 2 MOD 2 (SUMME)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 123 / 221

  • QuantenBits - QUBITS

    Quantenparallelismus

    Wie gesagt, ist (7) (i.e. die Funktionauswertung)eigentlich eine klassische Transformation, d. h. auch ein klassischerComputer kann sowas machen.Das neue kommt, wenn man die linearität der Quantenmechanik ausnutzt,und den Anfangzustand |ψ〉 in einer Überlagerung von zwei Werten x1 undx2 präpariert:

    |ψ〉 = |x1, 0〉 + |x2, 0〉

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 124 / 221

  • QuantenBits - QUBITS

    Dann liefert die Transformation

    Uf |ψ〉 = |x1, f(x1)〉+ |x2, f(x2)〉

    Es ist zu beachten hier, dass es sich um eine einzelne Transformation: derQuantencomputer rechnet hier nur einmal. Die Funktion f(x) wird also fürzwei Werte x1, x2 gleichzeitig bestimmt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 125 / 221

  • QuantenBits - QUBITS

    Noch besser, man kann alle Basiszustände des ersten Registers alsAnfangzustand nehmen:

    |ψAlle〉 =2n−1∑

    x=0

    |x, 0〉 (8)

    dann

    Uf |ψAlle〉 =2n−1∑

    x=0

    |x, f(x)〉 ≡ |Loesungalle〉 .

    In diesem Fall wird also mit einer einzigen Operation für alle x diezugehörige Funktion f(x) ausgewertet. Das ist der Quantenparallelismus.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 126 / 221

  • QuantenBits - QUBITS

    Der Vorteil ist augenscheinlich. Würde man mit einen klassischen Computermit n = 100 Bits (d.h. x = {0, . . . , 2100 − 1}) dasselbe berechnen wollen,bräuchte man etwa 2100 ≃ 1030 Rechenoperationen. Mit einem klassischenComputer, der z.B. 109 solche Rechnungen pro Sekunden schafft, würde dies1021Sek. bzw. etwa 1014 Jahre dauern,während der Quantencomputer alle 2100 Operation in der gleichen Zeitdurchführt, die er für eine Operation braucht.Natürlich besteht Uf aus vielen elementaren Operationen (z.B. wenn f einProdukt ist, braucht man ≈ n2 elementare Operationen), dies ist aber auchbeim klassischen Computer der Fall.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 127 / 221

  • QuantenBits - QUBITS

    Bemerkung: Benutzt man Spins als Qubits, dann hat der Zustand |ψAlle〉eine sehr einfache Form (hier als Beispiel für n = m = 3):

    |ψAlle〉 = | →→→︸ ︷︷ ︸INPUT Reg.

    , ↑ ↑ ↑︸︷︷︸

    OUTPUT Reg.

    Der Input Register wird also präpariert mit all seine Spins polarisiert in diex-Richtung, da

    |→〉 ⊗ |→〉⊗ |→〉 = (|↑〉+ |↓〉)⊗ (|↑〉+ |↓〉)⊗ (|↑〉+ |↓〉) =∑

    s1,s2,s3

    |s1, s2, s3〉

    (die Normierung wurde weggelassen).

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 128 / 221

  • QuantenBits - QUBITS

    Wir erhalten also im Prinzip eine exponentiell großeRechenleistungssteigerung. Das Problem besteht leider darin, die Ergebnissezu lesen (zu messen). Prinzipiell erfolgt eine Messung durch Auswertung alleroder von einem Teil der Spins durch eine Stern-Gerlach-Apparatur (orientiertin einer gegebenen Richtung). Man kann z.B. alle Spins des INPUT-Registersmessen. Die Messung von Sz ergibt aber nur eine Konfiguration, d.h. nureinen Wert x = x̄ (alle x Werte kommen mit der gleichen Wahrscheinlichkeitvor).

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 129 / 221

  • QuantenBits - QUBITS

    Der Zustand |Loesungalle〉 wird dann auf diesen Raum projiziert:Projektor Px̄ = |x̄〉〈x̄|

    ︸ ︷︷ ︸

    auf Input−Reg

    ⊗ I︸︷︷︸

    auf Output−Reg

    .

    Also

    Px̄∑

    x

    |x, f(x)〉 =∑

    (|x̄〉〈x̄||x〉 ⊗ I|f(x)〉 =∑

    δxx̄|x̄〉 ⊗ |f(x)〉 = |x̄, f(x̄)〉

    Jetzt kann man natürlich y messen, was mit 100% Wahrscheinlichkeit f(x̄)ergeben wird, d.h. man kann immer nur einen Wert lesen! Unsere Rechnungberechnet also

    ”blitzartig“ f(x) für 2n Werte von x, aber das Ergebnis kann

    nur für ein Wert von x gelesen werden.Bei der einfachen klassischen Auswertung einer Funktion kann einQuantencomputer also nicht schneller als ein klassischer sein.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 130 / 221

  • QuantenBits - QUBITS

    Zusammenfassung und Überlegungen

    In der Quanten Mechanik wird ein physikalischer Zustand alsÜberlagerung mehrerer klassischer Zustände beschrieben (z.B. Spin,Doppelspaltexperiment)

    Wird aber gemessen, so findet man nur einen von diesen klassischenZuständen.

    Wo kann man also die Effekte dieser Überlagerung sehen und diese somitnutzen? Die Antwort lautet INTERFERENZ. Um also schnelle (effiziente)Quantenalgorithmen zu machen, muss man die Interferenz geschicktausnutzen.Wie das geht wird im nächsten Kapitel gezeigt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 131 / 221

  • Erste Quantenalgorithmen

    1. Einführung

    2. Klassische Logik und klassische Rechnung

    3. Konzepte der Quantenmechanik

    4. QuantenBits - QUBITS

    5. Erste QuantenalgorithmenEinfacher Algorithmus (D. Deutsch)Quanten-Recherche in Datenbanken (Grover-Algorithmus)

    Realisierung der Spiegelung RS

    6. Einige Physikalische Realisierungen

    7. Faktorisierung

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 132 / 221

  • Erste Quantenalgorithmen

    In diesem Kapitel werden einige Quanten-Algorithmen besprochen, diebestimmte Probleme durch geeigneter Benutzung der Interferenz deutlichschneller als die entsprechende klassische Algorithmen lösen können. Wiebereits in Sec. 3.3 erwähnt, braucht der Begriff

    ”schnell“ eine genauere

    Definition. Deswegen wurde die Definition der Komplexität einesAlgorithmus eingeführt.

    berechenbar T ∼ Polynom von Lunberechenbar T > als jeder Polynom von L

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 133 / 221

  • Erste Quantenalgorithmen

    Einfacher Algorithmus (D. Deutsch)

    Um ein ersten Eindruck zu bekommen, wie der Quantencomputer dieInterferenz benutzt, wird hier einen einfachen Algorithmus, der auf wenigeQubits wirkt, präsentiert. Da das System klein ist kann natürlich dieserAlgorithmus die Komplexitätklasse nicht verbessern.Es sei eine

    ”Black-Box-Funktion“ f von einem Bit auf einem Bit gegeben:

    (f : {0, 1} → {0, 1}).Wie in Sec. 6.7 besprochen, es existiert ein Quantennetzwerk, der dieentsprechende unitäre Transformation Uf , Eq. (7) durchführt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 134 / 221

  • Erste Quantenalgorithmen

    Die Fragestellung sei nicht, welche die Werten von f sind, sondernob f(0) = f(1) oder f(0) 6= f(1) sei.Mit einem klassischen Computer hat man keine Wahl. Man muß f(0) undf(1) ausrechnen. f muß also zwei Mal ausgewertet und dann verglichenwerden.Wir wollen sehen, dass ein Quantencomputer diese Frage mit einer einzigenRechnung von f beantwortet.Dieses Problem zeigt auch, wie ein Quantencomputer nicht für alleFragestellungen

    ”schneller“ ist sondern nur für gewisse Arten von

    Fragestellungen.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 135 / 221

  • Erste Quantenalgorithmen

    Als Motivation nehmen wir an, dass die Berechnung von f(x) extremzeitaufwendig sei, so dass schon ein großes Gewinn ist, sich auch nur eineBerechnung von f zu sparen. Ein Beispiel dafür wäre eine Funktion f(x),welche 0 oder 1 liefert, je nachdem, ob die millionste Zahl hinter demKomma von

    √2 + x gerade oder ungerade ist.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 136 / 221

  • Erste Quantenalgorithmen

    Wir starten vom Anfangszustand: | 1︸︷︷︸

    input

    , 1︸︷︷︸

    output

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 137 / 221

  • Erste Quantenalgorithmen

    Wir starten vom Anfangszustand: | 1︸︷︷︸

    input

    , 1︸︷︷︸

    output

    wir führen dann eine Hadamard-Transformation auf beiden Registern durch:

    |Ψ〉 ≡ H ⊗H(|1〉 ⊗ |1〉) = (|0〉 − |1〉)⊗ (|0〉 − |1〉) = |00〉 − |10〉 − |01〉+ |11〉

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 137 / 221

  • Erste Quantenalgorithmen

    Wir starten vom Anfangszustand: | 1︸︷︷︸

    input

    , 1︸︷︷︸

    output

    wir führen dann eine Hadamard-Transformation auf beiden Registern durch:

    |Ψ〉 ≡ H ⊗H(|1〉 ⊗ |1〉) = (|0〉 − |1〉)⊗ (|0〉 − |1〉) = |00〉 − |10〉 − |01〉+ |11〉

    Dann folgt die”Funktionsauswertung“ mit Hilfe des Operators Uf Eq. (7).

    |Ψf 〉 ≡ Uf |Ψ〉 = |0〉⊗|f(0)〉−|1〉⊗|f(1)〉−|0〉⊗|f(0)+1〉+ |1〉⊗|f(1)+1〉

    (das mod2 ist hier implizit).Obwohl hier mit nur eine Funktionauswertung beide Werte von f zurVerfügung stehen, wissen wir schon dass wir nicht beide gleichzeitig

    ”lesen“

    können.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 137 / 221

  • Erste Quantenalgorithmen

    je nachdem, ob f(0) = f(1) oder nicht sind zwei Fälle zu unterscheiden:

    |Ψf 〉 ={

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 138 / 221

  • Erste Quantenalgorithmen

    je nachdem, ob f(0) = f(1) oder nicht sind zwei Fälle zu unterscheiden:

    |Ψf 〉 ={

    (|0〉 − |1〉) ⊗ (|f〉 − |f + 1〉) für f(0) = f(1) ≡ f(9)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 138 / 221

  • Erste Quantenalgorithmen

    je nachdem, ob f(0) = f(1) oder nicht sind zwei Fälle zu unterscheiden:

    |Ψf 〉 ={

    (|0〉 − |1〉) ⊗ (|f〉 − |f + 1〉) für f(0) = f(1) ≡ f(|0〉 + |1〉) ⊗ (|f〉 − |f + 1〉) für f(0) = f(1) + 1 ≡ f

    (9)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 138 / 221

  • Erste Quantenalgorithmen

    je nachdem, ob f(0) = f(1) oder nicht sind zwei Fälle zu unterscheiden:

    |Ψf 〉 ={

    (|0〉 − |1〉) ⊗ (|f〉 − |f + 1〉) für f(0) = f(1) ≡ f(|0〉 + |1〉) ⊗ (|f〉 − |f + 1〉) für f(0) = f(1) + 1 ≡ f

    (9)

    Wir führen dann eine Hadamard-Transformation nur auf den INPUT-Registerdurch:

    (H ⊗ I)|Ψf 〉 ={

    |1〉 ⊗ (|f〉 − |f + 1〉)|0〉 ⊗ (|f〉 − |f + 1〉)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 138 / 221

  • Erste Quantenalgorithmen

    Dieser Schritt ist derjenige, wo die Interferenz ausgenutzt wird.Wie man sieht braucht man jetzt einfach den Input-Register zu messen.Erhalten wir 1, dann wissen wir, dass f(0) = f(1), Erhalten wir 0, dann warf(0) 6= f(1).Dieses Ergebnis haben wir mit einer einzelnen Auswertung von f (statt zwei)erhalten.Es gibt Verallgemeinerungen dieses Algorithmus für eine Funktion von n Bitsauf 1 Bit: f : {0, 1}n → {0, 1}.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 139 / 221

  • Erste Quantenalgorithmen

    Quanten-Recherche in Datenbanken

    (Grover-Algorithmus)

    Wir wollen jetzt ein Praktischeres und (nützlicheres) Algorithmus betrachten:die Recherche in Datenbanken.Das Problem besteht darin, einen gegebenen Eintrag in einer Datenbank mitN Daten zu suchen. Die Daten seine nicht sortiert. Ein Beispiel wäre eineSuche in einem Telefonbuch nach einen Namen für eine gegebeneTelefonnummer.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 140 / 221

  • Erste Quantenalgorithmen

    Im klassischen Fall muß man im Durchschnitt N/2 Mal die Funktionauswerten. Anders gesagt: Mit N/2 zufälligen Auswertungen ist dieErfolgswahrscheinlichkeit 50%Mathematisch sei das Problem so formuliert.Es gibt eine Variabel x = 1, . . . N , die die Position des Eintrages beschreibt.f(x) sei der Eintrag an der Stelle x.Gegeben ein

    ”gesuchten“ Eintrag a, muß man den Wert x̄ von x finden, für

    den f(x̄) = a gilt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 141 / 221

  • Erste Quantenalgorithmen

    Es ist also zweckmäßig eine neue Funktion zu definieren:

    fa(x) =

    {

    0 f(x) 6= a1 f(x) = a

    also fa(x) ist eine Funktion von n auf 1 Bit, wo N = 2n. Ufa sei der

    entsprechende Funktionauswertung-Operator:Ufa |x〉|q〉 = |x〉|fa(x) + q〉.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 142 / 221

  • Erste Quantenalgorithmen

    Der Quantenalgorithmus funktioniert auf dieser Weise:

    Der Anfangzustand Ψ0 sei gegeben als

    |Ψ0〉 ≡ |S〉 ⊗ |1〉

    wo der Input Register im Zustand |S〉 präpariert wurde, der aus derSuperposition aller möglichen Werten von x (siehe Eq. 8) besteht:

    |S〉 =2n−1∑

    x=0

    |x, 0〉 . (10)

    Dieses kann man formell erhalten aus einer Hadamard-Transformationauf alle n Qubits (H [n]):

    |S〉 = H [n] |0〉 (11)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 143 / 221

  • Erste Quantenalgorithmen

    Dann führen wir eine Hadamard-Transformation auch auf denoutput-Register durch:

    |Ψ1〉 ≡ (I⊗H)|Ψ0〉 = |S〉 ⊗ (|0〉 − |1〉)

    Die Funktionsauswertung liefert:

    |Ψ2〉 ≡ Ufa |Ψ1〉 =∑

    x

    |x〉(|fa(x)〉 − |fa(x) + 1〉) (12)

    Wir sehen, dass (|fa(x)〉 − |fa(x) + 1〉) = ±(|0〉 − |1〉), wo das +Zeichen gilt wenn fa(x) = 0 und das − für fa(x) = 1.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 144 / 221

  • Erste Quantenalgorithmen

    Wir können Eq. (12) schreiben als:

    |Ψ2〉 = |v1〉 ⊗ (|0〉 − |1〉)

    mit

    |v1〉 ≡∑

    x

    (−1)fa(x) |x〉

    Bisher ist nichts besonders passiert, der”gesuchte“ Term hat eine Phase

    −1 erhalten. Die Wahrscheinlichkeit, dass man bei einer Messung dengesuchten Term erhält wird von dieser Phase nicht beeinflusst und istweiterhin 1/N , wie im Anfangzustand Eq. (11).

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 145 / 221

  • Erste Quantenalgorithmen

    Dank der speziellen Form des Output-Registers, ändert dieFunktionauswertung letzendlich nur den Output-RegisterZur verdeutlichung können wir einen entsprechenden Operator Rx̄definieren, der diese Transformation ausdrückt, also

    Ufa |S〉 ⊗ (|0〉 − |1〉) = (Rx̄ |S〉)⊗ (|0〉 − |1〉) . (13)

    Rx̄ also dreht die Phase des unbekannten |x̄〉-Termes um π. Es istleicht, sich zu vergewissern, dass die Wirkung Eq. (13) für beliebigeZustände des Input-Registers gilt.

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 146 / 221

  • Erste Quantenalgorithmen

    Im folgenden ist es nützlich diese Transformationen geometrisch zuinterpretieren. Betrachten wir den Input-Register als einN -dimensionalen Vektor.Wir betrachten nun die transformation RS auf den input-Register, dieeine Spiegelung um die Ebene S⊥ bewirkt. S⊥ ist die Ebene senkrechtzum Zustand |S〉 = ∑x |x〉. Wir werden später sehen, wie dieseTransformation durchgeführt werden kann.Wir erhalten den Zustand:

    |Ψ3〉 ≡ (RSRx̄|S〉)⊗ (|0〉 − |1〉)

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 147 / 221

  • Erste Quantenalgorithmen

    Zum geometrischen Verständnis betrachten wir den input register in einemN -dimensionalen Karteischen Koordninatensystem. Wir plotten dieProjektion auf die von |x̄〉 und |S〉 gespannte Ebene. Der Anfang-Vektor |S〉bildet einen sehr kleinen Winkel φ mit der unteren (x̄⊥) Achse, mitφ = arcsin(1/

    √N). Im Bild Aufgetragen sind die Vektoren nach der

    Rx̄-Transformation und nach der zusätzlichen RS-Spiegelung:

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 148 / 221

  • Erste Quantenalgorithmen

    |v0〉 ≡ |S〉

    φ

    x̄-Achse

    x̄⊥

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 149 / 221

  • Erste Quantenalgorithmen

    |v0〉 ≡ |S〉

    φ

    x̄-Achse

    x̄⊥

    Rx̄ |S〉−φ

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 149 / 221

  • Erste Quantenalgorithmen

    |v0〉 ≡ |S〉

    φ

    x̄-Achse

    x̄⊥

    Rx̄ |S〉−φ

    S⊥

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 149 / 221

  • Erste Quantenalgorithmen

    |v0〉 ≡ |S〉

    φ

    x̄-Achse

    x̄⊥

    Rx̄ |S〉−φ

    S⊥

    |v1〉 ≡ RSRx̄ |S〉

    3φ− π

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 149 / 221

  • Erste Quantenalgorithmen

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 150 / 221

  • Erste Quantenalgorithmen

    Aus dem Bild kann man erkennen, dass der Vektor |v1〉 ≡ RSRx̄ |S〉 einStück

    ”näher“ an die x̄ Achse gelangen ist. D. h. eine Messung in |v1〉 ergibt

    eine höhere Wahrscheinlichkeit (W = (sin 3φ)2 ≈ 3/N), das”richtige“ x̄ zu

    finden. Allerdings ist der Gewinn sehr klein, da der Winkel φ auch sehr kleinist φ ∼ 1/

    √N .

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 150 / 221

  • Erste Quantenalgorithmen

    Wir können allerdings die Prozedur mehrmals wiederholen, um noch näher zukommen. Abgebildet ist die k + 1-te Iteration

    |vk+1〉 = RSRx̄ |vk〉

    |vk〉 soll ein Winkel θk mit der x̄⊥ Achse haben

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 151 / 221

  • Erste Quantenalgorithmen

    S⊥

    |S〉φ

    x̄-Achse

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 152 / 221

  • Erste Quantenalgorithmen

    S⊥

    |S〉φ

    x̄-Achse

    x̄⊥

    θk

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 152 / 221

  • Erste Quantenalgorithmen

    S⊥

    |S〉φ

    x̄-Achse

    x̄⊥

    θk

    |vk〉

    −θk

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 152 / 221

  • Erste Quantenalgorithmen

    S⊥

    |S〉φ

    x̄-Achse

    x̄⊥

    θk

    |vk〉

    −θk

    Rx̄ |vk〉θk+1 = θk + 2φ− π|vk+1〉

    Enrico Arrigoni (TU Graz) Quantencomputer WS 2009-2010 152 / 221

  • Erste Quantenalgorithmen

    Enrico Arrigoni (TU Graz)