Grundlagen der Quantenmechanik (stark vereinfacht) - BFH

Werbung
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Grundlagen der Quantenmechanik (stark vereinfacht)
Hilbertraum
Physikalische Systeme werden eindeutig durch Vektoren in einem Hilbertraum H beschrieben
(komplexer Vektorraum, ev. ∞-dimensional). Notation:
φ |φi
|n; j; mi
|p, ↑i etc.
(1)
Die Ket-Notation,|..i, erlaubt insbesondere, eine praktischere Bezeichnung der Vektoren, indem
mehrere Merkmale aufgeführt werden.
Vektoraddition
Jeder Vektorraum ist bezüglich der Vektoraddition eine Gruppe, d.h. mit zwei Vektoren |ψi und
|φi gehört immer auch der Vektor ψi + |φi zum Vektorraum. Die Addition ist kommutativ und
assoziativ und es gibt ein neutrales Element (Nullvektor).
Multiplikation mit Skalar
Zu jedem Vektor |ψi gibt es den Vektor
a|ψi (a ∈ C)
(2)
a(|ψi + |φi) = a|ψi + a|φi
(3)
(a + b)|ψi = a|ψi + bψi
(4)
zudem gelten die Distributivgesetze:
und
Dualer Vektorraum
Jedem Vektor |φi kann sein dualer Vektor hφ| (Bra-Vektor) zugeordnet werden. Der duale Vektor von a|φi + b|ψi ist a∗ hφ| + b∗ hψ|.
Skalarprodukt
Jedem Paar von Vektoren |φi und |ψi wird eindeutig das Skalarprodukt
hφ|ψi = hψ|φi∗ ∈ C
(5)
zugewiesen.
Das Skalarprodukt ist linear bzüglich des zweiten Arguments, und semi-linear bezüglich des
ersten: Mit
|χi = a|φi + b|ψi
(6)
Quantencomputing
Seite 1
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
gilt für alle |ρi
hρ|χi = ahρ|φi + bhρ|ψi
(7)
hχ|ρi = a∗ hφ|ρi + b∗ hψ|ρi
(8)
und
Eine spezielle Rolle spielt die Norm (Betrag) eines Vektors:
p
hφ|φi = kφk
(9)
Orthonormalbasis
In jedem (separablen) Hilbertraum kann man eine abzählbare Menge von (Basis-) Vektoren
|φ1 i, |φ2 i, |φ3 i · · · ,
(10)
finden, welche den Raum vollständig aufspannen und welche normiert und gegenseitig orthogonal aufeinander sind:
hφi |φk i = δik
(11)
(Das Kroneckersymbol δik hat den Wert 1 für i = k und sonst 0.) Für einen beliebigen Vektor
|ψi muss dann gelten:
X
|ψi =
ψk |φk i
(12)
k
Die Koeffizienten (Komponenten) ψk werden wie folgt berechnet:
ψk = hφk |ψi
(13)
Also:
|ψi =
X
|φk ihφk |ψi
(14)
k
Die Operation
X
|φk ihφk | = 1
(15)
k
ist also die Einheitsoperation im Hilbertraum.
In Komponentendarstellung lässt sich das Skalarprodukt wie folgt darstellen:
X
X
hψ|χi =
hψ|φk ihφk |χi =
ψk∗ χk
k
(16)
k
Lineare Operatoren
Die linearen Abbildungen des Vektorraums in sich selbst werden Operatoren genannt. Wir werden im folgenden nur Operatoren betrachten, deren Definitionsbereich der ganze Hilbertraum
ist, bzw. deren Definitionsbereich dicht in H liegt. Gebräuchliche Notationen:
|ψi → |ψ 0 i = A|ψi
(17)
das Wort “linear” bedeutet, dass für alle a, b ∈ R und alle φ, ψ ∈ H das folgende gilt:
A(a|ψi + b|φi) = aA|ψi + bA|φi
Quantencomputing
(18)
Seite 2
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Komponentendarstellung von Operatoren, Matrizen
Zu jeder Basis, lässt sich die Komponentendarstellung des Operators finden:
X
XX
|ψ 0 i =
|φj ihφj |ψ 0 i =
|φj ihφj |A|φk ihφk |ψi
j
j
(19)
k
Mit den Bezeichnungen
hφk |ψi = ψk
hφj |ψ 0 i = ψj0
hφj |A|φk i = Ajk
(20)
(21)
(22)
wird Gleichung (19) zu der Matrixgleichung
ψj0 =
X
Ajk ψk
(23)
k
Selbstadjungierte Operatoren
Der zu A adjungierte Operator A† ist durch die folgende Beziehung definiert:
hψ|A|φi = hφ|A† |ψi∗
(24)
In Komponenten findet man für die adjungierte Matrix:
(A† )jk = A∗kj = (A| )∗jk
(25)
Ein Operator A heisst selbstadjungiert wenn A† = A gilt.
Eigenvektoren und Eigenwerte
Zu jedem linearen Operator lassen sich die Eigenvektoren wie folgt definieren: Ein Vektor ungleich dem Nullvektor welcher die Gleichung
A|φi = a|φi
(a ∈ C)
(26)
löst, heisst Eigenvektor von A mit dem Eigenwert a.
Wenn a ein Eigenwert von A ist so ist a∗ ein Eigenwert von A† . Dies bedeutet, dass für selbstadjungierte Operatoren a = a∗ gilt, dies bedeutet, dass in diesem Fall die Eigenwerte reell
sein müssen. Wie man sofort sieht, gilt Folgendes: Wenn |αi i ein Eigenvektor des Operators A
ist, dann ist auch jedes Vielfache von |αi i ein Eigenvektor (mit dem gleichen Eigenwert). Es
kann aber auch sein, dass es zum gleichen Eigenwert mehrere linear unabhängige Eigenvektoren gibt. In diesem Fall nennt man den zugehörigen Eigenwert entartet. Der folgende Satz gilt
nicht für alle selbstadjungierten Operatoren sondern in dieser Form nur für sogenannt kompakte
Operatoren. Um eine allgemein gültige Aussage zu gelangen, müssten wir auf Integraldarstellungen von selbstadjungierten Operatoren zu sprechen kommen. Der Satz gilt jedoch für alle
selbstadjungierten Operatoren in endlich dimensionalen Vektorräumen (weshalb wir auf eine
allgemeinere Form des Satzes verzichten wollen).
Quantencomputing
Seite 3
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Satz: Zu jedem (kompakten) selbstadjungierten Operator A gibt es eine orthonormierte Basis |αk i, k = 1, 2, · · · , welche aus lauter Eigenvektoren von A besteht.
Die Eigenwerte zu diesen Eigenvektoren sind nicht notwendigerweise alle voneinander verschieden!
Spektraldarstellung von selbstadjungierten Operatoren
Wenn |αk i, k = 1, 2, · · · eine zu A gehörende orthonormierte Basis darstellt, gilt gemäss (19):
X
X
A|ψi =
|αk ihαk |A|ψi =
|αk iak hαk |ψi
(27)
k
k
Dies heisst, dass A die folgende Spektraldarstellung besitzt:
X
A=
|αk iak hαk |
(28)
k
(In einer allgemeiner gültigen Form würden statt der Summe ein Integral erscheinen, und für
die Eigenwerte wäre auch ein Kontinuum von Werten möglich.)
In der Basis |αk i, k = 1, 2, · · · besitzt der Operator eine besonders einfache Matrixdarstellung.
Es wird nämlich eine diagonale Matrix, mit den Eigenwerten als Diagonalelemente:
Ajk = aj δjk
(29)
Interessant unter den selbstadjungierten Operatoren sind die Projektionsoperatoren. Ein Operator P heisst Projektionsoperator wenn gilt:
P† = P
und
P2 = P
(30)
Jeder Projektionsoperator besitzt nur die Eigenwerte 0 und 1.
Kommutatoren
Eine wichtige Rolle spielt der sogenannt Kommutator zweier Operatoren, der sich wie folgt
definiert:
[A, B] = AB − BA
(31)
Wenn der Kommutator zweier Operatoren 0 ist, so sagt man sie kommutieren. Wenn A und
B selbstadjungiert sind, so ist das Produkt AB bzw. BA genau dann selbstadjungiert, wenn
[A, B] = 0. Denn in diesem Fall gilt:
(AB)† = B † A† = BA = AB
(32)
Wenn zwei selbstadjungierte A und B kommutieren, dann gibt es eine Orthonormalbasis welche
aus simultanen Eigenvektoren von A, B, und AB besteht. Wenn |γk i, k = 1, 2, · · · diese Basis
bezeichnet, dann gilt also:
AB|γk i
A|γk i
B|γk i
mit ck
Quantencomputing
=
=
=
=
ck |γk i
a|γk i
b|γk i
ab
(33)
(34)
(35)
(36)
Seite 4
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Wenn die Eigenwerte a und b nur einmal vorkommen (ck also nicht entartet ist), ist es praktisch sie gerade zur Bezeichnung des entsprechenden Basisvektors heranzuziehen. Wir schreiben dann
|γk i = |a, bi mitA|a, bi = a|a, bi und B|a, bi = b|a, bi
(37)
was natürlich nur sinnvoll ist, wenn a,und b den Vektor eindeutig charakterisieren.
Unitäre Abbildungen
Umkehrbare Abbildungen, welche das Skalarprodukt zwischen beliebigen Vektoren nicht verändern heissen unitär (im reellen Fall sind das die Drehungen und Spiegelungen). Die geforderte
Invarianz bedeutet also für unitäre Abbildungen U , dass für alle |φi und |ψi das Skalarprodukt
(φ, ψ) das gleiche ergibt wie (U φ, U ψ). In bra-ket Notation schreibt sich dies wie folgt:
hφ|ψi = hφ|U † U |ψi
∀ψ, φ
(38)
Dies bedeutet, dass für unitäre Abbildungen gilt:
U † = U −1
(39)
Im reellen Fall (z.B. Drehmatrizen) bedeutet dies: U −1 = U | .
Kontinuierliche Abbildungen, wie sie die Drehungen darstellen, lassen sich immer wie folgt mit
Hilfe einer selbstadjungierten Abbildung darstellen:
U = exp(−itA),
wobeiA = A† , t ∈ R
(40)
Die Exponentialfunktion einer Matrix ist dabei wie folgt definiert:
∞
exp(B) := 1 + B +
X Bk
1 2 1 3
B + B + ··· =
2!
3!
k!
k=0
(41)
Kontinuierlich bedeutet, dass die Abbildung sich sozusagen kontinuierlich aus der Einheitsabbildung heraus entwickeln lässt. Die Einheitsabbildung entspricht dem Fall t = 0 in der obigen
Darstellung.
Quantencomputing
Seite 5
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Postulate der Quantenmechanik
Die Postulate der Quantenmechanik in vereinfachter Form:
Postulat 1
Der Zustand eines (isolierten) physikalischen Systems wird durch einen Einheitsvektors in einem komplexen Hilbertraum beschrieben. Den Vektor nennt man Zustandsvektor des Systems und der zugehörige Hilbertraum heisst Zustandsraum
Der Zustand eines Systems bleibt im Allgemeinen nicht konstant, sondern entwickelt sich z.B.
unter dem Einfluss äusserer Kräfte. Dabei wird die Norm (Länge) des Vektors nicht verändert:
Postulat 2
Die zeitliche Entwicklung des Zustandsvektor eines (unbeobachteten) physikalischen Systems wird durch eine unitäre Abbildung beschrieben:
|ψ(t2 )i = U (t2 , t1 )|ψ(t1 )i
(42)
Für U (t2 , t1 ) gilt:
U (t2 , t1 )−1 = U (t2 , t1 )† = U (t1 , t2 )
Gleichung (42) wird normalerweise in Form einer Differentialgleichung ausgedrückt:
~
∂
|ψ(t)i = H(t)|ψ(t)i
∂t
i
Schrödinger-Gleichung
(43)
Der selbstadjungierte Operator H in (43) wird Hamilton-Operator genannt. Er entspricht der
Observablen Energie.
Bis jetzt haben wir noch nicht von den Messgrössen des Systems gesprochen. Sie werden im
folgenden Satz eingeführt.
Postulat 3
Jeder Messgrösse m des Systems entspricht ein selbstadjungierter Operator M . Die
denkbaren Messwerte der Observablen sind die Eigenwerte mi des Operators. Das
Resultat eines Messvorgangs lässt sich im allgemeinen nicht voraussagen. Wenn
sich das System im Zustand |ψi befindet, lässt sich der statistische Erwartungswert
hmi der Messgrösse wie folgt berechnen:
hmi = hψ|M |ψi
Jede (kompakte) Observable besitzt eine Spektraldarstellung:
X
M=
m i Pi
(44)
(45)
i
mit Projektionsoperatoren Pi , die sich wie folgt schreiben lassen:
X
Pi =
|i, kihi, k|
(46)
k
Quantencomputing
Seite 6
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Die Vektoren |i, ki sind orthonormierte Basisvektoren des Zustandraums, d.h:
hi, k|i0 , k 0 i = δii0 δkk0
(47)
wobei |i, ki ein Eigenvektor von M mit dem Eigenwert mi bildet:
M |i, ki = mi |i, ki
(48)
Die Wahrscheinlichkeit, dass eine Messung von m den Wert mi ergibt ist
X
X
pi = hψ|Pi |ψi =
hψ|i, kihi, k|ψi =
khi, k|ψik2
k
(49)
k
Die statistische Varianz (ein Mass für die Streuung eines Messwertes) erhält man folgendes:
(∆m)2 = h(m − hmi)2 i = hm2 i − hmi2
(50)
Für zwei Observablen A und B erhält man für ein System im Zustand |ψi das Folgende:
1
∆a∆b ≥ hψ|[A, B]|ψi
2
Heisenberg’sche Unschärferelation
(51)
Dies bedeutet, dass das System unter keinen Umständen einen scharfen Wert für a und b haben
kann, wenn die beiden Operatoren A und B nicht kommutieren.
Die Folgen einer Messung sind in der Quantenmechanik drastisch: Der Zustand nach der Messung muss nämlich ein Eigenvektor der gemessenen Observablen sein. Da der Messvorgang
selbst ja auch nur eine physikalische Wechselwirkung darstellt, müsste man eigentlich erwarten, dass der Messvorgang den Zustand des Systems genau so verändert wie jeder andere (unbeobachtet) physikalische Vorgang. Nach Postulat 2 ist die Zustandsänderung eines Systems
aber normalerweise durch eine unitäre Transformation beschrieben, d.h. durch eine umkehrbare Transformation. Die Messung ist aber unumkehrbar gemäss folgendem Postulat:
Postulat 4
Wird bei einem System, das durch den Vektor |ψi beschrieben wird, der Messwert
mi der Observablen M gemessen, so ist der Zustand nach der Messung der Observablen M der Zustand
X
1
Pi |ψi
hi, k|ψi|i, ki
|ψ 0 i = √ = pP
2
pi
k khi, k|ψik
k
(52)
Es scheint also, als müsse sich das System erst bei einer Beobachtung für einen der Eigenvektoren der Messung entscheiden. Vorher kann das System in einem beliebigen Zustand sein.
Nach der Messung von a muss das System in einem Eigenzustand der Observablen A sein,
d.h. die statistische Varianz ∆a = 0 ist. Die Unschärferelation (51) bedeutet nun, dass für
jede andere Observable B, welche nicht mit A kommutiert, die statistische Varianz jedenfalls
unendlich sein muss, so dass der Messwert b total unbestimmt ist.
Das letzte Postulat besagt nun, wie zusammengesetzte Systeme zu beschreiben sind:
Quantencomputing
Seite 7
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Postulat 5
Ein System, das aus mehreren Teilsystemen S1 , S2 , S3 · · · zusammengesetzt ist,
welche für sich je durch einen Zustand |ψ1 i, |ψ2 i, |ψ3 i, · · · beschrieben werden,
wird durch einen Vektor |ψi aus dem Tensorprodukt S = S1 ⊗ S2 ⊗ S3 · · · beschrieben
|ψi = |ψ1 i ⊗ |ψ2 i ⊗ |ψ3 i ⊗ · · ·
(53)
Der Vektorraum S = S1 ⊗ S2 ⊗ S3 · · · ⊗ Sn wird also durch n-Tupeln aufgespannt.
Das Skalarprodukt von zwei Vektoren
|ψi = |ψ1 i ⊗ |ψ2 i ⊗ |ψ3 i ⊗ · · ·
(54)
|φi = |φ1 i ⊗ |φ2 i ⊗ |φ3 i ⊗ · · ·
(55)
hψ|φi = hψ1 |φ1 ihψ2 |φ2 ihψ3 |φ3 i · · ·
(56)
und
ist wie folgt definiert:
Verschränkte Zustände
Es ist bemerkenswert, dass der Vektorraum S = S1 ⊗ S2 ⊗ S2 ⊗ · · · zwar alle Zustände der
Form |φ1 i ⊗ |φ2 i ⊗ |φ3 i ⊗ · · · enthält, aber nicht nur!
Wir wollen dies an einem Beispiel zeigen: Sei S1 und S2 je ein zweidimensionaler Vektorraum
mit den zwei Basisvektoren|0i und |1i. Es ist schnell zu sehen, dass die Zustände
|00i = |0i ⊗ |0i,
|01i = |0i ⊗ |1i,
|10i = |1i ⊗ |0i und
|11i = |1i ⊗ |1i
(57)
eine Basis in S = S1 ⊗ S2 bilden. Demzufolge muss S unter Anderem auch den Vektor
1
|φi = √ (|00i + |11i)
2
(58)
enthalten. Ein beliebiges Produkt |φ1 i ⊗ |φ2 i hat nun aber die Form
|φ1 i⊗|φ2 i = (a1 |0i+b1 |1i)⊗(a2 |0i+b2 |1i) = a1 a2 |00i+b1 a2 |10i+a1 b2 |01i+b1 b2 |11i (59)
Man sieht schnell ein, dass man keine Koeffizienten a1 , a2 , b1 und b2 finden, so dass sich der
Vektor |φi aus Gleichung (58) als Produkt darstellen liesse.
Quantencomputing
Seite 8
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
Quanten - Computer
Klassische Computer
Man kann einen Computer als Schaltkreis verstehen, welcher bestimmte Inputdaten in bestimmte Outputdaten transformiert. Die Inputdaten werden dabei in binärer Form (0 oder 1) an n Inputleitungen eingespeist und das Resultat der Berechnung erscheint ebenfalls binär an m Outputleitungen. Es zeigt sich, dass sich jede Berechnung durch Zusammenschalten ganz einfacher
elementarer Schaltkreise sogenannten Gattern bewerkstelligen lässt. Wir wollen das Prinzip
hier nur skizzieren. Eines der elementaren Gattern ist z.B. das XOR Gatter, welches aus den
Inputbits a und b das Outputbit a ⊕ b erzeugt:
a
XOR
c=a+b
b
Out
In
Durch Zusammenschalten solcher Gates kann letztlich jede Berechnung durchgeführt werden.
Das folgende Bild zeigt z.B. einen sogenannten Volladierer, welcher die Summe 3-er Bits bildet. Solche Volladdierer könnte man nun hintereinander schalten um die Summe von 2 mehrstelligen Binärzahlen zu bilden. Das Outputbit c, das sogenannte Übertragsbit, geht dabei als
Input an die nächste Volladdiererstufe.
c
AND
b
OR
c’
XOR
AND
a
s=a+b+c
XOR
Out
In
c’ = (a
b)
(a
c)
(b
c)
QBit, QRegister und QGate
Die elementaren Baustein eines Quantencomputers sind die QBits. Dabei handelt es sich um
Quantensysteme, welche durch einen Zweidimensionalen Zustandsvektor beschrieben wird. Es
existieren folglich zwei Basisvektoren |0i und |1i, welche den ganzen Zustandsraum aufspannen. Die beiden Basiszustände sind Eigenvektoren des Bitwert-Operators M mit den Eigenwerten 0 und 1. d.h.
M |0i = 0 |0i
und M |1i = 1 |1i
(60)
(61)
Ein qBitRegister besteht aus mehreren QBits. Der Zustandsraum eines qBitRegisters wird aufgespannt vom Tensorprodukt der Basisvektoren der einzelnen qBits: Ein 2-Bit Register besitzt
Quantencomputing
Seite 9
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
z.B. die Basisvektoren
e1 = |0i ⊗ |0i ,
e2 = |0i ⊗ |1i ,
e3 = |1i ⊗ |0i ,
e4 = |1i ⊗ |1i
Diese werden meist wie folgt abgekürzt:
|00i ,
|01i ,
|10i ,
|11i
Wie in klassischen Computern werden nun Schaltkreise aus Gates aufgebaut, welche auf den
(einzelnen) oder mehreren qBits operieren. Ein Gate - oder besser QGate - ist ein physikalischer
Vorgang, welcher die qBits verändert. Wie alle quantenmechanischen Vorgänge (mit Ausnahme
der Messungen) wird er durch eine unitäre Operation beschrieben.
Beispiele:
1-Bit Hadamar - gate (H): Das Hadamar Gate wirkt auf ein einziges qBit und ist wie folgt
definiert:
1
H |0i = √ (|0i + |1i)
2
1
H |1i = √ (|0i − |1i)
2
(62)
(63)
Wenn ein Hadamargate auf einen Basiszustand wirkt, so ist der resultierende Zustand eine
gleichmässige Mischung der beiden Basiszustände.
2-Bit Hadamargate (H (2) ): Wenn je ein Hadamargate auf die Bits eines 2 qBit Registers wirkt,
H
H
H (2)
entsteht eine gleichmässige Mischung der 4 Basiszustände:
1
H (2) |00i = H |0i ⊗ H |0i = (|0i + |1i) ⊗ (|0i + |1i) =
2
1
H (2) |01i = H |0i ⊗ H |1i = (|0i + |1i) ⊗ (|0i − |1i) =
2
1
H (2) |10i = H |1i ⊗ H |0i = (|0i − |1i) ⊗ (|0i + |1i) =
2
1
(2)
H |11i = H |1i ⊗ H |1i = (|0i − |1i) ⊗ (|0i − |1i) =
2
1
(|00i + |01i + |10i + |11i)
2
1
(|00i − |01i + |10i − |11i)
2
1
(|00i + |01i − |10i − |11i)
2
1
(|00i − |01i − |10i + |11i)
2
(64)
(65)
(66)
(67)
Die dazugehörige Matrix hat folglich die Form:


