Einführung in Quantencomputing

Ähnliche Dokumente
Quanteninformation/ Quantencomputer

Quantum Computing. Seminar: Informatikanwendungen in Nanotechnologien. Wladislaw Debus

Seminar zur Nanoelektronik 2008: Quantencomputer. Jan-Philip Gehrcke. Julius-Maximilians-Universität Würzburg. 17. Juli 2008

Einführung in Quantenalgorithmen

Simulation eines Quantencomputers

Inhalt. Quantenbits, -gatter, -register. Einleitung. Seminar über Quantencomputer. Klassische Betrachtungsweise. Klassisches Modell

Algorithmen für Quantencomputer I

Proseminar CiS November Quantencomputer. Tom Petersen

Dekohärenz und Grundprinzip der Quantenfehlerkorrektur

Grundlagen des Quantencomputers

Einführung in Quantencomputer

Quantencomputer. Tobias Tyborski HU Berlin

Teleportation mit Photonen und Ionen

Quantenschaltkreise. Seminar: Quantenrechner ~ Sommersemester Dozenten: Prof. Johannes Köbler und Olaf Beyersdorff

Vortrag über QUANTENCOMPUTER. gehalten von Marcus HARRINGER, Gregor KÖNIG, Michael POBER, Klaus WERDENICH

Algorithmen für Quantencomputer II Der Shor Algorithmus

Kapitel III Ringe und Körper

Quantum Computing verstehen

Quantencomputer: Einführung

Quantenfehlerkorrekturcodes

Quanteninformationstheorie

Einführung in die Informatik I

Vortrag zur. Quantenteleportation. Sebastian Knauer Institut für Physik Humboldt-Universität zu Berlin. S.Knauer. Einleitung.

Rechenoperationen und Elementare Algorithmen

Der Primzahltest von Agrawal, Kayal und Saxena. Dr. Gerold Jäger

1- und 2-Wege QFAs. Stephan Sigg Quantentheoretische Grundlagen. 3. DFAs und QFAs. 4. Einige bekannte Ergebnisse

4 Kryptologie. Übersicht

Verschränkung. Kay-Sebastian Nikolaus

Quanten Computing - was erwartet uns: Big Bang oder Flaute?

31 Polynomringe Motivation Definition: Polynomringe

13. Der diskrete Logarithmus

Eine Einführung zum Thema Quantencomputer

Diskrete Fourier-Transformation Stefanie Dourvos Institut für Informatik FU Berlin

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 8. Zufallszahlen Generatoren Anwendungen

Primzahlen im Schulunterricht wozu?

Quantenkryptographie

Wirtschaftsmathematik Plus für International Management (BA) und Betriebswirtschaft (BA)

Adiabatisches Quantencomputing

Simulation eines Quantencomputers

Abhörsichere Kommunikation über Quanten-Repeater

3: Zahlentheorie / Primzahlen

Lösungen der Aufgaben

Quantencomputer in Theorie und Praxis. Enrico Thomae Dagstuhl,

Schleifeninvarianten. Dezimal zu Binär

Verschränkung und Verschränkungsmaße

6. Lösungsblatt

Was ist eine Funktion?

von Kay-Sebastian Nikolaus, Seminar Quantenmechanik am 24. Oktober 2014 bei Prof. Dr. Wolschin 1 Definition und Allgemeines 2

Quantenphysik aus klassischen Wahrscheinlichkeiten

AES und Public-Key-Kryptographie

Langzahlarithmetik implementieren Ac 1990 bis 2016

Diskrete und Schnelle Fourier Transformation. Patrick Arenz

Freie Universität Berlin Institut für Informatik. Seminar über Algorithmen für Quanten-Computer. Vortrag Nr. 4 Quantenbits, -gatter, -register

Wie programmiert man einen Quantencomputer?

Das RSA-Verfahren. Proseminar Kryptographische Protokolle SS Armin Litzel

Grundlagen Kondition Demo. Numerisches Rechnen. (für Informatiker) M. Grepl P. Esser & G. Welper & L. Zhang

