Dekohärenz und die Entstehung klassischer Eigenschaften aus der

Werbung
Dekohärenz
und die Entstehung klassischer Eigenschaften
aus der Quantenmechanik
G. Mahler
Spezialvorlesung SS 2006
27. 4. 2006
Einführung und Übersicht
Warum und in welchem Sinn ist Kohärenz »untypisch«?
04. 5. 2006
Zur Begründung der Thermostatistik aus der Quantenmechanik
11. 5. 2006
Dekohärenz: Dynamik offener Systeme
18. 5. 2006
Coarse graining und der Zeitpfeil
1. 6. 2006
Quantenthermodynamische Maschinen
22. 6. 2006
Nichtgleichgewicht: Zum Problem der Wärmeleitung
29. 6. 2006
Fluktuationstheoreme
6. 7. 2006
Messprozesse und stochastische Entfaltung
13. 7. 2006
Nanomechanik
20. 7. 2006
Physik und Information: Maxwells Dämon u. a.
27. 7. 2006
Quantencomputing versus klassische Rechner
Literatur
D. Giulini et. al:
J. Gemmer et. al:
H. P. Breuer et. al:
Decoherence and the appearence of a classical world in quantum
theory, Springer
Quantum Thermodynamics, Springer
The theory of open quantum systems, Oxford
Quantencomputing
versus klassische Rechner
Harry Schmidt, 27. Juli 2006
1 Anwendungen für Quantencomputer
1.1 Der Deutsch-Josza-Algorithmus
Es gibt nur vier binäre Funktionen einer einbittigen Variablen, siehe Tabelle 1. Eine solche Funktion wird constant genannt, wenn beide Ausgaben gleich
sind, ansonsten heißt sie balanced. Um bei einer gegebenen, aber unbekannten
Funktion herauszufinden, ob sie constant oder balanced ist, muss ein klassischer Computer die Funktion zwei Mal aufrufen. Ein Quantencomputer mit
dem Deutsch-Algorithmus benötigt hingegen nur einen Funktionsaufruf.
Eine Verallgemeinerung dessen stellt eine binäre Funktion einer Eingabevariaben mit n Bits dar, von der man nur weiß, dass sie entweder constant oder
balanced ist. Ein klassischer Algorithmus braucht im schlechtesten Fall 2n /2+1
Aufrufe der Funktion, während ein Quantencomputer mit dem Deutsch-JoszaAlgorithmus nur genau einen Aufruf benötigt.
1.2 Der Grover-Algorithmus
Der Grover-Algorithmus ist eine Methode, um Einträge in unsortierten Datenbanken effizient zu suchen. Ein klassischer Algorithmus benötigt im Mittel n/2
Abfragen der Datenbank um einen Eintrag zu finden (bei n√Einträgen). Der
Quanten-Suchalgorithmus nach Grover braucht dafür nur O( n) Schritte. Der
Geschwindigkeitsvorteil ist hier lediglich polynomial.
Tabelle 1: Binäre Funktionen einer einbittigen Variablen.
f (0) f (1)
f1
f2
f3
f4
0
1
0
1
0
0
1
1
1
constant
balanced
balanced
constant
1.3 Der Shor-Algorithmus
Der Shor-Algorithmus verwendet die Fouriertransformation, um Zahlen in ihre
Primfaktoren zu zerlegen. Die Zahl der Operationen zur Faktorisierung einer
Zahl n mit dem besten bekannten klassischen Algorithmus steigt exponentiell
mit n an. Ein Quantencomputer hingegen benötigt nur O(n2 ) Schritte, was
einen exponentiellen Geschwindigkeitsvorteil bedeutet.
1.4 Simulation von Quantensystemen
Bei der Simulation quantenmechanischer Systeme auf einem klassischen Rechner steigt allein schon der Speicherbedarf für alle Amplituden exponentiell mit
der Teilchenzahl an. Der Zustand von n Zweiniveauatomen wird durch 2n Amplituden beschrieben. Ein Quantencomputer dagegen bräuchte nur n Qubits
um dieses System zu modellieren.
Allerdings geht bei einer Messung der größte Teil dieser Information verloren,
da man nur n Bits an Information erhält. Dieses Problem muss noch gelöst werden, bevor Quantencomputer wichtige Werkzeuge bei der Quantensimulation
werden können.
2 Komplexitätsklassen
Algorithmisch lösbare Probleme werden danach klassifiziert, wie der Algorithmus zu ihrer Lösung mit der Größe des Problems skaliert (beispielsweise mit
der Größe der Eingabe). Die klassische Suche in unsortierten Datenbanken
skaliert beispielsweise polynomial (linear) mit der Größe der Datenbank. Diese Einführung wird sich auf Probleme beschränken, bei denen der Speicherbedarf höchstens polynomial mit der Eingabegröße wächst. Die Komplexitätsklasse dieser Probleme heißt PSPACE. Der Speicherbedarf von PSPACEProblemen ist »gering«. Im Folgenden werden einige ausgewählte Untermengen von PSPACE vorgestellt.
Die Klasse der Probleme, bei denen die Zeit zur Lösung höchstens polynomial mit der Problemgröße wächst, heißt P wie polynomial time. Probleme dieser
Klasse können von einem klassischen Rechner effizient gelöst werden.
Die Klasse der Probleme, bei denen man eine gegebene mögliche Lösung
effizient (d. h. in Polynomialzeit) überprüfen kann, heißt NP wie nondeterministic polynomial time. Mit einem nichtdeterministischen Algorithmus kann
man mögliche Lösungen zufällig raten und überprüfen. Offensichtlich ist P eine Untermenge von NP. Es ist allerdings noch nicht klar, ob NP tatsächlich
2
Probleme enthält, die nicht auch in P sind. Eine der wichtigsten Fragen der
modernen Mathematik bzw. der theoretischen Informatik ist, ob
?
P 6= NP.
Es gibt eine wichtige Untermenge von Problemen in NP, auf die alle anderen Probleme in NP effizient (also über Polynomialzeitalgorithmen) abgebildet werden können. Die Probleme in dieser Untermenge heißen NP-vollständig.
Wenn P 6= NP sein sollte, dann können NP-vollständige Probleme nicht effizient auf klassischen Rechnern gelöst werden.
Die Klasse der Probleme, die auf einem Quantencomputer effizient (d. h. in
Polynomialzeit) gelöst werden können, heißt BQP (bounded error quantum
polynomial, auf die Bedeutung von bounded error soll hier nicht eingegangen
werden).
PSPACE
NP
BQP?
P
PSfrag replacements
Abbildung 1: Vermuteter Zusammenhang der Komplexitätsklassen P, NP, BQP
und PSPACE. Quantencomputer können sicher alle Probleme in P effizient lösen,
weiterhin ist bekannt, dass sie keine Probleme außerhalb von PSPACE effizient
lösen können. Wie genau BQP zwischen P und PSPACE passt, ist noch nicht
klar, zum Teil schon deshalb, weil noch nicht erwiesen ist, ob PSPACE tatsächlich
größer ist als P [1].
3
Tabelle 2: Einige physikalische Realisierungen von Qubits [2].
Quantensystem
physikalische Eigenschaft
Photon
Atomkern
Elektron
Zweiniveausystem
Josephson-Kontakt
Supraleitender Ring
Polarisierung
Spin
Spin
Anregungszustand
Elektrische Ladung (Zahl der Cooperpaare)
Magnetischer Fluss (hoch/runter)
3 Grundlegende Konzepte des Quantencomputers
3.1 Qubits
Klassische Computer speichern in binären Einheiten (Bits), die die logischen
Werte 0 und 1 annehmen können. In Analogie dazu speichern Quantencomputer Information in Quantenbits, kurz Qubits. Der wesentliche Unterschied zu
klassischen Bits ist, dass Qubits nicht nur 0 und 1, sondern beliebige Überlagerungen dieser Zustände speichern können. In Dirac-Notation lautet der
allgemeine Zustand eines Qubits also
|ψi = c0 |0i + c1 |1i .
|0i und |1i müssen orthogonale und normierte Zustände sein. Aus der Normierbarkeit von |ψi folgt |c0 |2 + |c1 |2 = 1.
Eine experimentelle Realisierung eines Qubits besteht aus einem Quantensystem mit zwei relevanten Niveaus. Tabelle 2 gibt einige Beispiele.
3.2 Quantenregister
Mehrere Qubits zusammen bilden ein Quantenregister. Der Zustand eines Registers von zwei Qubits lautet allgemein
|ψi = c00 |00i + c01 |01i + c10 |10i + c11 |11i .
(1)
Die hier verwendete Produktbasis wird auch computational basis genannt. Zur
Beschreibung eines n-Qubit-Registers werden 2n komplexe Amplituden cijk...
benötigt. Da die Information in diesen Amplituden gespeichert wird, wächst
sie exponentiell mit der Größe des Quantenregisters. Allerdings ist die Information versteckt, und ein großer Teil davon geht bei einer Messung verloren.
Solange der Quantencomputer isoliert arbeitet, bleibt die komplette Information erhalten.
4
..
.
q10
q20
..
.
qn
q30
..
.
..
.
Messung
q1
q2
q3
Quantennetzwerk
Zustandspräparation
PSfrag replacements
qn0
Abbildung 2: Schematische Arbeitsweise eines Quantencomputers.
3.3 Grundlegende Arbeitsweise
Abbildung 2 zeigt ein schematisches Blockdiagramm zur Arbeitsweise eines
Quantencomputers. Das Quantennetzwerk besteht aus einer Reihe von unitären Transformationen (Gattern). Der Quantencomputer arbeitet daher reversibel (klassische Rechner vernichten meist Information während der Arbeit).
Jede beliebige unitäre Transformation kann aus Ein- und Zweiqubit-Gattern
zusammengesetzt werden. Einen Satz aus Gattern, aus dem jedes andere Gatter zusammengesetzt werden kann, nennt man einen universalen Satz.
3.4 Ein universaler Satz von Gattern
Alle Transformationen können aus mehreren Einqubit- und einem ZweiqubitGatter zusammengesetzt werden. Ein möglicher universaler Satz soll hier vorgestellt werden.
Einqubit-Gatter
Alle Gatter werden in der Basis {|0i , |1i} dargestellt.
• NOT:
X̂ =
0 1
1 0
= σ̂x
Das NOT-Gatter invertiert |0i und |1i.
• Phase:
Ûϕ =
1 0
0 eiϕ
Ein spezielles Phasengatter ist das Z Gatter mit ϕ = π.
5
• Hadamard:
1 1 1
Ĥ = √
2 1 −1
Das Hadamard-Gatter erzeugt Überlagerungen aus den reinen Zuständen |0i und |1i.
Zweiqubit-Gatter
Es wird die in (1) vorgestellte Produktbasis verwendet.
• CNOT:
ÛCNOT