1
1
1
1
1
1 −1 

 1 −1
1 −1 −1 
2 1
1 −1 −1
1
Quantencomputing
Seite 10
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
2-Bit Controlled Not (cNOT): Die Operation ist eine NOT-Operation auf das tieferwertige Bit,
die aber nur wirkt, wenn das höherwertige Bit angedreht ist:
C |00i = |00i ,
C |01i = |01i ,
mit der Matrix

1
 0

 0
0
0
1
0
0
C |10i = |11i ,
0
0
0
1
C |11i = |10i

0
0 

1 
0
Graphische Darstellung:
b
b
a
a+b
Toffoli-Gate (3 Bit): Wie bei klassischen Computern kann man letztlich, wenn man genug
Hilfsbits zur Verfügung hat, jede logische Funktion auch mit einem einzigen universellen Gate
realisieren. Ein solches universelles Gate verwendet zwei Hilfsbits:
c
c
b
b
a
a + (b Λ c)
Die Symbole a, b und c beziehen sich dabei auf die Basiszustände |0i und |1i. Besitzt das
Hilfsbit c z.B. den Wert 1, so liegt am Ausgang des untersten Bits der Wert a XOR b. Das Gate
wirkt dann wie das cNOT Gate auf die Bits a und b.
Da das Toffoli-Gate auf einem 3-Bit Register operiert, ist es durch eine 8 mal 8 Matrix darstellbar bezüglich der Basis
e0 = |000i
e4 = |100i
e1 = |001i
e5 = |101i
e2 = |010i
e6 = |110i
e3 = |011i
e7 = |111i
wobei wir die Bits in der Reihenfolge cba interpretieren wollen (a ist das niedrigstwertigste Bit).
Die 7. Spalte dieser Matrix erhält man z.B durch Anwenden der Transformation auf den 7.
Basisvektor (erinnern Sie sich, dass die n-te Spalte einer Matrix einfach das Bild des n-ten
Basis Vektors ist)
e6 = |0i ⊗ |1i ⊗ |1i = |011i
Der Funktionswert ist der Ausgang des Gates. Er lässt sich aus dem Bild ablesen für a = 0,
b = 1, c = 1 und man findet:
T e6 = T |110i = |1i ⊗ |1i ⊗ |0 ⊕ (1 ∧ 1)i = |111i = e7
Quantencomputing
Seite 11
Berner Fachhochschule
Fachbereich Informatik
Technik und Informatik
Bern, Januar 2008/Dr. P. Schwab
In Komponentenschreibweise ist dies der Vektor (0,0,0,0,0,0,0,1).
Für die gesamte Matrix findet man so:

1
 0

 0

 0

T =
 0
 0

 0

 0
0
Quantencomputing
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0














Seite 12
Herunterladen