3. Diskrete Mathematik

Quantenlithographie. Scheinseminar: Optische Lithographie Wintersemester 2008/09 FAU Erlangen-Nürnberg

Vom Doppelspalt zum Quantencomputer

3 Numerisches Rechnen

B =(b1,1. + b 1,2. + b 1,3 1,3. + b 2,4 + b 3,1. + b 2,2. + b 2,3. + b 3,2. + b 3,3

Lineare Gleichungssysteme

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16

4.1. Vektorräume und lineare Abbildungen

Integrierte Schaltungen

24. April Institut für Mathematik Humboldt-Universität zu Berlin. Primzahlen und Chaos. Jürg Kramer. Natürliche Zahlen. Bausteine.

Kap. 4: Einige Grundtatsachen der Quantenmechanik

Teil IV. Schaltwerke

Lösung zur Klausur zu Krypographie Sommersemester 2005

Rechner. Verlauf ansehen. Ausdruck teilen. Graph Gleichungen. OXY Seite öffnen. SCI/ENG Schreibweise. Eigene Gleichung zuweisen

Kohärenz, Verschränkung und Verschränkungsmaße I

WS 2009/10. Diskrete Strukturen

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza)

Einleitung Shor s Algorithmus Anhang. Thomas Neder. 19. Mai 2009

20 2 Vom Bit zum Quantenregister

IT-Security. Teil 8b: Rechnen mit beliebiger Genauigkeit Algorithmen

1 Lineare Gleichungssysteme und Matrizen

Berechenbarkeitstheorie 19. Vorlesung

Körper- und Galoistheorie

A2.3 Lineare Gleichungssysteme

Inhalt. 1. Einführung in die Informatik. 2. Algorithmen Definition, Eigenschaften, Entwurf Darstellung von Algorithmen Beispiele.

6. Vorlesung. Rechnen mit Matrizen.

Quantenmechanik. Eine Kurzvorstellung für Nicht-Physiker

5 Interpolation und Approximation

Theoretische Informatik. Berechenbarkeit

Elliptic Curve Cryptography

7.1 Matrizen und Vektore

WIEDERHOLUNG (BIS ZU BLATT 7)

1 Geometrie - Lösungen von linearen Gleichungen

Verschränkte Zustände. - spukhafte Fernwirkungen-

Einführung. Ablesen von einander zugeordneten Werten

Aufgaben zu Kapitel 20

Wiederhole eigenständig: elementare Konstruktionen nach diesen Sätzen

Herausforderung an die Zukun0. der Quantencomputer. Renato Renner Ins9tut für Theore9sche Physik ETH Zürich

4.6.1 Mathematische Grundlagen

Kombinatorik. Additions- und Multiplikationsgesetz

1 Körper. Wir definieren nun, was wir unter einem Körper verstehen, und sehen dann, dass es noch andere, ganz kleine Körper gibt:

Quantenteleportation

Jürgen Audretsch (Hrsg.) Verschränkte Welt. Faszination der Quanten WILEY-VCH

Transkript:

Einführung in Quantencomputing Proseminar v. F. Saphir..003 Zusammenfassung Dieser Teil der Einführung in Quantencomputing stellt die Vorteile gegenüber klassichen Computern vor, behandelt eine Reihe einfacher Operatoren für n-qubit-zustände und zeigt mit der Faktorisierung einer Ganzzahl eine interessante Anwendung. Klassische Computer In einem klassischen Computer werden Informationen durch Bits dargestellt. Technisch entsprechen sie diskreten Schaltzuständen. Pro Bit (und damit auch in einer Gruppe von Bits) kann pro Zeit nur eine Information gespeichert werden. Diese Begrenzung ist bei Qubits wegen der Superposition von Zuständen aufgehoben. Ein Binärstring der Länge n heißt Register der Größe n. 8 Bit bilden ein Byte, 6 Bit ein Integer. Operationen wie z.b. Verknüpfungen zwischen zwei Registern werden immer bitweise durchgeführt ( seriell ). Beispiele für klassiche Operatoren sind die sog. logischen Gatter: AND, OR, XOR, NOT.... Es gibt auch noch Schiebeoperatoren, die die Bits im Register um m Stellen nach rechts oder links verschieben können. Mit einem vollständigen Satz an Operatoren (und Zusatzregistern) können alle mathematischen Operationen zwischen zwei Registern dargestellt werden. Die Leistungsfähigkeit eines klassischen Computers ist unter anderem durch die Schaltgeschwindigkeit der Transistoren begrenzt (.003: 5 GHz). Eine weitere Grenze ist der Platzbedarf klassischer Schaltungen. Die voranschreitende Minituarisierung ist durch quantenmechanische Effekte begrenzt. Klassische Computer sind weit entwickelt und übernehmen viele Aufgaben. Doch sind sie dafür auch geeignet? Wo liegen die eigentlichen Grenzen? fsaphir@physnet.uni-hamburg.de