1
0
=
0
0
0
1
0
0
0
0
0
1

0
0

1
0
Bei der Anwendung von CNOT wird das zweite Qubit genau dann invertiert, wenn das erste Qubit im Zustand |1i ist. CNOT heißt controlled
not.
PSfrag replacements
4 Der Deutsch-Algorithmus
Als Beispiel für einen Quantenalgorithmus wird hier der Deutsch-Algorithmus
vorgestellt, siehe auch Abschnitt 1.1. Abbildung 3 zeigt das zugehörige Quantennetzwerk.
Als Anfangszustand wird
|ψ0 i = |0, 1i
Ausgabe
Eingabe
q1 = |0i
Ĥ
x
x
Ĥ
Ûf
q2 = |1i
Ĥ
↑
|ψ0 i
y
y ⊕ f (x)
↑
|ψ1 i
↑
|ψ2 i
↑
|ψ3 i
Abbildung 3: Quantennetzwerk für den Deutsch-Algorithmus.
6
verwendet. Nach Anwendung der beiden Hadamard-Gatter erhält man für die
transformierten Qubits x und y
1
x = Ĥ · q1 = √ (|0i + |1i),
2
1
y = Ĥ · q2 = √ (|0i − |1i)
2
und somit für den Gesamtzustand
1
1
|ψ1 i = (|0i + |1i) ⊗ (|0i − |1i) = (|0, 0i − |0, 1i + |1, 0i − |1, 1i).
2
2
Der unitäre Operator Ûf belässt das erste Qubit unverändert. Auf das zweite
Qubit wird die Operation y ⊕ f (x) ausgeführt, wobei ⊕ die Addition modulo
zwei bedeutet (XOR). Nach der Anwendung von Ûf erhält man
1
|ψ2 i = (|0, f (0)i − |0, 1 ⊕ f (0)i + |1, f (1)i − |1, 1 ⊕ f (1)i .
2
Für f (x) constant ist f (0) = f (1) und somit
1
|ψ2const i = (|0, f (0)i − |1, 1 ⊕ f (0)i + |1, f (0)i − |1, 1 ⊕ f (0)i) =
2
1
= (|0i + |1i) ⊗ (|f (0)i − |1 ⊕ f (0)i).
2
Der Ausgabezustand nach dem abschließenden Hadamard-Gatter ist also
1
|ψ3const i = |0i ⊗ √ (|f (0)i − |1 ⊕ f (0)i).
2
Eine Messung am ersten Qubit ergibt dann sicher den Wert 0.
Für f (x) balanced ist f (1) = 1 ⊕ f (0) und somit
1
|ψ2bal i = (|0, f (0)i − |0, 1 ⊕ f (0)i + |1, 1 ⊕ f (0)i − |1, f (0)i) =
2
1
= (|0i − |1i) ⊗ (|f (0)i − |1 ⊕ f (0)i).
2
Hier ist der Ausgabezustand nun
1
|ψ2bal i = |1i ⊗ √ (|f (0)i − |1 ⊕ f (0)i).
2
In diesem Fall ergibt eine Messung am ersten Qubit sicher den Wert 1.
Hier kann also allein die abschließende Messung des ersten Qubits entscheiden, ob die Funktion constant oder balanced ist.
7
5 Woher kommt die Rechenleistung
Klassisch kann ein n-Qubit-Register genau eine von 2n Zahlen speichern. Ein
Quantenregister kann dagegen eine beliebige Überlagerung aller dieser Zahlen
speichern. Auch klassisch kann man Register herstellen, die Überlagerungen
speichern können: Stellt man die Zahl N durch
100
. . . 0}
| {z
N
dar, dann sind Überlagerungen möglich. Dafür benötigt man jedoch ein exponentiell größeres Register.
Klassisch sind so Überlagerungen der Zustände von nur einem (linearen)
System möglich. In der Quantenmechanik können die Zustände verschiedener
Teilchen überlagert werden, man erhält Verschränkung.
Zur Simulation eines Quantencomputers auf einem klassischen Rechner müssen im Allgemeinen exponentiell viele Rechenschritte ausgeführt werden, wenn
der Zustand des Quantencomputers verschränkt ist. Sei Û eine Transformation
auf nur das erste Qubit eines Registers:
|αi =
X
X
Û
ai1 ...in |i1 i · · · |in i −→
a0i1 ...in |i1 i · · · |in i ,
X
Ui1 ,j1 aj1 ,i2 ...in .
a0i1 ...in =
j1
Hingegen kann die Transformation klassisch effizient simuliert werden, wenn
Produktzustände durch sie wieder in Produktzustände überführt werden.
Simulierbarkeit bei beschränkter Verschränkung
Wenn bei jedem Arbeitsschritt eines Quantencomputers Blöcke von höchstens p Teilchen verschränkt sind (die Zusammensetzung dieser Blöcke darf sich
bei jedem Arbeitsschritt ändern, p muss unabhängig von der Zahl der Qubits n
sein), dann kann der Quantencomputer klassisch simuliert werden [3].
Damit ein Quantencomputer einen Geschwindigkeitsvorteil gegenüber einem klassischen Rechner bietet, muss der verwendete Algorithmus also unbeschränkte Verschränkung im Register erzeugen. Dies ist beispielsweise für
den Shor-Algorithmus der Fall. Diese Erkenntnis, die hier ohne Beweise angeführt sein soll, zeigt, dass Verschränkung eine wichtige Ressource für den
Quantencomputer ist. Es muss jedoch hinzugefügt werden, dass dies nur für
Quantencomputer gilt, die ausschließlich mit reinen Zuständen arbeiten.
8
6 Quantencomputing mit gemischten Zuständen
Die Präparation des Anfangszustands ist nie perfekt. Tatsächlich liegt kein
reiner Zustand vor, sondern ein gemischter.1 Dass auch mit solchen Zuständen
gearbeitet werden kann, soll hier gezeigt werden.
6.1 Werner-Zustände
Werner-Zustände sind gemischte Zustände der Form
1
ρ̂ = (1 − ε) 1̂ + ε |ψihψ| ,
d
(2)
d ist dabei die Dimension des Hilbertraums (bei n Qubits ist d = 2n ), |ψi ein
reiner Zustand und 0 ≤ ε ≤ 1 ein Parameter, der angibt, wie gemischt ρ̂ ist.
Ein Zweiniveausystem bei hohen Temperaturen ist automatisch in guter
Näherung in einem Werner-Zustand:
e−βE1 β∆E
1 −βE0
e
|0ih0| + e−βE1 |1ih1| =
e
|0ih0| + |1ih1|
Z
Z
−βE1
e
≈
(1 + β∆E) |0ih0| + |1ih1|
Z
= const |0ih0| + |1ih1| +β∆E |1ih1| .
|
{z
}
ρ̂th =
1̂
6.2 Quantencomputing mit Werner-Zuständen
Wende eine beliebige unitäre Transformation Û auf ρ̂ aus (2) aus:
ρ̂ −→ ρ̂0 = Û ρ̂Û † = (1 − ε)
1
1̂ + εÛ |ψihψ| Û † .
2n
Es können also alle Gatter wie von reinen Zuständen gewohnt ausgeführt werden. Das Ergebnis ist allerdings ein gemischter Zustand, daher sind i. d. R.
mehrere Durchläufe des Algorithmus mit anschließender Messung nötig, um
das gewünschte Ergebnis zu erhalten.
1
Dekohärenz kann dazu führen, dass der Zustand während der Arbeit des Quantencomputers noch weiter gemischt wird. Das soll hier nicht betrachtet werden.
9
6.3 Separable Zustände
Separable Zustände sind eine Verallgemeinerung der Produktzustände. Sie sind
nicht verschränkt, können allerdings klassische Korrelationen zwischen den Teilsystemen beinhalten. Ein Zustand zweier Teilchen (Hilbertraum H = H1 ⊗H2 )
heißt separabel, wenn er in der Form
ρ̂sep =
k
X
i=1
(1)
(2)
pi ρ̂1 ⊗ ρ̂1
mit beliebigem k schreibbar
ist. Entsprechend heißt ein Zustand vieler Teilchen
N
(Hilbertraum H = ν Hν ) separabel, wenn er als
X O (ν) pi
ρ̂sep =
ρ̂i
ν
i
geschrieben werden kann.
Der Werner-Zustand (2) von n Zweiniveausystems (d = 2n ) ist unabhängig
von |ψi sicher separabel, wenn
ε<
1
,
4n
also insbesondere auch bei verschränktem |ψi. Hier scheint Verschränkung also
keine notwendige Ressource für Quantencomputing mehr zu sein.
6.4 Quantencomputer mit separablen Zuständen klassisch
effizient simulierbar?
Ein separabler Zustand ist immer darstellbar als Gemisch von Produktzuständen |φi i:
X
ρ̂sep =
pi |φi ihφi | .
i
Quantencomputing mit Produktzuständen ist klassisch effizient simulierbar
(siehe Abschnitt 5). Nach der Anwendung eines Gatters Û mit |ηi i = Û |φi i
erhält man einen neuen Gesamtzustand,
X
ρ̂0 =
pi |ηi ihηi | .
i
Für ε klein genug ist nun auch ρ̂0 sicher separabel. Die Zustände |ηi i sind dies
allerdings nicht mehr notwendigerweise. Um klassisch effizient simulieren zu
10
können, müssen zunächst wieder Produktzustände gefunden werden, aus denen ρ̂0 aufgebaut werden kann. Das ist im Allgemeinen nicht effizient möglich.
Es scheint also so, als ob Verschränkung nicht zwangsläufig nötig ist für einen
exponentiellen Geschwindigskeitsvorteil beim Quantencomputer. Der Beweis
dafür steht jedoch noch aus.
Literatur
[1] Nielsen, Chuang: Quantum Computation and Quantum Information (Cambridge University Press, 2000)
[2] Fox: Quantum Optics (Oxford University Press, 2006)
[3] Jozsa, Linden, e-print: quant-ph/0201143, 2002
11
Herunterladen