Quantencomputer mit Quantenpunkten

Werbung
Quantencomputer mit
Quantenpunkten
Spintronik-Seminar Wintersemester 2008/2009
Skript zum Vortrag
12. Februar 2009
Mathias Hayn
Inhaltsverzeichnis
1 Quantenpunkte
1.1 Was sind Quantenpunkte . . . . . . . . . . . . . . . . . . . .
1.2 Eigenschaften und Anwendungen . . . . . . . . . . . . . . . .
1.3 Herstellungsverfahren . . . . . . . . . . . . . . . . . . . . . .
2 Quantencomputer
2.1 Einführung . . . . . . . . . . . . . . . .
2.2 Quantengatter . . . . . . . . . . . . . .
2.3 Quantenalgorithmen . . . . . . . . . . .
2.4 Implementierungen . . . . . . . . . . . .
2.5 Quantencomputer mit Quantenpunkten
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
2
3
5
5
8
10
13
16
3 Ausblick
18
4 Literaturempfehlung
19
1
1.1
Quantenpunkte
Was sind Quantenpunkte
Beschränkt man die Bewegung der Ladungsträger in einem Festkörper in
einer Raumrichtung, so führt dies zu deutlichen Veränderungen der elektronischen Eigenschaften des Systems. Eine Einschränkung in einer Raumdimension hat ein zweidimensionales System zur Folge, was als Quantenfilm
bezeichnet wird. Entsprechend führt eine Einschränkung in zwei Dimensionen zu einem eindimensionalen System: dem Quantendraht. Denkt man
noch einen Schritt weiter, so kann man die Bewegungsfreiheit der Elektronen
in allen drei Raumdimensionen einschränken. Man hat es dann mit einem
nulldimensionalen quantenmechanischen System zu tun, einem sogenannten Quantenpunkt (siehe Abbildung 1). In der Praxis ist ein Quantenpunkt
aber kein Punkt im mathematischen Sinne, sondern hat Abmessungen von
einigen 10 - 100 nm.
1
3D
2D
1D
0D
Abbildung 1: Veranschaulichung der dimensionsreduzierten Festkörpersysteme. Von links: Volumenfestkörper, Quantenfilm, Quantendraht, Quantenpunkt.
1.2
Eigenschaften und Anwendungen
Was unterscheidet Quantenpunkte von normalen (Volumen-) Festkörpern?
Erweitern wir die Fragestellung auf alle drei niederdimensionalen Festkörpersysteme Quantenpunkt, Quantendraht und Quantenfilm. Es gibt eine Größe
in der Festkörperphysik, welche eine große Bedeutung für die EigenschafP
ten des Festkörpers hat: die Zustandsdichte ρ(E) = n,k,σ δ (E − nσ (k)),
mit der Energierelation nσ (k) der Elektronen im n-ten Band, der Spineinstellung σ und dem Kristallimpuls k. δ(E) ist die Deltafunktion. Für ein
dreidimensionales freies Elektronengas verhält sich die Zustandsdichte wie
√
ρ(E) ∝ E
(3D).
Im Gegensatz dazu sind die Zustandsdichten der entsprechenden niederdimensionalen Systeme
(2D) ρ(E) ∝ konst.,
(1D) ρ(E) ∝ (E − Ei )−1/2 ,
(0D) ρ(E) ∝ δ (E − Ei ) ,
wobei Ei quantisierte Energieniveaus sind, welche aus den zusätzlichen Quantisierungen in den Raumrichtungen resultieren. Eine grafische Darstellung
befindet sind in Abbildung 2. Dass die Zustandsdichte eines Quantenpunktes
sich wie eine Deltafunktion verhält bedeutet, dass es diskrete Energieniveaus
gibt. Man bezeichnet Quantenpunkte daher auch als künstliche Atome.
Die Energieniveaus Ei des Quantenpunkts haben ihren Ursprung aus
der gleichen Quantisierungsbedingung wie beim quantenmechanischen Potentialtopf. Dies bedeutet, dass die Lage der Energieniveaus durch die Größe des Quantenpunktes eingestellt werden kann. Diese Freiheit drückt man
gern in der Bezeichnung Designer-Atom“ aus. Dies lässt sich besonders bei
”
Elektroden-Quantenpunkten verwirklichen (siehe unten).
Oft kann der Einschluss von Elektronen in einem Quantenpunkt in xyRichtung gut durch ein parabolisches Potential und damit mit dem quantenmechanischen Harmonischen Oszillator modelliert werden. Wenn man
2
annimmt, dass
q die Ausdehnung des Quantenpunktes ungefähr der Oszillah̄
≈ 10 nm entspricht, dann haben die Energieniveaus einen
torlänge ` = mω
Abstand von
h̄2
∆E =
= 11 meV = 132 K kB .
m`2
Hier haben wir die effektive Masse eines Elektrons in GaAs eingesetzt:
m = 0, 067me , mit me der Elektronenmasse. Dies bedeutet, dass Quantenpunkte auf entsprechend tiefen Temperaturen gehalten werden müssen.
Denn ist die thermische Energie größer, als der Abstand der Energieniveaus,
so sind die vormals diskreten Energieniveaus bedeutungslos. Des Weiteren
dürfen auch die einzelnen Quantenpunkte eines Ensembles von Quantenpunkten nicht allzusehr in ihrer Größe variieren, da sich sonst die Energieniveaus der einzelnen Quantenpunkte unterscheiden und es insgesamt zu einer
inhomogenen Verbreiterung der Zustandsdichte kommt.
Anwendung finden Quantenpunkte z. B. als aktives Medium in DiodenLasern. Diese Laser weisen eine sehr kleine Schwellenstromdichte und eine
geringe Temperaturabhängigkeit des Schwellenstroms auf [Ardenne et al.,
2005]. Eine weitere Anwendung beruht auf dem Coulombblockade-Effekt.
Wenn man die Größe des Quantenpunktes mit einer passenden Gate-Spannung anpasst, so hat immer nur ein Elektron Platz“ in einem Quantenpunkt.
”
Dies modifiziert wesentlich den Stromtransport und bildet die Grundlage für
einen Einzelelektronentransistor, welcher das Herzstück einer miniaturisierten Elektronik sein könnte [Ardenne et al., 2005].
Neben weiteren Anwendungen sollen für uns vor allem Quantenpunkte
als Qubit in einem Quantencomputer von Interesse sein. Dazu im zweiten
Abschnitt mehr. Zunächst noch ein paar Worte zur Herstellung von Quantenpunkten.
1.3
Herstellungsverfahren
Es gibt eine ganze Reihe von Herstellungsverfahren. Drei sollen hier kurz
vorgestellt werden. Siehe auch [Jacak et al., 1998].
Die erste Methode [Reed, 1993], mit welcher 1987 das erste Mal Quantenpunkte hergestellt wurden, beruht auf einer Kombination von Maskierungs- und Ätzschritten. Man beginnt mit einer Probe, welche einen parallel zur Oberfläche liegenden Quantenfilm (also ein auf zwei Dimensionen
eingeschränktes Quantensystem, s. o.) enthält. Die Oberfläche der Probe selber ist mit einer Polymer-Maske überzogen. Der erste Schritt besteht darin,
die Oberfläche an der Stelle, wo sich der noch herzustellende Quantenpunkt
befinden soll, mit einem Elektronen- oder Ionenstrahl zu bestrahlen. Die
Polymer-Maske wird an der vom Elektronenstrahl markierten Stelle entfernt. Danach wird die gesamte Oberfläche mit einem dünnen Metallfilm
überzogen. Mit einer speziellen Lösung wird nun überall die Polymer-Maske
3
ρ
E
Abbildung 2: Zustandsdichte von Volumenfestkörper (orange), Quantenfilm (blau), Quantendraht (grün) und
Quantenpunkt (rot).
Abbildung 3: Realisierung eines Quantenpunktes mittels lithographisch aufgebrachter Elektroden. Aus [Reed,
1993].
und der Metallfilm entfernt, außer in dem Bereich, der durch den Elektronenstrahl markiert wurde. Wir haben nun eine Halbleiteroberfläche, auf
der sich an einer Stelle ein Metallpunkt befindet. Im letzten Schritt werden
einige Lagen der Probe durch reaktive Ionen weggeätzt. Und zwar bis unterhalb der Tiefe, in der sich der Quantenfilm befindet. Das Metall schützt die
Oberfläche unter sich vor diesem Ätzvorgang. Am Ende haben wir einen einige Nanometer ausgedehnten Turm, in welchem der Quantenfilm auf einen
Quantenpunkt reduziert wurde. Eine sehr gute Veranschaulichung befindet
sich in [Reed, 1993]. Mit diesem Verfahren erhält man Quantenunkte in
xy-Richtung von ca. 10 - 100 nm, in z-Richtung von ca. 10 nm Größe.
Die zweite Methode besteht darin, dass man mittels lithographischer
Technik miniaturisierte Elektroden über einen Quantenfilm platziert
[Jacak et al., 1998]. Das Anlegen einer Spannung erzeugt dann ein räumlich variierendes elektrisches Feld, dass die Elektronen in einen kleinen Raumbereich konzentriert (siehe Abbilung 3). Mit diesem Verfahren lassen sich
einzelne als auch ganze Matrizen von Quantenpunkten herstellen (es sind
Proben mit mehr als 1 Mio. Quantenpunkten herstellbar). Der große Vorteil
dieser Methode ist, dass sich über die Elektrodenspannung die Parameter
des Quantenpunktes, wie seine Größe und die Anzahl der in ihm gefangenen Elektronen einstellen lässt. Für Quantencomputer werden diese Art von
Quantenpunkten verwendet.
Das dritte Verfahren nennt sich selbstorganisiertes Wachstum
[Jacak et al., 1998]. Man hat einen Kristall, auf welchen man ein Substrat
aufbringt. Wenn sich die Gitterkonstante des Substrates von der des Kristalls
unterscheidet, so wachsen die ersten Monolagen orientiert jedoch unter Spannung mit der Gitterkonstanten des darunterliegenden Kristalls auf. Bei den
4
häufig Verwendung findenden InAs auf GaAs Systemen beträgt der Unterschied in der Gitterkonstanten 7%. Ab einer bestimmten kritischen Dicke
sorgt die Spannung in den Lagen für einen Zusammenbruch des geordneten
Wachstums. Eine andere Formulierung ist, dass die Oberflächenergie minimiert werden muss und es irgendwann zu einem Phasenübergang kommt.
Dieser wird als Stranski-Krastanow Phasenübergang bezeichnet. Es kommt
zur Herausbildung von zufällig angeordneten Inseln - den Quantenpunkten
- von gleicher Größe und ähnlicher Form. Diese beiden Eigenschaften sind
durch den Unterschied in den Gitterkonstanten von Substrat und Kristall,
der Temperatur und der Wachstumsrate bestimmt. Die Formen der Quantenpunkte reichen von Linsen bis Pyramiden. Die Größe liegt im Bereich
von wenigen nm in z-Richtung und wenigen 10 nm in xy-Richtung. Diese
kleinen Ausdehnungen sind ein Vorteil des Verfahren neben der homogenen
Größe und Form der Quantenpunkte auf einer makroskopischen Probe.
2
Quantencomputer
2.1
Einführung
Quanten Computing ist die bekannte (klassische) Informationsverarbeitung
auf Grundlage der Quantenmechanik. Die kleinste Grundeinheit ist nicht
mehr das Bit, welches durch Spannung aus oder ein (0 oder 1) charakterisiert
wird, sondern der Zustand eines quantenmechanischen zwei-Niveau Systems.
Doch wieso verlegt man die Informationstechnik in die Quantenwelt? Hierfür
gibt es drei verschiedene Gründe
1. Zum einem werden die Komponenten auf einem Computerchip immer
kleiner, so dass diese im Jahr 2020 Ausmaße von der Größe einzelner
Atome haben werden [Homeister, 2008]. Hier gelten die Gesetze der
klassischen Elektrodynamik nicht mehr. Dadurch ist man gezwungen
die Quantenmechanik bei der Konstruktion solcher Bauelemente mit
einzubeziehen. Siehe auch [Stolze und Suter, 2004].
2. Zum anderen kann man mittels Quantenalgorithmen klassisch nur
schwer lösbare Probleme effizienter lösen. Dies bedeutet, das für bestimmte Problemstellungen die Laufzeiten von Quantenalgorithmen
sehr viel kürzer sind, als ihre klassischen Gegenstücke.
3. Zuletzt erhofft man sich die effiziente Simulation von VielteilchenQuantensystemen. Dies geht auf zwei Paper von Feynman zurück
[Feynman, 1982]. So kann man beispielsweise mit Hilfe eines BoseEinstein-Kondensates in einem optischen Gitter Festkörpersysteme simulieren.
Wie bereits gesagt, wird die kleinste Informationseinheit beim Quanten
Computing durch ein quantenmechanisches zwei-Niveau System dargestellt.
5
Einem Niveau wird der klassischen Bit-Wert 0 zugeordnet, dem anderem
der klassische Bit-Wert 1. In Analogie zum klassischen Bit spricht man
dann von einem Qubit 1 . Für die Darstellung eines Qubits benutzt man
die Dirac-Notation. Ein Qubit kann damit die klassischen Bit-Werte |0i und
|1i aufweisen.
Beispiele für quantenmechanische Zwei-Niveau Systeme, mit denen sich
ein Qubit realisieren lässt, sind:
• Der Polarisationszustand eines Photons liefert zwei zueinander orthogonale Zustände. Hier kann man entweder vertikal und horizontal oder
links-zirkular und rechts-zirkular polarisiertes Licht als Basiszustände
des Zwei-Niveau Systems wählen. Die Messung des Qubits erfolgt mittels eines polarisierenden Strahlteilers (siehe Abbildung 4).
• Ein Beispiel aus der Atomphysik sind die Zustände eines Atoms. Da
ein Atom mehr als nur zwei Niveaus besitzt, wählt man z. B. zwei
Zustände aus der Hyperfeinaufspaltung des Grundzustandes aus (siehe
Abbildung 5). |gi und |ei bilden dann die zwei Zustände des Qubits.
• Das einfachste Zwei-Niveau-System das man sich vorstellen kann, ist
ein Spin 1/2 Teilchen in einem Magnetfeld. Die Zustände |0i und |1i
des Qubits werden dann in die zwei möglichen Ausrichtungen des Spins
relativ zum Magnetfeld codiert.
Hyperfeinzustände
-2
-1
0
1
-1
0
1
2
F=2
F=1
Abbildung 5: Auswahl zweier NiAbbildung 4: Messung der Polarisa- veaus aus der Hyperfeinaufspaltung
des Grundzustandes eines Atoms.
tion eines Photons.
Im Gegensatz zu einem klassischen Bit kann sich ein Qubit ganz allgemein in einer Superposition der beiden Zustände |0i und |1i befinden:
|ψi = α |0i + β |1i ,
1
Man findet in der Literatur auch die Bezeichnung Qbit, also ohne das u“ hinter dem
”
Q“. Gemeint ist aber in beiden Fällen das gleiche. Konsequenter ist vielleicht Qbit, da
”
man für das klassische Bit auch die Bezeichnung Cbit benutzt; siehe z. Bsp. [Mermin,
2002].
6
mit der Normierungsbedingung |α|2 + |β|2 = 1. Dabei ist α |0i + β |1i ein
gleichwertiger Zustand neben |0i und |1i. Der Unterschied besteht nur in der
verwendeten Basis (siehe Beispiel zur Polarisation des Photons oben). Diese
Superposition ist eine grundlegende Neuerung im Quanten Computing
und hat keinerlei Analogon bei klassischen Computern. Wir werden noch
weiter unten sehen, dass die Superposition ein entscheidender Eckpfeiler ist,
der die Stärke des Quanten Computing ausmacht.
Da man in den seltensten Fällen mit nur einem einzigen Qubit auskommt
führt man sogenannte Quantenregister ein. Diese sind einfach eine Vereinigung aus mehreren Qubits. Mathematisch handelt es sich bei einem Quantenregister um ein Tensorprodukt einzelner Qubits. Haben wir ein Quantenregister bestehend aus zwei Qubits, die beide im Zustand |0i sind, so schreibt
man
|0i ⊗ |0i .
Abkürzend schreibt man auch
|0i ⊗ |0i ≡ |0i |0i ≡ |00i ≡ |0i ,
wobei in der letzten Darstellung der Dezimalwert der beiden Qubits steht.
Seien also x0 bis xN −1 die Werte 0 oder 1 der einzelnen Qubits, dann ist
|xN −1 i ⊗ . . . ⊗ |x1 i ⊗ |x0 i = |xN −1 i . . . |x1 i |x0 i
= |xN −1 . . . x1 x0 i
(1)
E
= xN −1 · 2N −1 + . . . + x1 · 21 + x0 · 20 .
Ein konkretes Beispiel soll dies verdeutlichen:
E
|011i = 0 · 22 + 1 · 21 + 1 · 20 = |3i .
Auch bei Quantenregistern ist eine Superposition möglich: α |010i +
β |101i. Mit Hilfe der Superposition können wir z. B. die C-Zahlen von null
bis sieben auf einmal in einem 3-Qubit Quantenregister speichern
|0i + |1i + |2i + |3i + |4i + |5i + |6i + |7i =
7
X
x=0
|xi .
Bei den Quantenregistern tritt auf Grund der Superposition eine weitere rein
quantenmechanische Eigenschaft zu Tage: die Verschränkung. Nehmen wir
den Zustand |00i+|01i. Dieser lässt sich auch schreiben als |0i⊗(|0i + |1i) =
|ψi ⊗ |φi, d. h. als Tensorprodukt zweier einzelner Qubits. Bei verschränkten Quantenregistern ist diese Aufspaltung in ein Tensorprodukt einzelner
Qubits nicht möglich. Ein Beispiel ist einer der sogenannten Bell-Zustände
q
1
2 (|00i + |11i) 6= |ψi ⊗ |φi. Speziell die Bellzustände sind in der Quantenkommunikation von großer Bedeutung. Allgemein sind verschränkte Zustände für das gesamte Quanten Computing sehr wichtig. Es sei noch angemerkt,
dass nahezu alle Zustände im Produkthilbertraum verschränkte Zustände
sind.
7
2.2
Quantengatter
Kommen wir nun sozusagen zur Dynamik der Quantencomputer: Den Quantengattern. Dies sind unitäre Transformationen, welche auf den Quantenregistern arbeiten. Beispielsweise Uf |01i = |11i (siehe Abbildung 6).
Abbildung 6: Unitäre Transformation Uf eines Quantenregisters. In diesem
Beispiel gilt Uf |01i = |11i .
Unitäre Transformationen sind invertierbar und erhalten die Norm. Ersteres garantiert ein reversibles Rechnen und setzt gleichzeitig eine Bedingung an die Quantengatter: es müssen genausoviele Qubits in das Gatter
hineinführen wie herauskommen.
Betrachten wir zunächst ein paar Beispiele für Quantengatter. Angegeben sind immer Symbol im Schaltkreis, Wahrheitstabelle und Matrixdarstellung. Schaltkreise werden (analog wie bei klassischen Computern) oft für
die Darstellung von Quantenalgorithmen verwendet. Fangen wir mit 1-Qubit
Gattern an
• NOT-Gatter:
Das NOT-Gatter negiert das Eingabe-Qubit.
X
σx ist eine der Pauli-Matrizen.
in
|0i
|1i
out
|1i
|0i
X=
0 1
1 0
• Hadamard-Gatter:
!
= σx
Zum Hadamard-Gatter gibt es kein klassisches Analogon. Es ist eines
der wichtigsten Quantengatter, da man mittels des Hadamard-Gatters
eine Superposition der Zustände |0i und |1i erreichen kann. Eine spezielle Anwendung ist die Generierung von echten Zufallszahlen. Dazu
schickt man ein Qubit im Zustand |0i in das Hadamard-Gatter und bekommt die Superpostion |0i + |1i heraus. Misst man nun den Zustand,
so bekommt zu 50% Wahrscheinlichkeit |0i und zu 50% Wahrscheinlichkeit |1i als Ergebnis.
in
|0i
|1i
H
8
out
p
p1/2 (|0i + |1i)
1/2 (|0i − |1i)
H=
q
1
2
1 1
1 −1
!
=
q
1
2
(σx + σz )
σx und σz sind Pauli-Matrizen.
• Allgemeine Rotation U-Gatter:
Eine allgemeine unitäre Transformation, welche einer Drehung“
im
” 1
zweidimensionalen Hilbertraum entspricht, lautet Uα = exp −i 2 α · σ .
Hier ist α = |α| n, mit der Drehachse n und dem Winkel α.
U
Nun noch zwei Beispiele für 2-Qubit Quantengatter.
• kontrolliertes NOT-Gatter — CNOT-Gatter:
Je nachdem ob das erste Eingabe-Qubit gesetzt ist oder nicht, wird
das zweite Eingabe-Qubit negiert. Das CNOT-Gatter wird oft auch
als (reversibles) XOR-Gatter bezeichnet.
in
|00i
|01i
|10i
|11i
X
CNOT = |0i h0| ⊗ 1 + |1i h1| ⊗ σx
out
|00i
|01i
|11i
|10i
Mit Hilfe des CNOT-Gatters lassen sich verschränkte Zustände erzeugen
r
r
1
1
(|00i + |10i) =
(|00i + |11i) .
CNOT
2
2
• kontrolliertes U-Gatter — CU-Gatter:
Analog zum CNOT-Gatter wird hier das zweite Eingabe-Qubit der
unitären Transformation U unterworfen falls das erste Qubit gesetzt
ist.
U
CU = |0i h0| ⊗ 1 + |1i h1| ⊗ U
9
Die Frage ist nun, welche Quanten-Gatter benötigt man, um eine beliebige unitäre Transformation U mit beliebig vielen Eingabe-Qubits darzustellen. Ein Teil der Antwort ist, dass sich jede unitäre Transformation U
zerlegen lässt in eine Sequenz von elementaren 1-Qubit und 2-Qubit Quantengattern. Speziell braucht man nur eine bestimmte Anzahl verschiedener
Quanten-Gatter. Diese werden universelle Sätze von Quantengattern genannt. Da gibt es zunächst exakt universelle Sätze, z. B.
n
o
CNOT, Uα α ∈ R3 .
Da jedoch Uα in der Praxis nicht so einfach realisiert werden kann, ist man
auf einen Satz approximativ universeller Quantengatter wie z. B.
n
CNOT, H, Uπ/4
o
(2)
angewiesen. Approximativ bedeutet hier, dass sich jedes U beliebig genau
durch diesen Satz von drei Quantengattern darstellen lässt. Das heißt, dass
man mit einem approximativ universellen Satz unter Umständen eine Abweichung von dem gewünschten Ergebnis erhält. Möchte man diese Abweichung
kleiner machen, so muss man nur mehr Quantengatter aus dem obigen Satz
(2) verwenden.
2.3
Quantenalgorithmen
Quantencomputer lassen sich als universelle Computer realisieren, d. h., dass
man mit ihnen dieselben Berechnungen ausführen kann, wie mit einem klassischen Computer. Des Weiteren benötigen Quantencomputer die gleiche
Laufzeit, wenn man auf ihnen klassische Algorithmen ausführt. Nutzt man
jedoch die Eigenschaften der Quantenmechanik aus, die es bei klassischen
Computern nicht gibt wie Superposition und Verschränkung, so kann man
klassische Algorithmen in ihrer Laufzeit unterbieten. Man verwendet also
Quantenalgorithmen.
Im Quanten Computing gibt es zwei wichtige Prinzipien:
1. Reversible Implementierung
Sei f : {0, 1}n → {0, 1}m , x 7→ f (x) eine beliebige Funktion. Dann
soll für die unitäre Transformation Uf , welche f in einem Quantenalgorithmus implementiert, gelten:
Uf
|xi |0i −→ |xi |f (x)i .
(3)
Hier ist |xi das sogenannte Zahlenregister mit n Qubits und |0i das
Hilfsregister mit m Qubits. Dadurch das die Eingabe |xi mitgenommen
wird ist die Funktion f durch die unitäre Transformation Uf reversibel
implementiert.
10
2. Quantenparallelismus
Zunächst bringt man alle n auf Null gesetzten Eingabe-Qubits mittels
einer auf jedes einzelne Qubit wirkenden Hadamard-Transformation
H in Superposition von |0i und |1i
r
1
|00 . . . 0i −→
(|0i + |1i) ⊗
2
n/2
1
X
1
=
2
x ,x ,...x
H ⊗n
0
=
n/2
1
2
1
(|0i + |1i) ⊗ . . . ⊗
2
n−1 =0
1
n −1
2X
x=0
r
r
1
(|0i + |1i)
2
|x0 i |x1 i . . . |xn−1 i
|xi ,
wobei wir im zweiten Schritt die Tensorprodukte ausmultipliziert“
”
haben und im letzten Schritt die Dezimaldarstellung aus Formel (2)
verwendet haben. Nun nehmen wir die m Hilfs-Quantenregister hinzu
H ⊗n
|0i |0i −→
Uf
−→
n/2
1
2
n/2
1
2
n −1
2X
x=0
n −1
2X
x=0
|xi |0i
|xi |f (x)i .
Die unitäre Transformation (3) ist so gebaut, dass die Werte der Funktion f in die Hilfs-Qubits wandern. Damit haben wir am Ausgang sowohl alle möglichen Eingabezahlen als auch alle möglichen Funktionswerte in unserem Quantenregister gespeichert. Die Herausforderung
ist das Lesen bzw. Messen der gewünschten Größen aus dem Register.
Das prinzipielle Hindernis ist tief in der Quantenmechanik verwurzelt:
man kann nicht so einfach ein beliebiges |f (x)i aus seinem Quantenregister herauslesen, sondern man misst dieses nur mit einer bestimmten
Wahrscheinlichkeit. Der Trick bei allen Quantenalgorithmen ist nun,
die Amplitude des gesuchten Wertes zu maximieren und entsprechend
die Amplituden aller anderen Werte auf Null zu bringen. Eine anschließende Messung liefert dann das gesuchte Ergebnis.
Als konkretes Beispiel eines Quantenalgorithmus wollen wir den
Deutsch2 -Algorithmus betrachten. Die Aufgabenstellung ist die folgende.
Wir sollen herausfinden, ob eine gegebene Funktion f : {0, 1} → {0, 1} konstant, d. h. f (0) = f (1), oder balanciert, d. h. f (0) 6= f (1) ist. Das Problem
von Deutsch ist zwar recht simpel, doch der Algorithmus lässt bereits die
Stärke des Quanten Computing erahnen. Ein klassischer Computer muss
2
nach David Deutsch
11
f an beiden Stellen 0 und 1 abfragen. Wie wir sehen werden, benötigt ein
Quantencomputer nur eine einzige Anfrage an f .
Für den Algorithmus benötigen wir zwei Qubits. In das erste werden die
Eingabewerte x hineingeschrieben, in das zweite die Funktionswerte f (x).
Die Anfrage an die Funktion f realisieren wir durch ein kontrolliertes UGatter Uf : |x, yi 7→ |x, y ⊕ f (x)i, wobei ⊕ die Addition modulus zwei ist,
d.h. 0 ⊕ 1 = 1 und 1 ⊕ 1 = 0. Der Algorithmus geht wie folgt:
1. Initialisiere das Register: |ψi := |x, yi = |01i
2. Superponiere die Eingabe: |ψi = H ⊗2 |ψi
3. Werte f aus: |ψi = Uf |ψi
4. Wende nochmals H an: |ψi = H ⊗2 |ψi
5. Miss das erste Qubit: h0 | ψi Ist das Ergebnis 1, so ist f konstant,
andernfalls ist f balanciert.
Schauen wir uns den Algorithmus genauer an. Nach dem ersten Schritt
ist unser Quantenregister in dem Zustand |ψi = |01i. Im zweiten Schritt
wenden wir auf beide Qubits eine Hadamard-Transformation an:
H
⊗2
r
r
1
(|0i + |1i) ⊗
|ψi =
}
| 2 {z
1
(|0i − |1i) .
2
=:|xi
Im nächsten Schritt fragen wir einmal die Funktion f ab. Dies geschieht über
Uf . Wie oben definiert, beeinflusst Uf nur das zweite Qubit. Dies jedoch in
Abhängigkeit des ersten Qubits.
|xi
r
r
Uf
1
1
(|0i − |1i) −→ |xi
(|0 ⊕ f (x)i − |1 ⊕ f (x)i)
2
r2
1
= |xi
(|f (x)i − |1 ⊕ f (x)i)
2
r
f (x) 1
(|0i − |1i) .
= |xi (−1)
2
Man sieht, dass die Information über die Funktion f in den Vorfaktor wandert (Man überprüft den letzten Schritt leicht,
indem man einmal f (x) = 0
q
und einmal f (x) = 1 einsetzt). Da |xi =
r h
1
1
2
(|0i + |1i) haben wir:
r
1
(|0i − |1i)
(−1)
|0i + (−1)
|1i ⊗
2
2 r
r
h
i
1
1
(−1)f (0) |0i + (−1)−f (0)+f (1) |1i ⊗
(|0i − |1i) .
=
2
2
|ψi =
f (0)
f (1)
12
i
Unser ganzes Wissen über die Funktion f steckt nun in der Phase des
ersten Qubits. Im nächsten Schritt wenden wir abermals die HadamardTransformation auf beide Qubits an:
H
⊗2
f (0)
|ψi = (−1)
(
|01i : f (0) = f (1)
|11i : f (0) 6= f (1)
Messen wir nun das erste Qubit des Quantenregisters bzgl. der Basis
{|0i , |1i}, so wissen wir mit Sicherheit ob die Funktion f konstant oder
balanciert ist. Geht man den Algorithmus nocheinmal durch, dann sieht
man, dass die Funktion f tatsächlich nur ein einziges mal abgefragt wurde.
Das Problem lässt sich erweitern auf Funktionen beliebig großer Eingabe.
Der Deutsch-Algorithmus liefert einen ersten kleinen Eindruck, wie
mächtig Quanten Computing sein kann. Weitere wichtige Quantenalgorithmen lassen sich grob in zwei Klassen einteilen [Stolze und Suter, 2004].
Da sind zum einen Quanten-Such-Algorithmen wie beispielsweise der Grover3 -Algorithmus. Dieser Algorithmus hat als Aufgabe das Suchen in unsortierten Datenbanken (z. B. Suchen einer Telefonnummer im Telefonbuch).
Speziell der Grover-Algorithmus liefert dafür die bestmögliche Laufzeit
[Homeister, 2008]. Die zweite Klasse von Quanten-Algorithmen basieren
auf der Quantenfouriertransformation (kurz QFT). Wie der Name sagt, ist
die QFT eine Quantenversion der diskreten Fouriertransformation. Als Beispielalgorithmus sei hier der Shor4 -Algorithmus zum Faktorisieren von Zahlen genannt. Bei diesem handelt es sich um einen effizienten Quantenalgorithmus, zu welchem kein effizientes klassisches Analogon existiert. Dies ist
insofern von besonderer Bedeutung, als dass vielgenutzte KryptographieMethoden darauf beruhen, dass man große Zahlen nicht effektiv in ihre
Primfaktoren zerlegen kann.
2.4
Implementierungen
Es gibt eine ganze Reihe von Implementierungen von Qubits, wobei man
diese grob in zwei Arten aufteilen kann. Zum einen lassen sich Qubits durch
atomare Systeme und zum anderen durch Festkörpersysteme darstellen. Das erste physikalische System, mit welchem Quantencomputer realisiert wurden, waren Kernspins in einer Flüssigkeit (NMR-Systeme). Das
Qubit wird hier allerdings nicht in einem einzigen Kernspin codiert, sondern in einigen 1020 Kernspins eines bestimmten Kerns in einem Molekül
der Flüssigkeit [Stolze und Suter, 2004].
Ein anderes atomares System, was für die Zukunft vielversprechend erscheint, sind Ionen in einer Falle. Das Qubit wird in elektronische Freiheitsgrade des Ions gesteckt. Damit das Qubit stabil ist und nicht in einen anderen Zustand zerfällt, kann man dies entweder in Hyperfeinniveaus (siehe
3
4
nach Lov Grover
nach Peter Shor
13
Abbildung 5) des Grundzustandes codieren oder man wählt zwei Niveaus
aus, die nur durch verbotene Übergänge zerfallen können und somit langlebig sind. Die 1-Qubit Gatter werden hier durch optische Übergänge mittels
Laser oder durch Mikrowellenfelder realisiert. Für 2-Qubit Gatter benötigen wir irgendeine Kopplung zwischen den Qubits. Dies übernimmt bei den
Ionen die Coulombwechselwirkung. Diese sorgt für eine Schwingungsbewegung der Ionen in der Falle. Die Idee für ein zwei-Qubit Gatter besteht
darin, die internen Freiheitsgrade der Ionen an die externen Freiheitsgrade (den Schwingungen) zu koppeln. Mit Hilfe der Coulombwechselwirkung
kann so der Zustand eines Qubits auf ein anderes Qubit übertragen werden
[Blatt et al., 2005].
Eine mögliche Realisierung durch Festkörpersysteme ist, dass man Supraleitende Systeme benutzt (Josephson Kontakte). Hier codiert man die
Qubits entweder in Ladungsfreiheitsgrade oder in den quantisierten magnetischen Fluss. Ein weiteres System sind Kernspins von Donoratomen in Halbleitern. Dies ist eine direkte Übertragung des atomaren NMR-Systems von
oben. Schließlich verwendet man auch Quantenpunkte als Basis für Quantencomputer. Da man Quantenpunkte mit nur bis zu einem Elektron füllen
kann, besteht die Möglichkeit das Qubit als Ladungs-Qubit zu codieren. Das
heißt ein Zustand des Qubits entspricht einem mit einem Elektron besetzten
Quantenpunkt und der zweite Zustand des Qubits entspricht einem leerem
Quantenpunkt. Der Nachteil an dieser Methode ist, dass die Ladung relativ gut mit der Umgebung wechselwirkt und damit die Relaxations- und
Dekohärenzzeiten mit einigen ns sehr kurz sind. Auf die Bedeutung der Dekohärenzzeiten gehen wir weiter unten ein. Die zweite Möglichkeit bei Quantenpunkten ein Qubit zu realisieren besteht darin, den Spin des einzelnen
Elektrons im Quantenpunkt zu benutzen. Da Spin 1/2-Systeme 2-NiveauSysteme sind, ist es klar wie das Qubit codiert wird. Im Gegensatz zu der
Ladung ist der Spin relativ gut von der Umgebung isoliert. Dadurch erreicht
man Dekohärenzzeiten von nur einigen µs.
Bevor wir uns genauer mit den Quantenpunkten als Quantencomputer
beschäftigen, möchten wir zunächst auf die DiVincenzo5 -Kriterien eines
Quantencomputers eingehen [Burkard, 2004]. Diese sind fünf an der Zahl
und stellen Bedingungen an ein physikalisches System, um realistisch als
Grundlage für einen Quantencomputer dienen zu können.
1. Ein skalierbares System mit wohldefinierten Qubits
Ein System heißt skalierbar, wenn es beliebig viele Qubits enthalten
kann. Atomare Systeme sind nicht so einfach skalierbar. Das NMRSystem ist z. B. sehr schlecht skalierbar, da eine Erhöhung der Qubits
eine schlechtere Signalqualität zur Folge hat. Bei den Ionen in der Falle
ist man zuversichtlicher und erhofft sich einige 10 Qubits zu realisieren. Hier treten Probleme bei immer längeren Ketten von Ionen auf,
5
nach David P. DiVincenzo
14
da die schwerer werdende Kette die Rechenoperationen verlangsamt.
Außerdem wird es schwieriger alle Ionen in den Grundzustand zu kühlen (siehe auch Punkt 2 unten). Ein Ausweg soll hier sein, das man
mehrere Fallen mit Ionen hat, welche durch einen Quantenkanal (z. B.
Photonen) Information austauschen sollen [Blatt et al., 2005].
Festkörpersysteme sind zwar noch weniger erforscht als die atomaren
Systeme, jedoch erhofft man sich von ihnen eine einfache Skalierbarkeit, in dem man Qubits wie konventionelle integrierte Schaltkreise in
großem Maßstab (105 − 106 Qubits) fertigt.
2. Initialisierbarkeit der Qubits
Das System muss es ermöglichen, die Qubits in einen wohldefinierten
Zustand zu setzen. Dies kann der Grundzustand sein. Gestört wird die
Initialisierung beispielsweise durch thermische Fluktuationen, weswegen man bei entsprechenden tiefen Temperaturen arbeiten muss.
3. Lange Dekohärenzzeiten
Durch Wechselwirkung des Quanten-Systems mit der Umgebung, durch
thermische oder quantenmechanische Fluktuationen oder durch die
freie Zeitentwicklung kommt es zu Dekohärenzen. Geht man von einem reinen Zustand |ψi = α |0i + β |1i aus, so entwickelt dieser sich
nach einer Zeit T2 in eine inkohärente Mischung, welche durch die Dichtematrix ρ = |α|2 |0i h0| + |β|2 |1i h1| beschrieben wird. Durch Wechselwirkung mit der Umgebung tritt weitere Dekohärenz ein. Dies drückt
man durch die Zeit T1 und die Dichtematrix des thermischen Gleichgewichts ρ = Z1 exp (−βH) aus, mit der Zustandssumme Z, der inversen
Temperatur β und dem Hamiltonian H. Damit Quanten Computing
möglich ist, müssen die beiden Zeiten T1 und T2 wesentlich größer sein
als die Zeiten, die man für typische Gatteroperationen benötigt.
Die längsten Kohärenzzeiten erreicht man bei atomaren Systemen, beispielsweise einige ms bei NMR-Systemen. Bei Festkörpersystemen erreicht man je nach Implementierung bis zu einigen µs.
4. Ein universelle Satz von Quantengattern
Wie wir oben bereits gesehen haben, benötigt man nur 2-Qubit-Gatter
und 1-Qubit-Gatter um einen (approximativ) universellen Satz von
Quantengattern zu realisieren (siehe oben). Nun muss es auch möglich
sein diese Gatter auf dem physikalischen System zu implementieren.
5. Messen von Qubits
Am Ende aller Operationen muss man auch in der Lage sein mit möglichst hoher Effizienz einzelne Qubits auszulesen. Atomare Systemem
sind auch hier am weitesten fortgeschritten. Hier gelingt das Auslesen
der Qubits sicher.
15
2.5
Quantencomputer mit Quantenpunkten
Es gibt eine ganze Reihe von Vorschlägen, wie man Qubits und QuantenGatter bei Quantenpunkten realisieren möchte. Hier soll die Implementierung, die auf einen Vorschlag von Daniel Loss und David P. DiVincenzo
zurück geht [Burkard, 2004], vorgestellt werden:
• Man hat eine Zeile von Quantenpunkten, die mittels Elektroden aus
einem Quantenfilm erzeugt werden (siehe Abbildung (7)),
• als Qubit wird der Spin S eines einzelnen Elektrons in einem Quantenpunkt verwendet,
• 1-Qubit-Gatter werden durch Magnetfelder B realisiert und
• für 2-Qubit-Gatter benutzt man einen Tunnelkontakt zwischen benachbarten Quantenpunkten.
Der dazugehörige Hamiltonian hat die Form
H(t) =
X
hi,ji
Jij (t)Si · Sj + µB
X
i
gi B (ri ) · Si .
(4)
Hier ist J das Tunnelmatrixelement zwischen zwei Quantenpunkten, µB das
Bohr-Magneton des Elektrons und g der g-Faktor des Elektrons.
Abbildung 7: Eine Zeile von Quantenpunkten. Die Quantenpunkte sind
durch Kreise mit Elektronen dargestellt. Die spitzen Elektroden auf der
Oberseite sind zum Einstellen der Tunnelbarriere. Der Quantenfilm besteht
aus Schichten unterschiedlicher Halbleiter. Aus [Burkard, 2004].
P
Die 1-Qubit-Gatter sollen durch den Zeeman-Term µB i gi B (ri ) · Si
in (4) implementiert werden. Dazu kann entweder das Magnetfeld B oder
der g-Faktor g variiert werden. Eine Möglichkeit den g-Faktor zu ändern
16
beruht zunächst einmal darauf, dass der g-Faktor eines Elektrons in einem
Halbleiter auf Grund der Spin-Bahn-Wechselwirkung stark von seinem Vakuumwert von 2.0023 abweichen kann. Der g-Faktor nimmt je nach Material
sowohl positive als auch negative Werte an. Nun bedient man sich einer besonderen Eigenschaft von geschichteten Quantenfilmen. Deren g-Faktor ist
mittels eines elektrischen Feldes durchstimmbar und kann die g-Faktoren
der einzelnen Bestandteile des Quantenfilms annehmen. Dies ist in Abbildung (8) dargestellt. Somit können wir mit Hilfe von elektrischen Feldern
1-Qubit-Gatter für Quantenpunkte implementieren.
Abbildung 8: Abhängigkeit des gFaktor gef f von der Spannung E Abbildung 9: Abhängigkeit der Ausan den back-gates. Aus [Burkard, tauschenergie J vom Magnetfeld B.
Aus [Burkard, 2004].
2004].
Für 2-Qubit-Gatter benötigt man eine Wechselwirkung zwischen zwei
Quantenpunkten. Dazu betrachten wir folgendes Modell. Die beiden Quantenpunkte sind mit jeweils einem Elektron gefüllt und haben einen Abstand von 2a. Des Weiteren bestehe ein Tunnelkontakt zwischen ihnen. Der
Hamilton-Operator lässt sich aufteilen in einen orbitalen Horb und einen Zeeman Anteil HZ . Betrachten wir nur Horb . Dieser enthält neben einem kinetischen Anteil und der Coulombenergie noch den Einschluss der Elektronen
in den Quantenpunkten und den Tunnelkontakt. Der Einschluss soll jeweils
mittels eines harmonischen Oszillator-Potentials modelliert werden, so dass
man insgesamt ein Doppelmulden-Potential erhält. Was sind die niedrigsten
Orbitale? Da gibt es zunächst ein symmetrisches Orbtital. Die dazugehörige
Spinwellenfunktion ist damit ein Singlet (S = 0). Das energetisch nächst höhere Orbital ist antisymmetrisch und die entsprechende Spinwellenfunktion
ist ein Triplet (S = 1). Beide Orbitale sind durch eine Autauschenergie J
getrennt, welche dem Austausch von Elektronen zwischen den Quantenpunkten entspricht. Dieser Austausch ist auf Grund des Pauliprinzips nur beim
Spin-Singlet möglich, was der Ursprung der Aufspaltung J von Singlet und
Triplet ist. Der Einfachheit halber wollen wir nur Temperaturen betrachten
die kleiner sind, als die Energieabstände der Quantenpunktniveaus. Dann
17
können wir Horb durch einen effektiven Heisenberg-Spin Hamiltonian ersetzen
H = J S1 · S2 .
Hier ist J die oben eingeführte Austauschenergie. Um J auszurechnen benutzt man die Variationsmethode und den Heitler-London Ansatz aus der
Atom-/Molekülphysik. Man betrachtet also die Einteilchenwellenfunktionen
und superponiert diese. Als Ergebnis bekommt man die Austauschenergie J
als Funktion vom Magnetfeld B. Dies ist in Abbildung (9) dargestellt. Man
sieht, dass es möglich ist, J von positiven bis negativen Werten durchzustimmen. Speziell kann man auch J = 0 erreichen. Dies bedeutet, dass man
die Wechselwirkung zwischen benachbarten Quantenpunkten ein- und ausschalten kann. So ist es zum Beispiel möglich ein sogenanntes SWAP-Gatter
S zu erzeugen. Dafür pulst man das Magnetfeld gerade so, dass
1
h̄
Z
J t0 dt0 =
π
.
2
Das heißt wir haben folgende Zeitentwicklung
i
exp
h̄
Z
0
H t dt
0
π
= exp i S1 · S2 =: S 1/2 ,
2
da H = J S1 ·S2 . Rechnet man sich die dazugehörige Matrixdarstellung aus,
so erhält man


1 0 0 0
 0 0 1 0 


S=
.
 0 1 0 0 
0 0 0 1
Der Name SWAP-Gatter kommt daher, dass die beiden Qubits eines 2-Qubit
Registers gerade vertauscht werden:
S |xyi = |yxi .
Nun ist es möglich zusammen mit den 1-Qubit-Gattern aus dem SWAPGatter ein CNOT-Gatter zu bauen. Damit haben wir einen universellen
Satz von Quantengattern auf den Quantenpunkten etabliert.
3
Ausblick
Heutzutage ist noch nicht abzusehen, welches physikalische Konzept eines
Quantencomputers sich einmal durchsetzen wird. Des Weiteren ist auch
nicht klar, ob es überhaupt einmal Quantencomputer geben wird, die realistische Aufgaben erledigen werden. Was es mit größerer Wahrscheinlichkeit
geben wird, sind Simulationen von Vielteilchen-Quantensystemen beispielsweise mittels Bose-Einstein-Kondensaten in optischen Gittern.
18
Das gute ist, dass bei der Erforschung der verschiedenen Quantensysteme
auch eine ganze Menge nützliche Nebenprodukte“ abfallen. Bei Quanten”
punkten wäre da Magnetometrie einzelner Elektronenspins und die genaue
Kontrolle magnetischer Eigenschaften zu nennen. Außerdem erhält man
durch die intensive Beschäftigung mit dem Quanten Computing und der
Quanteninformation einen tieferen Einblick in die Grundlagen der Quantenmechanik.
4
Literaturempfehlung
Als Einstieg in das große Gebiet des Quanten Computing ist das deutschsprachige Buch von Homeister zu empfehlen. Es bietet eine sehr elementare
Einführung in das Thema und weist viele Beispiele und Erläuterungen auf.
Das englischsprachige Buch von Stolze und Suter ist ein wenig anspruchsvoller, als Einstieg aber auch gut geeignet. Ein umfassendes Nachschlagewerk auf dem Gebiet des Quantum Computing ist das Buch von
Nielsen und Chuang.
Literatur
Ardenne, Manfred von, Musiol, Gerhard und Klemradt, Uwe
(Hg.). Effekte der Physik und ihre Anwendungen. Harri Deutsch, 2005,
3., überarbeitete, neu strukturierte, wesentlich erweiterte Aufl.
Awschalom, David D., Loss Daniel und Samarth, Nitin. Semiconductor spintronics and quantum computation. Physics and astronomy online
library. Springer, Berlin, 2002. ISBN 3-540-42176-9.
Bennett, Charles H. und DiVincenzo, David P. Quantum information
and computation. Nature, 2000(404); 247–255, 2000.
Blatt, Rainer, Zoller, Peter und Cirac, J. Ignacio. Schwerpunkt
Quantencomputer. Physik Journal, 2005(11); 25–62, 2005.
Burkard, Guido. Theory of solid state quantum information processing,
2004.
URL arXiv:cond-mat/0409626v2
Ekert, Artur, Hayden, Patrick und Inamori, Hitoshi. Basic concepts
in quantum computation, 2008.
URL arXiv:quant-ph/0011013v1
Feynman, Richard P. Simulating Physics with Computers. International
Journal of Theoretical Physics, 1982(21); 467–488, 1982.
19
Homeister, Matthias. Quantum Computing verstehen: Grundlagen, Anwendungen, Perspektiven: Mit Online-Service zum Buch. Vieweg & Sohn
Verlag, Wiesbaden, 2008, 2. aktualisierte u. durchgesehene Aufl.
Jacak, Lucjan, Hawrylak, Pawel und Wójs, Arkodiusz. Quantum
Dots. Springer, Berlin, 1998.
Mermin, N. David. Teaching Computer Scientists Quantum Mechanics,
2002.
URL arXiv:quant-ph/0207118v1
Nielsen, Michel A. und Chuang, Isaac L. Quantum Computation and
Quantum Information. Cambridge University Press, Cambridge, 2002,
reprint Aufl.
Reed, Mark A. Quantum Dots. Scientific American, 1993(268(1)); 118–
123, 1993.
Rossi, Mark. Ladungsträger-Relaxations- und Rekombinationsmechanismen in Halbleiterquantenpunkten. Diplomarbeit, Universität Stuttgart,
Stuttgart, 2002.
Stolze, Joachim und Suter, Dieter. Quantum Computing: A Short
Course from Theory to Experiment. Wiley-VCH Verlag GmbH & Co.
KGaA, Weinheim, 2004. ISBN 3 527 40438 4.
20
Herunterladen