Effizienz von Algorithmen Algorithmen lassen sich in zwei Kategorien einteilen: effizient und ineffizient. Die Unterscheidung liegt darin begründet, wie stark die benötigte Rechenzeit von der Größe l des Eingaberegisters abhängt. Effiziente Algorithmen haben eine polynomiale Abhängigkeit, ineffiziente eine exponentielle. So ist z.b. für die Faktorisierung einer ganzen Zahl auf einem klassischen Computer kein effizienter Algorithmus bekannt. Für die Suche der Faktoren der Zahl N bis N werden etwa l/ Operationen (Divisionen) benötigt. Simulation von Quantensystemen ist auf klassischen Computern nicht effizient möglich (Feynman 98). Daraus entstand die Spekulation, daß Computer die mit Quanteneigenschaften und -effekten rechnen möglicherweise sehr viel mehr Leistung bieten. Diese Vermutung wurde durch die Entdeckung eines Faktorisierungsalgorithmus durch Peter Shor (Shor 997) unterstützt. Dieser Algorithmus leistet die Faktorisierung einer ganzen Zahl in polynomialer Zeit. In einem Quantencomputer wächst die Rechenleistung schon bei linearer Vergößerung des Systems exponentiell, denn ein Qubit-Register der Größe n kann alle n Zustände superponiert bekommen, und eine Rechenoperation wirkt auf alle Zustände gleichzeitig ( quantumparallelism ). 3 Rechnen mit Gattern Während Qubits und Register bisher statische Größen sind, entsprechen die Schritte in einem Algorithmus Zustandsänderungen an einem System. Diese Zustandsänderungen müssen neu definiert werden, denn die klassichen Gatter können nicht einfach so übertragen werden: Der Inhalt der Qubit-Register ist nicht klassich. Die Suche nach neuen Operatoren wird durch zwei Bedingungen eingegrenzt: Weil die Dynamik von Quantensystemen durch die Schrödingergleichung beschrieben wird, müssen die gesuchten Zustandsänderungen linear sein. Außerdem müssen sie die Orthogonalität der Zustände erhalten. Lineare, orthogonalitätstreue Operatoren auf einem komplexen Vektorraum sind gerade die Unitären. Somit müssen die Gatter für Operationen mit Quantenregistern ebenfalls unitär sein, und zwar in dem Sinne, daß die einem Gatter zugeordnete Matrix unitär ist. Jede unitäre Matrix stellt ein gültiges Gatter dar! Als Konsequenz sind diese Operationen auch reversibel, sodaß aus dem Ergebnis wieder der Anfangszustand berechnet werden kann. Aus der Unitarität der Operatoren folgt auch, daß ein unbekannter Qubit-Zustand nicht kopiert werden kann ( no-clonig-theorem, z.b. [], S. 6): Sei U die unitäre Clon-Transformation: U( a0 ) = aa für

alle a. Seien weiter a und b zwei orthogonale Zustände und c = (/ )( a + b ). Wegen der Linearität von U muß gelten: U( c0 ) = (U( a0 ) + U( b0 )) = ( aa + bb ) Andererseits gilt für den Clon-Operator: U( c0 ) = cc = ( aa + ab + ba + bb ) ( aa + bb ) Das no-clonig-theorem besagt, daß man während eines Algorithmus keine Sicherheitskopie von einem Zwischenergebnis machen kann. Eine Verstärkerschaltung ist unmöglich ([3], S. 4). 3. Beispiele für unitäre Gatter Zuerst zwei Beispiele für -Qubit-Gatter. Die Matrizen sind auf der linken Seite in der Basis { 0, } angegeben. Auf der rechten Seite ist zur Verdeutlichung die Wirkung auf ein Qubit(-Register) angegeben. Der Beweis für ihre Unitarität sei dem Leser überlassen. 3.. Hadamard-Gatter H := ( ), x H / ( ( ) x x + x ) Für ein einzelnes Qubit liefert diese Transformation also: 0 H / ( 0 + ) H / ( 0 ) Ein Registers y {0, } n enthält nach einer (bitweisen) Hadamard- Transformation eine Superposition der Zahlen 0... n : y H n x {0,} n ( ) xy x Für n = z.b.: 0 H [ ] 00 0 + 0 () 3

Zur weiteren Veranschaulichung sei diese Transformation auch noch in Matrix-Schreibweise angegeben. Angewendet auf ein Qubit x = ( 0 + ) ergibt sich: ( ) ( ) / / = ( / 0 ) = 0 3.. Phase-Shift-Gatter Φ := ( 0 0 e iφ ), x Φ e ixφ x Das Phase-Shift-Gatter verändert die Phase eines Qubits, was im Zusammenhang mit der Dekohärenz von Zuständen interessant ist. Ein Phasenfehler in einem Qubit könnte mit soeinem Gatter korrigiert werden (siehe z.b. [], S. 8ff). Mit Kombinationen dieser beiden Gatter kann jede unitäre Transformation eines einzelnen Qubits hergestellt werden ([5], S. 0) Sie sind ein vollständiger -Qubit-Satz. Um Zustände zu verschränken brauchen wir noch mindestes ein weiteres Gatter, denn Verschränkung ist ein zustandsglobales Phänomen und mit -Qubit-Gattern nicht herstellbar. 3..3 controlled-not-gatter Das cnot-gatter ist das erste Beispiel für ein -Qubit-Gatter. Alle Gatter vom Typ controlled-u führen die (unitäre) Operation U durch, wenn das Control-Qubit im Zustand ist: 0 x bleibt 0 x und aus y wird U(y). cn := 0 0 0 0 0 0 0 0 0 0 0 0, xy cn x, x y wobei das für eine XOR-Verknüpfung (d.h. Addition modulo ) steht. x bezeichnet das Control-Qubit, y das Target. Die Matrix ist in der Basis { 00, 0, 0, } angegeben. Als erste Anwendung stellen wir eine Superposition und einen verschränkten Zustand her. Ausgehend von einem Qubit im Anfangszustand 0 erhalten wir mit einer Hadamard-Transformation: 0 H ( 0 + ) Aus diesem Zustand und einem Target 0 erzeugt das cnot den verschränkten Zustand ( 0 + ) 0 cn ( 00 + ) 4

Diesen Zustand nennt man auch Bell-Zustand oder EPR -Paar. Eine Messung an diesem EPR-Paar ergibt für den Zustand des gemessenen Qubits und die verbleibende Wellenfunktion ψ jeweils mit der Wahrscheinlichkeit / entweder 0 und ψ = 00 oder und ψ =. Auf jeden Fall wirkt die Messung auch auf das andere Qubit, was auf eine innere Korrelation der Qubits deutet. Auch wenn vorher noch Operatoren darauf angewendet wurden, bleibt diese Korrelation bestehen. Sie ist stärker, als sie in irgendeinem klassischen System sein könnte ([5], S. 6f). Zusammen mit einem weiteren Gatter, dem controlled-phase-shift- Gate B(φ), bilden diese Gatter einen vollständigen Satz an Operatoren. Jede unitäre n-qubit Operation kann mit ihnen hergestellt werden. Als Beispiel dafür sei der QFT 3 -Operator für m Werte genannt: x m e i π n cx c () m c=0 Er kann durch eine Folge von Hadamard- und controlled-phase-shift- Gattern hergestellt werden. Z.B. für n = 3: H cb(π) H cb(π/) cb(π) H 3. Deutschs Problem Deutschs Problem ist denkbar einfach: Gegeben sei eine binäre Funktion einer binären Variablen: f : {0, } {0, }. Gefragt ist, ob diese Funktion konstant (f(0) = f()) oder veränderlich (f(0) f()) ist. Die eigentliche Aufgabe ist es, so wenig Funktionswerte wie möglich zu berechnen. Klassisch muß die Funktion an beiden Stellen ausgewertet werden; mit Hilfe eines verschränkten Zustandes reicht eine Auswertung (Gleichung (3)). Die Beschreibung folgt im wesentlichen [], S. 6f. Der Anfangszustand sei 4 xy = 00 0 + 0 also eine Superposition aller vier Basiszustände, die wir aus der Anwendung einer Hadamard-Transformation auf den Zustand 0 erhalten (Gleichung ()). Zur Auswertung der Funktion verwenden wir die Transformation (z sei ein Hilfs-Qubit) Einstein-Podolsky-Rosen cb(φ) = 0 0 0 0 0 0 0 0 0 0 0 0 e iφ xyz xy, f(x) (3) y, f(x) cn y, y f(x) (4) 3 Quanten-Fourier-Transformation 4 Die Normierung ist im folgenden der Übersicht halber weggelassen. 5

und erhalten: Ψ = x, y f(x) = 0f(0) 0f(0) + f() f() Dabei bedeutet f(x) die Umkehrung des Wertes als Ergebnis der XOR- Verknüpfung im cnot-gatter in Gleichung (4) wie in 3..3 angegeben. Die Eigenschaft von f ergibt zwei Fälle für Ψ : f ist konstant: Ψ = ( 0 + )( f(0) f(0) ) f ist nicht konstant: Ψ = ( 0 )( f(0) f(0) ) Wenden wir auf das erste Qubit die Hadamard-Transformation aus 3.. an, erhalten wir mit dem Ergebnis 0 oder die Antwort auf die eingangs gestellte Frage: 0 : f ist konstant : f ist nicht konstant Es bleibt zu bemerken, daß das richtige Ergebnis mit der Wahrscheinlichkeit gemessen wird, weil sich das erste Qubit nicht in einem Superpositionszustand befindet. 4 Faktorisierung einer Ganzzahl Der Shor-Algorithmus 5 zur Faktorisierung einer ganzen Zahl N ist auf den ersten Blick überraschend: Der Algorithmus basiert auf einer quantenmechanischen Messung an einem Superpositionszustand. Das zufällige Ergebnis erschien bisher noch als Hindernis; hier ist die Auswirkung dieser Messung das wesentliche Element. Eine zweite quantenmechanische Messung macht diesen Algorithmus nicht-deterministisch. Er liefert nur mit einer gewissen Wahrscheinlichkeit einen richtigen Faktor von N. Trotzdem ist die Faktorisierung effizient: Erstens kann das Produkt auf einem klassischen Computer leicht berechnet und mit N verglichen werden, und zweitens konnte Shor zeigen, daß wenige Wiederholungen des Algorithmus mit großer Wahrscheinlichkeit ein richtiges Ergebnis liefern. Grundlage ist aber der Euklidische Algorithmus:. wähle ein a < N, sodaß ggt(a; N) =. berechne f(x) = a x mod N und bestimme die Periodizität r der Ergebnisse 3. berechne mit ggt(a r/ ± ; N) (bis zu) Faktoren von N. Beispiele für verschiedene (N; a) sind in Tabelle angegeben. Klassisch ist die Messung einer Periodizität nicht unproblematisch. Natürlich kann eine diskrete Fourier-Transformation benutzt werden, 5 Auch diese Beschreibung orientiert sich an [], S. 8ff 6

N a r a r/ 5 4 4 6 8 45 7 7.649 43 60.073.74.84 03 0 3 Tabelle : Zahlenbeispiele zum Euklidischen Algorithmus aber deren Berechnung ist ein wenig aufwendig: Es müssen viele Sinusund Cosinus-Werte und viele Multiplikationen mit seriellen Operationen berechnet werden. Im Vergleich dazu ist der QFT-Operator aus Gleichung () bzw. seine Darstellung durch Gatter einfacher. Außerdem erhält man klassisch eine breite Verteilung der Amplituden. Die Funktion f(x) ähnelt einer Sägezahnfunktion, deren Fourier- Transformierte (unendlich) viele Koeffizienten hat. Shor wandelte den Algorithmus ab:. Wähle zusätzlich ein m mit N m < N. Berechne und superponiere f(x), x = 0,,..., m, sodaß das System im Zustand ist. m x=0 x, f(x) 3. Miß in u die letzten log N Bits des zweiten Qubits. u ist aus quantenmechanischen Gründen irgendein Zufallswert von f. Der Wert an sich ist ohne Bedeutung. Wesentlich ist die Auswirkung der Messung: g(x) x, u x Der Zustand des Systems ist nur noch aus Werten für x und u superponiert, für die f(x) = u gilt: g(x) = δ f(x),u Die x Werte unterscheiden sich jetzt nur noch um ein Vielfaches der gesuchten Periode! Wir könnten sie aus zwei aufeinanderfolgenden x-werten bestimmen. Leider verhindert die Messung des ersten Wertes die Messung eines zweiten. 4. Wende eine QFT auf das erste Qubit an. Der Zustand ist jetzt: c j j m r, u j Wenn die Periode r eine Potenz von ist, erhalten wir eine scharfe Verteilung der Amplituden. Für andere r sind die wesentlichen 7

vor DFT nach DFT 0 64 8 9 56 30 384 448 5 Abbildung : Verteilung der Amplituden vor ( ) und nach der QFT Amplituden der Verteilung in der Nähe von Vielfachen von m /r. In Abb. ist für N = ; a = und r = 6 der Zustand vor und nach der QFT aufgetragen. Deutlich zu sehen ist, daß nur die Amplituden in der Nähe von Vielfachen von m /r = 85, 3 ausgeprägt sind. 5. Eine Messung des Zustandes von x ergibt einen Wert v = j m /r. In [] und [] ist beschrieben, wie die Periode r aus v zu berechnen ist. Es bleibt zu prüfen, ob ggt(a r/ ± ; N) > ist. Falls nicht, wiederhole man den Algorithmus, um ein anderes u bzw. v zu erhalten. In diesem Algorithmus wird eine der Möglichkeiten zur Messung an einem Superpositionszustand vorgestellt: Nicht die einzelnen Werte sind von Interesse, nur ihre Gemeinsamkeit. Eine andere Möglichkeit ist, die Amplitude des gewünschten Ergebniszustandes vergrößern zu lassen (z.b. Grover s Datenbank-Suchalgorithmus in [4], S. 8ff und [], S. 8ff). 5 Schluß Wesentlich für eine weitere Entwicklung des Quantencomputing ist der Entwurf maßgeschneiderter Algorithmen, die die Vorteile des parallelen 8

Rechnens nutzen, auch wenn nicht immer eine exponentielle Verbesserung zu erreichen sein wird. Literatur [] E. Rieffel: An Introduction to Quantum Computing for Non- Physicists, arxiv:quant-ph/980906, 998 [] V. Vedral & M. B. Plenio: Basics of quantum computation in Progress in Quantum Electronics, Nr. /998, S. 39 [3] J. Preskill: Quantum Computing: Pro and Con, arxiv:quantph/970503, 997 [4] A. Ekert, P. Hayden & H. Inamori: Basic concepts in quantum computation, arxiv:quant-ph/0003, 000 [5] M. A. Nielsen & I. L. Chuang: Quantum Computation and Quantum Information, Cambridge University Press, 000 9