Zum Hauptinhalt springen

Qiskit-Implementierung

In dieser Lektion implementieren wir einige der Ideen aus der Lektion über Verschränkung in der Praxis mit Qiskit.

# Added by doQumentation — required packages for this notebook
!pip install -q numpy qiskit qiskit-aer
from qiskit import __version__

print(__version__)
2.1.1
from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister
from qiskit_aer import AerSimulator
from qiskit.visualization import plot_histogram, array_to_latex
from qiskit.result import marginal_distribution
from qiskit.circuit.library import UGate
from numpy import pi, random

Hier ist eine Quantum-Circuit-Implementierung des Teleportationsprotokolls.

qubit = QuantumRegister(1, "Q")
ebit0 = QuantumRegister(1, "A")
ebit1 = QuantumRegister(1, "B")
a = ClassicalRegister(1, "a")
b = ClassicalRegister(1, "b")

protocol = QuantumCircuit(qubit, ebit0, ebit1, a, b)

# Prepare ebit used for teleportation
protocol.h(ebit0)
protocol.cx(ebit0, ebit1)
protocol.barrier()

# Alice's operations
protocol.cx(qubit, ebit0)
protocol.h(qubit)
protocol.barrier()

# Alice measures and sends classical bits to Bob
protocol.measure(ebit0, a)
protocol.measure(qubit, b)
protocol.barrier()

# Bob uses the classical bits to conditionally apply gates
with protocol.if_test((a, 1)):
protocol.x(ebit1)
with protocol.if_test((b, 1)):
protocol.z(ebit1)

display(protocol.draw(output="mpl"))

Ausgabe der vorherigen Code-Zelle

Der Circuit nutzt einige Qiskit-Funktionen, die wir in früheren Lektionen noch nicht gesehen haben, darunter die Funktionen barrier und if_test. Die Funktion barrier erzeugt eine visuelle Trennung, die das Circuit-Diagramm leichter lesbar macht; außerdem verhindert sie, dass Qiskit während der Kompilierung verschiedene Vereinfachungen und Optimierungen über die Barrier hinweg vornimmt, wenn Circuits auf echter Hardware ausgeführt werden. Die Funktion if_test wendet eine Operation bedingt in Abhängigkeit von einem klassischen Bit oder Register an.

Der Circuit initialisiert zunächst (A,B)(\mathsf{A},\mathsf{B}) in einem ϕ+\vert \phi^+\rangle-Zustand (was nicht Teil des Protokolls selbst ist), gefolgt von Alices Operationen, dann ihren Messungen und schließlich Bobs Operationen. Um zu testen, ob das Protokoll korrekt funktioniert, wenden wir ein zufällig erzeugtes Einzel-Qubit-Gate auf den initialisierten 0\vert 0\rangle-Zustand von Q\mathsf{Q} an, um einen zufälligen Quantenzustandsvektor zu erhalten, der teleportiert werden soll. Indem wir nach Ausführung des Protokolls das Inverse (d. h. die konjugiert-transponierte Matrix) dieses Gates auf B\mathsf{B} anwenden, können wir verifizieren, dass der Zustand teleportiert wurde — wir messen und prüfen, ob er in den 0\vert 0\rangle-Zustand zurückgekehrt ist.

Zunächst wählen wir zufällig ein unitäres Qubit-Gate aus.

random_gate = UGate(
theta=random.random() * 2 * pi,
phi=random.random() * 2 * pi,
lam=random.random() * 2 * pi,
)

display(array_to_latex(random_gate.to_matrix()))
[0.98972121580.01950801030.141673401i0.0603319186+0.1296609988i0.8319925233+0.5360378028i] \begin{bmatrix} 0.9897212158 & -0.0195080103 - 0.141673401 i \\ 0.0603319186 + 0.1296609988 i & -0.8319925233 + 0.5360378028 i \\ \end{bmatrix}

Jetzt erstellen wir einen neuen Testcircuit, der zuerst unser zufälliges Gate auf Q\mathsf{Q} anwendet, dann den Teleportationscircuit ausführt und schließlich das Inverse unseres zufälligen Gates auf das Qubit B\mathsf{B} anwendet und misst. Das Ergebnis sollte mit Sicherheit 00 sein.

# Create a new circuit including the same bits and qubits used in the
# teleportation protocol.

test = QuantumCircuit(qubit, ebit0, ebit1, a, b)

# Start with the randomly selected gate on Q

test.append(random_gate, qubit)
test.barrier()

# Append the entire teleportation protocol from above.

test = test.compose(protocol)
test.barrier()

# Finally, apply the inverse of the random unitary to B and measure.

test.append(random_gate.inverse(), ebit1)
result = ClassicalRegister(1, "Result")
test.add_register(result)
test.measure(ebit1, result)

display(test.draw(output="mpl"))

Ausgabe der vorherigen Code-Zelle

Zum Schluss führen wir den Aer-Simulator für diesen Circuit aus und zeigen ein Histogramm der Ausgaben an. Wir sehen die Statistiken für alle drei klassischen Bits: Das unterste/linkste Bit sollte stets 00 sein — ein Zeichen dafür, dass Qubit Q\mathsf{Q} erfolgreich nach B\mathsf{B} teleportiert wurde —, während die anderen beiden Bits annähernd gleichverteilt sein sollten.

result = AerSimulator().run(test).result()
statistics = result.get_counts()
display(plot_histogram(statistics))

Ausgabe der vorherigen Code-Zelle

Wir können die Statistiken auch filtern, um uns ausschließlich auf das Testresultat-Qubit zu konzentrieren:

filtered_statistics = marginal_distribution(statistics, [2])
display(plot_histogram(filtered_statistics))

Ausgabe der vorherigen Code-Zelle

Superdense Coding

Superdense Coding ist ein Protokoll, das in gewisser Weise ein komplementäres Ziel zur Teleportation verfolgt. Anstatt die Übertragung eines Qubits mithilfe von zwei klassischen Kommunikationsbits zu ermöglichen (auf Kosten eines E-Bits an Verschränkung), erlaubt es die Übertragung von zwei klassischen Bits mithilfe eines Qubits an Quantenkommunikation (wiederum auf Kosten eines E-Bits an Verschränkung).

Genauer gesagt haben wir eine Senderin (Alice) und einen Empfänger (Bob), die ein E-Bit Verschränkung teilen. Gemäß den in der Lektion geltenden Konventionen bedeutet dies, dass Alice ein Qubit A\mathsf{A} hält, Bob ein Qubit B\mathsf{B} hält und das Paar (A,B)(\mathsf{A},\mathsf{B}) gemeinsam im Zustand ϕ+\vert\phi^+\rangle ist. Alice möchte zwei klassische Bits an Bob übermitteln, die wir mit cc und dd bezeichnen, und sie wird dies erreichen, indem sie ihm ein Qubit schickt.

Es ist naheliegend, diese Leistung als weniger beeindruckend zu betrachten als das, was die Teleportation erreicht. Das Senden von Qubits wird auf absehbare Zeit so viel schwieriger sein als das Senden klassischer Bits, dass der Tausch eines Qubits Quantenkommunikation gegen zwei Bits klassischer Kommunikation — noch dazu auf Kosten eines E-Bits — kaum lohnenswert erscheint. Das bedeutet jedoch nicht, dass Superdense Coding uninteressant wäre — ganz im Gegenteil.

Passend zum Thema der Lektion ist Superdense Coding aus einem Grund interessant: Es zeigt eine konkrete und (im Kontext der Informationstheorie) durchaus bemerkenswerte Anwendung von Verschränkung. Ein berühmtes Theorem der Quanteninformationstheorie, bekannt als Holevos Theorem, besagt, dass es ohne die Verwendung eines gemeinsam geteilten verschränkten Zustands unmöglich ist, mehr als ein Bit klassischer Information durch das Senden eines einzelnen Qubits zu übertragen. (Holevos Theorem ist allgemeiner gefasst als dies. Seine genaue Aussage ist technisch und erfordert Erläuterungen, aber dies ist eine seiner Konsequenzen.) Durch Superdense Coding ermöglicht geteilte Verschränkung also effektiv eine Verdopplung der klassischen Informationskapazität beim Senden von Qubits.

Protokoll

Das folgende Quantum-Circuit-Diagramm beschreibt das Superdense-Coding-Protokoll:

Superdense-Coding-Circuit

In Worten beschrieben, geht Alice wie folgt vor:

  1. Falls d=1,d=1, wendet Alice ein ZZ-Gate auf ihr Qubit A\mathsf{A} an (falls d=0,d=0, tut sie es nicht).

  2. Falls c=1,c=1, wendet Alice ein XX-Gate auf ihr Qubit A\mathsf{A} an (falls c=0,c=0, tut sie es nicht).

Anschließend sendet Alice ihr Qubit A\mathsf{A} an Bob.

Was Bob tut, wenn er das Qubit A\mathsf{A} erhält: Zunächst wendet er ein controlled-NOT-Gate an, wobei A\mathsf{A} das Kontrolqubit und B\mathsf{B} das Zielqubit ist, und dann wendet er ein Hadamard-Gate auf A\mathsf{A} an. Dann misst er B\mathsf{B}, um cc zu erhalten, und A\mathsf{A}, um dd zu erhalten — in beiden Fällen mit Standardbasismessungen.

Analyse

Die Idee hinter diesem Protokoll ist einfach: Alice wählt effektiv aus, in welchem Bell-Zustand sie sich mit Bob befinden möchte, sie schickt Bob ihr Qubit, und Bob misst, um festzustellen, welchen Bell-Zustand Alice gewählt hat.

Das heißt, sie teilen anfänglich ϕ+\vert\phi^+\rangle, und abhängig von den Bits cc und dd lässt Alice diesen Zustand entweder unverändert oder verschiebt ihn in einen der anderen Bell-Zustände, indem sie I,\mathbb{I}, X,X, ZZ oder XZXZ auf ihr Qubit A\mathsf{A} anwendet.

(II)ϕ+=ϕ+(IZ)ϕ+=ϕ(IX)ϕ+=ψ+(IXZ)ϕ+=ψ\begin{aligned} (\mathbb{I} \otimes \mathbb{I}) \vert \phi^+ \rangle & = \vert \phi^+\rangle \\ (\mathbb{I} \otimes Z) \vert \phi^+ \rangle & = \vert \phi^-\rangle \\ (\mathbb{I} \otimes X) \vert \phi^+ \rangle & = \vert \psi^+\rangle \\ (\mathbb{I} \otimes XZ) \vert \phi^+ \rangle & = \vert \psi^-\rangle \end{aligned}

Bobs Aktionen haben folgende Auswirkungen auf die vier Bell-Zustände:

ϕ+00ϕ01ψ+10ψ11\begin{aligned} \vert \phi^+\rangle & \mapsto \vert 00\rangle\\ \vert \phi^-\rangle & \mapsto \vert 01\rangle\\ \vert \psi^+\rangle & \mapsto \vert 10\rangle\\ \vert \psi^-\rangle & \mapsto -\vert 11\rangle\\ \end{aligned}

Dies kann direkt überprüft werden, indem man die Ergebnisse von Bobs Operationen auf diese Zustände nacheinander berechnet.

Wenn Bob also seine Messungen durchführt, kann er bestimmen, welchen Bell-Zustand Alice gewählt hat. Die Korrektheit des Protokolls lässt sich durch Überprüfung aller Fälle bestätigen:

  • Falls cd=00,cd = 00, ist der Zustand von (B,A)(\mathsf{B},\mathsf{A}), wenn Bob A\mathsf{A} erhält, ϕ+.\vert \phi^+\rangle. Er transformiert diesen Zustand in 00\vert 00\rangle und erhält cd=00.cd = 00.

  • Falls cd=01,cd = 01, ist der Zustand von (B,A)(\mathsf{B},\mathsf{A}), wenn Bob A\mathsf{A} erhält, ϕ.\vert \phi^-\rangle. Er transformiert diesen Zustand in 01\vert 01\rangle und erhält cd=01.cd = 01.

  • Falls cd=10,cd = 10, ist der Zustand von (B,A)(\mathsf{B},\mathsf{A}), wenn Bob A\mathsf{A} erhält, ψ+.\vert \psi^+\rangle. Er transformiert diesen Zustand in 10\vert 10\rangle und erhält cd=10.cd = 10.

  • Falls cd=11,cd = 11, ist der Zustand von (B,A)(\mathsf{B},\mathsf{A}), wenn Bob A\mathsf{A} erhält, ψ.\vert \psi^-\rangle. Er transformiert diesen Zustand in 11-\vert 11\rangle und erhält cd=11.cd = 11. (Der Phasenfaktor 1-1 hat hier keinen Einfluss.)

Superdense-Coding-Implementierung

Hier ist eine einfache Implementierung von Superdense Coding, bei der wir den Circuit selbst in Abhängigkeit von den zu übertragenden Bits festlegen. Zunächst wählen wir zwei zu übertragende Bits. (Später werden wir sie zufällig wählen, aber für den Moment treffen wir einfach eine beliebige Wahl.)

c = "1"
d = "0"

Jetzt bauen wir den Circuit entsprechend auf. Hier lassen wir Qiskit die Standardnamen für die Qubits verwenden: q0\mathsf{q}_0 für das obere Qubit und q1\mathsf{q}_1 für das untere.

protocol = QuantumCircuit(2)

# Prepare ebit used for superdense coding
protocol.h(0)
protocol.cx(0, 1)
protocol.barrier()

# Alice's operations
if d == "1":
protocol.z(0)
if c == "1":
protocol.x(0)
protocol.barrier()

# Bob's actions
protocol.cx(0, 1)
protocol.h(0)
protocol.measure_all()

display(protocol.draw(output="mpl"))

Ausgabe der vorherigen Code-Zelle

Neu hier ist vor allem die Funktion measure_all, die alle Qubits misst und die Ergebnisse in ein einziges klassisches Register schreibt (in diesem Fall also zwei Bits).

Der Aer-Simulator liefert die erwartete Ausgabe.

result = AerSimulator().run(protocol).result()
statistics = result.get_counts()

for outcome, frequency in statistics.items():
print(f"Measured {outcome} with frequency {frequency}")

display(plot_histogram(statistics))
Measured 10 with frequency 1024

Ausgabe der vorherigen Code-Zelle

Jetzt verwenden wir ein zusätzliches Qubit als Zufallsbit-Generator — im Wesentlichen zum Werfen fairer Münzen. Damit wählen wir cc und dd zufällig aus und führen anschließend das Superdense-Coding-Protokoll aus.

rbg = QuantumRegister(1, "coin")
ebit0 = QuantumRegister(1, "A")
ebit1 = QuantumRegister(1, "B")

Alice_c = ClassicalRegister(1, "Alice c")
Alice_d = ClassicalRegister(1, "Alice d")

test = QuantumCircuit(rbg, ebit0, ebit1, Alice_d, Alice_c)

# Initialize the ebit
test.h(ebit0)
test.cx(ebit0, ebit1)
test.barrier()

# Use the 'coin' qubit twice to generate Alice's bits c and d.
test.h(rbg)
test.measure(rbg, Alice_c)
test.h(rbg)
test.measure(rbg, Alice_d)
test.barrier()

# Now the protocol runs, starting with Alice's actions, which depend
# on her bits.
with test.if_test((Alice_d, 1), label="Z"):
test.z(ebit0)
with test.if_test((Alice_c, 1), label="X"):
test.x(ebit0)
test.barrier()

# Bob's actions
test.cx(ebit0, ebit1)
test.h(ebit0)
test.barrier()

Bob_c = ClassicalRegister(1, "Bob c")
Bob_d = ClassicalRegister(1, "Bob d")
test.add_register(Bob_d)
test.add_register(Bob_c)
test.measure(ebit0, Bob_d)
test.measure(ebit1, Bob_c)

display(test.draw(output="mpl"))

Ausgabe der vorherigen Code-Zelle

Die Ausführung des Aer-Simulators zeigt die Ergebnisse: Die klassischen Bits von Alice und Bob stimmen stets überein.

result = AerSimulator().run(test).result()
statistics = result.get_counts()
display(plot_histogram(statistics))

Ausgabe der vorherigen Code-Zelle

Das CHSH-Spiel

Das letzte Beispiel in dieser Lektion ist kein Protokoll, sondern ein Spiel, bekannt als das CHSH-Spiel.

Wenn wir hier von einem Spiel sprechen, meinen wir damit keine Freizeitbeschäftigung oder ein sportliches Kräftemessen, sondern eine mathematische Abstraktion im Sinne der Spieltheorie. Mathematische Abstraktionen von Spielen werden beispielsweise in der Wirtschaftswissenschaft und der Informatik untersucht — sie sind sowohl faszinierend als auch nützlich.

Die Buchstaben CHSH stehen für die Autoren — John Clauser, Michael Horne, Abner Shimony und Richard Holt — eines Aufsatzes von 1969, in dem das Beispiel erstmals beschrieben wurde. Sie beschrieben das Beispiel nicht als Spiel, sondern als Experiment. Die Beschreibung als Spiel ist jedoch sowohl naheliegend als auch intuitiv.

Das CHSH-Spiel gehört zu einer Klasse von Spielen, die als nichtlokale Spiele bekannt sind. Nichtlokale Spiele sind ungemein interessant und stehen in tiefem Zusammenhang mit Physik, Informatik und Mathematik — mit Rätseln, die bis heute ungelöst bleiben. Wir beginnen den Abschnitt damit, nichtlokale Spiele zu erklären, und widmen uns dann dem CHSH-Spiel und dem, was es so besonders macht.

Nichtlokale Spiele

Ein nichtlokales Spiel ist ein kooperatives Spiel, bei dem zwei Spieler, Alice und Bob, zusammenarbeiten, um ein bestimmtes Ergebnis zu erzielen. Das Spiel wird von einem Schiedsrichter geleitet, der sich an strenge Regeln hält, die Alice und Bob bekannt sind.

Alice und Bob können sich nach Belieben auf das Spiel vorbereiten, doch sobald das Spiel beginnt, ist ihnen die Kommunikation verboten. Man kann sich vorstellen, dass das Spiel in einer Art Sicherheitseinrichtung stattfindet — als ob der Schiedsrichter die Rolle eines Detektivs spielt und Alice und Bob Verdächtige sind, die in getrennten Räumen verhört werden. Eine andere Sichtweise auf die Situation ist, dass Alice und Bob durch eine enorme Entfernung voneinander getrennt sind und die Kommunikation untersagt ist, weil die Lichtgeschwindigkeit innerhalb der Laufzeit des Spiels keine Übermittlung erlaubt. Das heißt: Wenn Alice versucht, Bob eine Nachricht zu senden, ist das Spiel bereits vorbei, bevor er sie erhält, und umgekehrt.

Bei einem nichtlokalen Spiel stellt der Schiedsrichter zunächst Alice und Bob je eine Frage. Wir verwenden den Buchstaben xx für Alices Frage und yy für Bobs Frage. Dabei denken wir an xx und yy als klassische Zustände; im CHSH-Spiel sind xx und yy Bits.

Der Schiedsrichter wählt diese Fragen mittels Zufälligkeit aus. Genauer gesagt ist jedem möglichen Fragepaar (x,y)(x,y) eine Wahrscheinlichkeit p(x,y)p(x,y) zugeordnet, und der Schiedsrichter hat zugesichert, die Fragen zum Zeitpunkt des Spiels auf diese Weise zufällig auszuwählen. Alle — einschließlich Alice und Bob — kennen diese Wahrscheinlichkeiten, aber niemand weiß konkret, welches Paar (x,y)(x,y) gewählt wird, bis das Spiel beginnt.

Nachdem Alice und Bob ihre Fragen erhalten haben, müssen sie Antworten geben: Alices Antwort ist aa und Bobs Antwort ist b.b. Auch diese sind im Allgemeinen klassische Zustände und im CHSH-Spiel Bits.

An diesem Punkt trifft der Schiedsrichter eine Entscheidung: Alice und Bob gewinnen oder verlieren je nachdem, ob das Antwortpaar (a,b)(a,b) gemäß einem festen Regelwerk als korrekt für das Fragepaar (x,y)(x,y) gilt oder nicht. Unterschiedliche Regeln bedeuten unterschiedliche Spiele; die Regeln für das CHSH-Spiel werden im nächsten Abschnitt beschrieben. Wie bereits angedeutet, sind die Regeln allen bekannt.

Das folgende Diagramm zeigt eine grafische Darstellung der Interaktionen.

Nonlocal game

Die Unsicherheit darüber, welche Fragen gestellt werden, und insbesondere die Tatsache, dass jeder Spieler die Frage des anderen nicht kennt, macht nichtlokale Spiele für Alice und Bob anspruchsvoll — ganz wie zwei kolludierende Verdächtige in getrennten Räumen, die versuchen, ihre Geschichte konsistent zu halten.

Eine präzise Beschreibung des Schiedsrichters definiert eine Instanz eines nichtlokalen Spiels. Dazu gehört eine Angabe der Wahrscheinlichkeiten p(x,y)p(x,y) für jedes Fragepaar sowie die Regeln, die bestimmen, ob jedes Antwortpaar (a,b)(a,b) für jedes mögliche Fragepaar (x,y)(x,y) gewinnt oder verliert.

Wir werden uns gleich das CHSH-Spiel ansehen, doch zuvor sei kurz erwähnt, dass es auch sehr interessant ist, andere nichtlokale Spiele zu betrachten. Tatsächlich ist das äußerst interessant: Es gibt einige recht einfache nichtlokale Spiele, bei denen bisher nicht bekannt ist, wie gut Alice und Bob mit Verschränkung spielen können. Die Grundkonstruktion ist einfach, doch dahinter steckt Komplexität — und bei manchen Spielen kann es unmöglich schwierig sein, beste oder nahezu optimale Strategien für Alice und Bob zu berechnen. Das ist die überraschend kontraintuitive Natur des nichtlokalen Spielemodells.

Beschreibung des CHSH-Spiels

Hier ist die genaue Beschreibung des CHSH-Spiels, wobei (wie oben) xx Alices Frage, yy Bobs Frage, aa Alices Antwort und bb Bobs Antwort ist:

  • Die Fragen und Antworten sind allesamt Bits: x,y,a,b{0,1}.x,y,a,b\in\{0,1\}.

  • Der Schiedsrichter wählt die Fragen (x,y)(x,y) gleichmäßig zufällig. Das heißt, jede der vier Möglichkeiten, (0,0),(0,0), (0,1),(0,1), (1,0)(1,0) und (1,1),(1,1), wird mit der Wahrscheinlichkeit 1/41/4 ausgewählt.

  • Die Antworten (a,b)(a,b) gewinnen für die Fragen (x,y),(x,y), wenn ab=xya\oplus b = x\wedge y gilt, und verlieren andernfalls. Die folgende Tabelle drückt diese Regel aus, indem sie für jedes Fragepaar (x,y)(x,y) die Gewinn- und Verlustbedingungen der Antworten (a,b)(a,b) auflistet.

(x,y)winlose(0,0)a=bab(0,1)a=bab(1,0)a=bab(1,1)aba=b\begin{array}{ccc} (x,y) & \text{win} & \text{lose} \\[1mm]\hline \rule{0mm}{4mm}(0,0) & a = b & a \neq b \\[1mm] (0,1) & a = b & a \neq b \\[1mm] (1,0) & a = b & a \neq b \\[1mm] (1,1) & a \neq b & a = b \end{array}

Grenzen klassischer Strategien

Betrachten wir nun Strategien für Alice und Bob im CHSH-Spiel, beginnend mit klassischen Strategien.

Deterministische Strategien

Wir beginnen mit deterministischen Strategien, bei denen Alices Antwort aa eine Funktion der Frage xx ist, die sie erhält, und entsprechend Bobs Antwort bb eine Funktion der Frage yy, die er erhält. So können wir beispielsweise a(0)a(0) für Alices Antwort schreiben, wenn ihre Frage 00 ist, und a(1)a(1) für Alices Antwort, wenn ihre Frage 11 ist.

Keine deterministische Strategie kann das CHSH-Spiel jedes Mal gewinnen. Eine Möglichkeit, dies einzusehen, besteht darin, alle möglichen deterministischen Strategien einzeln durchzugehen und zu prüfen, dass jede von ihnen bei mindestens einem der vier möglichen Fragepaare verliert. Alice und Bob können jeweils aus vier möglichen Funktionen von einem Bit auf ein Bit wählen — die wir in der Lektion über Einzelsysteme kennengelernt haben — sodass insgesamt 1616 verschiedene deterministische Strategien zu überprüfen sind.

Wir können dies auch analytisch begründen. Wenn Alice und Bobs Strategie bei (x,y)=(0,0)(x,y) = (0,0) gewinnt, muss a(0)=b(0)a(0) = b(0) gelten; wenn ihre Strategie bei (x,y)=(0,1)(x,y) = (0,1) gewinnt, gilt a(0)=b(1);a(0) = b(1); und wenn die Strategie bei (x,y)=(1,0)(x,y)=(1,0) gewinnt, gilt a(1)=b(0).a(1) = b(0). Wenn ihre Strategie also bei allen drei Möglichkeiten gewinnt, gilt

b(1)=a(0)=b(0)=a(1).b(1) = a(0) = b(0) = a(1).

Das bedeutet, dass die Strategie im letzten Fall (x,y)=(1,1)(x,y) = (1,1) verliert, wo zum Gewinnen a(1)b(1)a(1) \neq b(1) erforderlich ist. Es kann daher keine deterministische Strategie geben, die immer gewinnt.

Andererseits ist es leicht, deterministische Strategien zu finden, die in drei der vier Fälle gewinnen, etwa a(0)=a(1)=b(0)=b(1)=0.a(0)=a(1)=b(0)=b(1)=0. Daraus schließen wir, dass die maximale Gewinnwahrscheinlichkeit für Alice und Bob mit einer deterministischen Strategie 3/43/4 beträgt.

Probabilistische Strategien

Wie wir gerade festgestellt haben, können Alice und Bob mit einer deterministischen Strategie das CHSH-Spiel nicht öfter als 75 % der Zeit gewinnen. Aber was ist mit einer probabilistischen Strategie? Könnte es Alice und Bob helfen, Zufälligkeit zu nutzen — einschließlich der Möglichkeit gemeinsamer Zufälligkeit, bei der ihre zufälligen Entscheidungen korreliert sind?

Es stellt sich heraus, dass probabilistische Strategien überhaupt nicht helfen, die Gewinnwahrscheinlichkeit von Alice und Bob zu erhöhen. Der Grund dafür ist, dass jede probabilistische Strategie alternativ als eine zufällige Auswahl einer deterministischen Strategie angesehen werden kann, genauso wie (wie in der Lektion über Einzelsysteme erwähnt) probabilistische Operationen als zufällige Auswahl deterministischer Operationen betrachtet werden können. Der Durchschnitt ist nie größer als das Maximum, und daher bieten probabilistische Strategien keinen Vorteil hinsichtlich ihrer gesamten Gewinnwahrscheinlichkeit.

Somit ist das Gewinnen mit Wahrscheinlichkeit 3/43/4 das Beste, was Alice und Bob mit irgendeiner klassischen Strategie erreichen können, egal ob deterministisch oder probabilistisch.

Strategie für das CHSH-Spiel

An diesem Punkt stellt sich die natürliche Frage, ob Alice und Bob mit einer Quantenstrategie besser abschneiden können. Insbesondere: Wenn sie sich einen verschränkten Quantenzustand teilen, wie die folgende Abbildung andeutet — den sie vor dem Spiel hätten vorbereiten können —, können sie dann ihre Gewinnwahrscheinlichkeit erhöhen?

Nonlocal game with entanglement

Die Antwort ist ja, und das ist der Kernpunkt dieses Beispiels und der Grund, warum es so interessant ist. Schauen wir uns also genau an, wie Alice und Bob mit Verschränkung in diesem Spiel besser abschneiden können.

Benötigte Vektoren und Matrizen

Als Erstes müssen wir einen Qubit-Zustandsvektor ψθ\vert \psi_{\theta}\rangle für jede reelle Zahl θ\theta (die wir als Winkel in Radiant auffassen) wie folgt definieren.

ψθ=cos(θ)0+sin(θ)1\vert\psi_{\theta}\rangle = \cos(\theta)\vert 0\rangle + \sin(\theta) \vert 1\rangle

Hier sind einige einfache Beispiele:

ψ0=0ψπ/2=1ψπ/4=+ψπ/4=\begin{aligned} \vert\psi_{0}\rangle & = \vert 0\rangle \\ \vert\psi_{\pi/2}\rangle & = \vert 1\rangle \\ \vert\psi_{\pi/4}\rangle & = \vert + \rangle \\ \vert\psi_{-\pi/4}\rangle & = \vert - \rangle \end{aligned}

Wir haben außerdem die folgenden Beispiele, die in der nachfolgenden Analyse auftreten:

ψπ/8=2+2202221ψπ/8=2+220+2221ψ3π/8=2220+2+221ψ5π/8=2220+2+221\begin{aligned} \vert\psi_{-\pi/8}\rangle & = \frac{\sqrt{2 + \sqrt{2}}}{2}\vert 0\rangle -\frac{\sqrt{2 - \sqrt{2}}}{2}\vert 1\rangle \\[1mm] \vert\psi_{\pi/8}\rangle & = \frac{\sqrt{2 + \sqrt{2}}}{2}\vert 0\rangle + \frac{\sqrt{2 - \sqrt{2}}}{2}\vert 1\rangle \\[1mm] \vert\psi_{3\pi/8}\rangle & = \frac{\sqrt{2 - \sqrt{2}}}{2}\vert 0\rangle + \frac{\sqrt{2 + \sqrt{2}}}{2}\vert 1\rangle \\[1mm] \vert\psi_{5\pi/8}\rangle & = -\frac{\sqrt{2 - \sqrt{2}}}{2}\vert 0\rangle + \frac{\sqrt{2 + \sqrt{2}}}{2}\vert 1\rangle \end{aligned}

Betrachten wir die allgemeine Form, so stellen wir fest, dass das innere Produkt zwischen zwei dieser Vektoren die folgende Formel hat:

ψαψβ=cos(α)cos(β)+sin(α)sin(β)=cos(αβ).(3)\langle \psi_{\alpha} \vert \psi_{\beta} \rangle = \cos(\alpha)\cos(\beta) + \sin(\alpha)\sin(\beta) = \cos(\alpha-\beta). \tag{3}

Genauer gesagt enthalten diese Vektoren nur reelle Einträge, sodass man sich keine Gedanken über komplexe Konjugation machen muss: das innere Produkt ist das Produkt der Kosinusse plus das Produkt der Sinusse. Die Anwendung einer der Winkeladditionsformeln aus der Trigonometrie führt zur obigen Vereinfachung. Diese Formel offenbart die geometrische Interpretation des inneren Produkts zwischen reellen Einheitsvektoren als Kosinus des Winkels zwischen ihnen.

Berechnen wir das innere Produkt des Tensorprodukts zweier dieser Vektoren mit dem ϕ+\vert \phi^+\rangle-Zustand, erhalten wir einen ähnlichen Ausdruck, jedoch mit einem 2\sqrt{2} im Nenner:

ψαψβϕ+=cos(α)cos(β)+sin(α)sin(β)2=cos(αβ)2.(4)\langle \psi_{\alpha} \otimes \psi_{\beta} \vert \phi^+ \rangle = \frac{\cos(\alpha)\cos(\beta) + \sin(\alpha)\sin(\beta)}{\sqrt{2}} = \frac{\cos(\alpha-\beta)}{\sqrt{2}}. \tag{4}

Unser Interesse an diesem bestimmten inneren Produkt wird gleich klar werden; vorerst halten wir dies lediglich als Formel fest.

Als Nächstes definieren wir eine unitäre Matrix UθU_{\theta} für jeden Winkel θ\theta wie folgt.

Uθ=0ψθ+1ψθ+π/2U_{\theta} = \vert 0 \rangle \langle \psi_{\theta} \vert + \vert 1\rangle\langle \psi_{\theta+\pi/2} \vert

Intuitiv gesprochen transformiert diese Matrix ψθ\vert\psi_{\theta}\rangle in 0\vert 0\rangle und ψθ+π/2\vert \psi_{\theta + \pi/2}\rangle in 1.\vert 1\rangle. Um zu überprüfen, dass dies eine unitäre Matrix ist, ist eine wichtige Beobachtung, dass die Vektoren ψθ\vert\psi_{\theta}\rangle und ψθ+π/2\vert\psi_{\theta + \pi/2}\rangle für jeden Winkel θ\theta orthogonal sind:

ψθψθ+π/2=cos(π/2)=0.\langle \psi_{\theta} \vert \psi_{\theta + \pi/2} \rangle = \cos(\pi/2) = 0.

Damit ergibt sich

UθUθ=(0ψθ+1ψθ+π/2)(ψθ0+ψθ+π/21)=0ψθψθ0+0ψθψθ+π/21+1ψθ+π/2ψθ0+1ψθ+π/2ψθ+π/21=00+11=I.\begin{aligned} U_{\theta} U_{\theta}^{\dagger} & = \bigl(\vert 0 \rangle \langle \psi_{\theta} \vert + \vert 1\rangle\langle \psi_{\theta+\pi/2} \vert\bigr) \bigl(\vert \psi_{\theta} \rangle \langle 0 \vert + \vert \psi_{\theta+\pi/2}\rangle\langle 1 \vert\bigr) \\[1mm] & = \vert 0 \rangle \langle \psi_{\theta} \vert \psi_{\theta} \rangle \langle 0 \vert + \vert 0 \rangle \langle \psi_{\theta} \vert \psi_{\theta+\pi/2} \rangle \langle 1 \vert + \vert 1 \rangle \langle \psi_{\theta+\pi/2} \vert \psi_{\theta} \rangle \langle 0 \vert + \vert 1 \rangle \langle \psi_{\theta+\pi/2} \vert \psi_{\theta+\pi/2} \rangle \langle 1 \vert \\[1mm] & = \vert 0 \rangle \langle 0 \vert + \vert 1 \rangle \langle 1 \vert\\[1mm] & = \mathbb{I}. \end{aligned}

Wir können diese Matrix alternativ auch explizit schreiben als

Uθ=(cos(θ)sin(θ)cos(θ+π/2)sin(θ+π/2))=(cos(θ)sin(θ)sin(θ)cos(θ)).U_{\theta} = \begin{pmatrix} \cos(\theta) & \sin(\theta)\\[1mm] \cos(\theta+ \pi/2) & \sin(\theta + \pi/2) \end{pmatrix} = \begin{pmatrix} \cos(\theta) & \sin(\theta)\\[1mm] -\sin(\theta) & \cos(\theta) \end{pmatrix}.

Dies ist ein Beispiel einer Rotationsmatrix, die zweidimensionale Vektoren mit reellen Einträgen um den Winkel θ-\theta um den Ursprung dreht. Folgen wir einer Standardkonvention für die Benennung und Parametrisierung von Rotationen verschiedener Formen, so gilt Uθ=Ry(2θ)U_{\theta} = R_y(-2\theta) mit

Ry(θ)=(cos(θ/2)sin(θ/2)sin(θ/2)cos(θ/2)).R_y(\theta) = \begin{pmatrix} \cos(\theta/2) & -\sin(\theta/2)\\[1mm] \sin(\theta/2) & \cos(\theta/2) \end{pmatrix}.

Strategiebeschreibung

Nun können wir die Quantenstrategie beschreiben.

  • Vorbereitung: Alice und Bob beginnen das Spiel mit einem gemeinsamen E-Bit: Alice hält ein Qubit A,\mathsf{A}, Bob hält ein Qubit B,\mathsf{B}, und zusammen befinden sich die beiden Qubits (X,Y)(\mathsf{X},\mathsf{Y}) im Zustand ϕ+.\vert\phi^+\rangle.

  • Alices Aktionen:

    • Erhält Alice die Frage x=0,x=0, wendet sie U0U_{0} auf ihr Qubit A\mathsf{A} an.
    • Erhält Alice die Frage x=1,x=1, wendet sie Uπ/4U_{\pi/4} auf ihr Qubit A\mathsf{A} an.

    Die Operation, die Alice auf A\mathsf{A} ausführt, lässt sich alternativ so beschreiben:

    {U0if x=0Uπ/4if x=1\begin{cases} U_0 & \text{if $x = 0$}\\ U_{\pi/4} & \text{if $x = 1$} \end{cases}

    Nachdem Alice diese Operation angewendet hat, misst sie A\mathsf{A} mit einer Standardbasismessung und setzt ihre Antwort aa gleich dem Messergebnis.

  • Bobs Aktionen:

    • Erhält Bob die Frage y=0,y=0, wendet er Uπ/8U_{\pi/8} auf sein Qubit B\mathsf{B} an.
    • Erhält Bob die Frage y=1,y=1, wendet er Uπ/8U_{-\pi/8} auf sein Qubit B\mathsf{B} an.

    Wie bei Alice können wir Bobs Operation auf B\mathsf{B} so ausdrücken:

    {Uπ/8if y=0Uπ/8if y=1\begin{cases} U_{\pi/8} & \text{if $y = 0$}\\ U_{-\pi/8} & \text{if $y = 1$} \end{cases}

    Nachdem Bob diese Operation angewendet hat, misst er B\mathsf{B} mit einer Standardbasismessung und setzt seine Antwort bb gleich dem Messergebnis.

Hier ist ein Quantenschaltkreisdiagramm, das diese Strategie beschreibt:

CHSH game circuit

In diesem Diagramm sehen wir zwei gewöhnliche kontrollierte Gates, eines für Uπ/8U_{-\pi/8} oben und eines für Uπ/4U_{\pi/4} unten. Außerdem gibt es zwei Gates, die wie kontrollierte Gates aussehen, eines für Uπ/8U_{\pi/8} oben und eines für U0U_{0} unten, aber der Kreis, der das Steuersignal darstellt, ist nicht ausgefüllt. Das bezeichnet einen anderen Typ von kontrolliertem Gate, bei dem das Gate ausgeführt wird, wenn das Steuersignal auf 00 gesetzt ist (anstatt auf 11 wie bei einem gewöhnlichen kontrollierten Gate). Effektiv führt Bob also Uπ/8U_{\pi/8} auf seinem Qubit aus, wenn y=0y=0, und Uπ/8U_{-\pi/8}, wenn y=1y=1; und Alice führt U0U_0 auf ihrem Qubit aus, wenn x=0x=0, und Uπ/4U_{\pi/4}, wenn x=1x=1, was mit der oben stehenden Protokollbeschreibung übereinstimmt.

Es bleibt noch herauszufinden, wie gut diese Strategie für Alice und Bob funktioniert. Dazu gehen wir die vier möglichen Fragepaare einzeln durch.

Fallweise Analyse

  • Fall 1: (x,y)=(0,0).(x,y) = (0,0).

    In diesem Fall wendet Alice U0U_{0} auf ihr Qubit und Bob Uπ/8U_{\pi/8} auf seines an, sodass der Zustand der beiden Qubits (A,B)(\mathsf{A},\mathsf{B}) nach Ausführung ihrer Operationen ist:

    (U0Uπ/8)ϕ+=00ψ0ψπ/8ϕ++01ψ0ψ5π/8ϕ++10ψπ/2ψπ/8ϕ++11ψπ/2ψ5π/8ϕ+=cos(π8)00+cos(5π8)01+cos(3π8)10+cos(π8)112.\begin{aligned} \bigl(U_0 \otimes U_{\pi/8}\bigr) \vert \phi^+\rangle & = \vert 00 \rangle \langle \psi_0 \otimes \psi_{\pi/8}\vert \phi^+\rangle + \vert 01 \rangle \langle \psi_0 \otimes\psi_{5\pi/8}\vert \phi^+\rangle \\ & \qquad + \vert 10 \rangle \langle \psi_{\pi/2} \otimes \psi_{\pi/8}\vert \phi^+\rangle + \vert 11 \rangle \langle \psi_{\pi/2} \otimes \psi_{5\pi/8}\vert \phi^+\rangle\\[2mm] & = \frac{ \cos\bigl(-\frac{\pi}{8}\bigr) \vert 00\rangle + \cos\bigl(-\frac{5\pi}{8}\bigr) \vert 01\rangle + \cos\bigl(\frac{3\pi}{8}\bigr) \vert 10\rangle + \cos\bigl(-\frac{\pi}{8}\bigr) \vert 11\rangle}{\sqrt{2}}. \end{aligned}

    Die Wahrscheinlichkeiten für die vier möglichen Antwortpaare (a,b)(a,b) sind daher wie folgt.

    Pr((a,b)=(0,0))=12cos2(π8)=2+28Pr((a,b)=(0,1))=12cos2(5π8)=228Pr((a,b)=(1,0))=12cos2(3π8)=228Pr((a,b)=(1,1))=12cos2(π8)=2+28\begin{aligned} \operatorname{Pr}\bigl((a,b)=(0,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(-\frac{\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8} \\[2mm] \operatorname{Pr}\bigl((a,b)=(0,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(-\frac{5\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{3\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(-\frac{\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8} \end{aligned}

    Durch Summation erhalten wir dann die Wahrscheinlichkeiten, dass a=ba=b bzw. aba\neq b gilt.

    Pr(a=b)=2+24Pr(ab)=224\begin{aligned} \operatorname{Pr}(a = b) & = \frac{2 + \sqrt{2}}{4}\\[2mm] \operatorname{Pr}(a \neq b) & = \frac{2 - \sqrt{2}}{4} \end{aligned}

    Für das Fragepaar (0,0)(0,0) gewinnen Alice und Bob, wenn a=ba=b gilt, und daher gewinnen sie in diesem Fall mit der Wahrscheinlichkeit

    2+24.\frac{2 + \sqrt{2}}{4}.
  • Fall 2: (x,y)=(0,1).(x,y) = (0,1).

    In diesem Fall wendet Alice U0U_{0} auf ihr Qubit und Bob Uπ/8U_{-\pi/8} auf seines an, sodass der Zustand der beiden Qubits (A,B)(\mathsf{A},\mathsf{B}) nach Ausführung ihrer Operationen ist:

    (U0Uπ/8)ϕ+=00ψ0ψπ/8ϕ++01ψ0ψ3π/8ϕ++10ψπ/2ψπ/8ϕ++11ψπ/2ψ3π/8ϕ+=cos(π8)00+cos(3π8)01+cos(5π8)10+cos(π8)112.\begin{aligned} \bigl(U_0 \otimes U_{-\pi/8}\bigr) \vert \phi^+\rangle & = \vert 00 \rangle \langle \psi_0 \otimes \psi_{-\pi/8}\vert \phi^+\rangle + \vert 01 \rangle \langle \psi_0 \otimes\psi_{3\pi/8}\vert \phi^+\rangle \\ & \qquad + \vert 10 \rangle \langle \psi_{\pi/2} \otimes \psi_{-\pi/8}\vert \phi^+\rangle + \vert 11 \rangle \langle \psi_{\pi/2} \otimes \psi_{3\pi/8}\vert \phi^+\rangle\\[2mm] & = \frac{ \cos\bigl(\frac{\pi}{8}\bigr) \vert 00\rangle + \cos\bigl(-\frac{3\pi}{8}\bigr) \vert 01\rangle + \cos\bigl(\frac{5\pi}{8}\bigr) \vert 10\rangle + \cos\bigl(\frac{\pi}{8}\bigr) \vert 11\rangle}{\sqrt{2}}. \end{aligned}

    Die Wahrscheinlichkeiten für die vier möglichen Antwortpaare (a,b)(a,b) sind daher wie folgt.

    Pr((a,b)=(0,0))=12cos2(π8)=2+28Pr((a,b)=(0,1))=12cos2(3π8)=228Pr((a,b)=(1,0))=12cos2(5π8)=228Pr((a,b)=(1,1))=12cos2(π8)=2+28\begin{aligned} \operatorname{Pr}\bigl((a,b)=(0,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8} \\[2mm] \operatorname{Pr}\bigl((a,b)=(0,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(-\frac{3\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{5\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8} \end{aligned}

    Wiederum erhalten wir durch Summation die Wahrscheinlichkeiten, dass a=ba=b bzw. aba\neq b gilt.

    Pr(a=b)=2+24Pr(ab)=224\begin{aligned} \operatorname{Pr}(a = b) & = \frac{2 + \sqrt{2}}{4}\\[2mm] \operatorname{Pr}(a \neq b) & = \frac{2 - \sqrt{2}}{4} \end{aligned}

    Für das Fragepaar (0,1)(0,1) gewinnen Alice und Bob, wenn a=ba=b gilt, und daher gewinnen sie in diesem Fall mit der Wahrscheinlichkeit

    2+24.\frac{2 + \sqrt{2}}{4}.
  • Fall 3: (x,y)=(1,0).(x,y) = (1,0).

    In diesem Fall wendet Alice Uπ/4U_{\pi/4} auf ihr Qubit und Bob Uπ/8U_{\pi/8} auf seines an, sodass der Zustand der beiden Qubits (A,B)(\mathsf{A},\mathsf{B}) nach Ausführung ihrer Operationen ist:

    (Uπ/4Uπ/8)ϕ+=00ψπ/4ψπ/8ϕ++01ψπ/4ψ5π/8ϕ++10ψ3π/4ψπ/8ϕ++11ψ3π/4ψ5π/8ϕ+=cos(π8)00+cos(3π8)01+cos(5π8)10+cos(π8)112.\begin{aligned} \bigl(U_{\pi/4} \otimes U_{\pi/8}\bigr) \vert \phi^+\rangle & = \vert 00 \rangle \langle \psi_{\pi/4} \otimes \psi_{\pi/8}\vert \phi^+\rangle + \vert 01 \rangle \langle \psi_{\pi/4} \otimes\psi_{5\pi/8}\vert \phi^+\rangle \\ & \qquad + \vert 10 \rangle \langle \psi_{3\pi/4} \otimes \psi_{\pi/8}\vert \phi^+\rangle + \vert 11 \rangle \langle \psi_{3\pi/4} \otimes \psi_{5\pi/8}\vert \phi^+\rangle\\[2mm] & = \frac{ \cos\bigl(\frac{\pi}{8}\bigr) \vert 00\rangle + \cos\bigl(-\frac{3\pi}{8}\bigr) \vert 01\rangle + \cos\bigl(\frac{5\pi}{8}\bigr) \vert 10\rangle + \cos\bigl(\frac{\pi}{8}\bigr) \vert 11\rangle}{\sqrt{2}}. \end{aligned}

    Die Wahrscheinlichkeiten für die vier möglichen Antwortpaare (a,b)(a,b) sind daher wie folgt.

    Pr((a,b)=(0,0))=12cos2(π8)=2+28Pr((a,b)=(0,1))=12cos2(3π8)=228Pr((a,b)=(1,0))=12cos2(5π8)=228Pr((a,b)=(1,1))=12cos2(π8)=2+28\begin{aligned} \operatorname{Pr}\bigl((a,b)=(0,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8} \\[2mm] \operatorname{Pr}\bigl((a,b)=(0,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(-\frac{3\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{5\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8} \end{aligned}

    Auch hier stellen wir fest, dass die Wahrscheinlichkeiten, dass a=ba=b bzw. aba\neq b gilt, wie folgt lauten.

    Pr(a=b)=2+24Pr(ab)=224\begin{aligned} \operatorname{Pr}(a = b) & = \frac{2 + \sqrt{2}}{4}\\[2mm] \operatorname{Pr}(a \neq b) & = \frac{2 - \sqrt{2}}{4} \end{aligned}

    Für das Fragepaar (1,0)(1,0) gewinnen Alice und Bob, wenn a=ba=b gilt, sodass sie in diesem Fall mit der Wahrscheinlichkeit

    2+24\frac{2 + \sqrt{2}}{4}

    gewinnen.

  • Fall 4: (x,y)=(1,1).(x,y) = (1,1).

    Der letzte Fall unterscheidet sich etwas, was zu erwarten war, da die Gewinnbedingung in diesem Fall anders ist. Wenn xx und yy beide 11 sind, gewinnen Alice und Bob, wenn aa und bb verschieden sind. In diesem Fall wendet Alice Uπ/4U_{\pi/4} auf ihr Qubit und Bob Uπ/8U_{-\pi/8} auf seines an, sodass der Zustand der beiden Qubits (A,B)(\mathsf{A},\mathsf{B}) nach Ausführung ihrer Operationen ist:

    (Uπ/4Uπ/8)ϕ+=00ψπ/4ψπ/8ϕ++01ψπ/4ψ3π/8ϕ++10ψ3π/4ψπ/8ϕ++11ψ3π/4ψ3π/8ϕ+=cos(3π8)00+cos(π8)01+cos(7π8)10+cos(3π8)112.\begin{aligned} \bigl(U_{\pi/4} \otimes U_{-\pi/8}\bigr) \vert \phi^+\rangle & = \vert 00 \rangle \langle \psi_{\pi/4} \otimes \psi_{-\pi/8}\vert \phi^+\rangle + \vert 01 \rangle \langle \psi_{\pi/4} \otimes\psi_{3\pi/8}\vert \phi^+\rangle \\ & \qquad + \vert 10 \rangle \langle \psi_{3\pi/4} \otimes \psi_{-\pi/8}\vert \phi^+\rangle + \vert 11 \rangle \langle \psi_{3\pi/4} \otimes \psi_{3\pi/8}\vert \phi^+\rangle\\[2mm] & = \frac{ \cos\bigl(\frac{3\pi}{8}\bigr) \vert 00\rangle + \cos\bigl(-\frac{\pi}{8}\bigr) \vert 01\rangle + \cos\bigl(\frac{7\pi}{8}\bigr) \vert 10\rangle + \cos\bigl(\frac{3\pi}{8}\bigr) \vert 11\rangle}{\sqrt{2}}. \end{aligned}

    Die Wahrscheinlichkeiten für die vier möglichen Antwortpaare (a,b)(a,b) sind daher wie folgt.

    Pr((a,b)=(0,0))=12cos2(3π8)=228Pr((a,b)=(0,1))=12cos2(π8)=2+28Pr((a,b)=(1,0))=12cos2(7π8)=2+28Pr((a,b)=(1,1))=12cos2(3π8)=228\begin{aligned} \operatorname{Pr}\bigl((a,b)=(0,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{3\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8} \\[2mm] \operatorname{Pr}\bigl((a,b)=(0,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(-\frac{\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,0)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{7\pi}{8}\Bigr) = \frac{2+\sqrt{2}}{8}\\[2mm] \operatorname{Pr}\bigl((a,b)=(1,1)\bigr) & = \frac{1}{2}\cos^2\Bigl(\frac{3\pi}{8}\Bigr) = \frac{2-\sqrt{2}}{8} \end{aligned}

    Die Wahrscheinlichkeiten haben gegenüber den drei anderen Fällen effektiv die Plätze getauscht. Durch Summation erhalten wir die Wahrscheinlichkeiten, dass a=ba=b bzw. aba\neq b gilt.

    Pr(a=b)=224Pr(ab)=2+24\begin{aligned} \operatorname{Pr}(a = b) & = \frac{2 - \sqrt{2}}{4}\\[2mm] \operatorname{Pr}(a \neq b) & = \frac{2 + \sqrt{2}}{4} \end{aligned}

    Für das Fragepaar (1,1)(1,1) gewinnen Alice und Bob, wenn aba\neq b gilt, und daher gewinnen sie in diesem Fall mit der Wahrscheinlichkeit

    2+24.\frac{2 + \sqrt{2}}{4}.

In jedem Fall gewinnen sie mit derselben Wahrscheinlichkeit:

2+240,85. \frac{2 + \sqrt{2}}{4} \approx 0{,}85.

Dies ist daher die Wahrscheinlichkeit, mit der sie insgesamt gewinnen. Das ist deutlich besser, als es jede klassische Strategie für dieses Spiel kann; klassische Strategien haben eine Gewinnwahrscheinlichkeit, die durch 3/43/4 beschränkt ist. Und das macht dieses Beispiel so interessant.

Dies ist zufällig die optimale Gewinnwahrscheinlichkeit für Quantenstrategien; wir können diesen Wert nicht übertreffen, egal welchen verschränkten Zustand oder welche Messungen wir wählen. Diese Tatsache ist als Tsirelsons Ungleichung bekannt, benannt nach Boris Tsirelson, der sie zuerst bewies — und das CHSH-Experiment erstmals als Spiel beschrieb.

Geometrische Betrachtung

Es ist möglich, die oben beschriebene Strategie geometrisch zu betrachten, was dabei helfen kann, die Beziehungen zwischen den verschiedenen Winkeln zu verstehen, die für Alices und Bobs Operationen gewählt wurden.

Was Alice effektiv tut, ist, einen Winkel α\alpha abhängig von ihrer Frage xx zu wählen, dann UαU_{\alpha} auf ihr Qubit anzuwenden und zu messen. Ebenso wählt Bob einen Winkel β\beta abhängig von yy, wendet dann UβU_{\beta} auf sein Qubit an und misst. Wir haben α\alpha und β\beta wie folgt gewählt.

α={0x=0π/4x=1β={π/8y=0π/8y=1\begin{aligned} \alpha & = \begin{cases} 0 & x=0\\ \pi/4 & x=1 \end{cases}\\[4mm] \beta & = \begin{cases} \pi/8 & y = 0\\ -\pi/8 & y = 1 \end{cases} \end{aligned}

Betrachten wir α\alpha und β\beta zunächst als beliebig. Durch die Wahl von α\alpha definiert Alice effektiv eine Orthonormalbasis von Vektoren, die so aussieht:

Basis for Alice

Bob macht dasselbe, nur mit dem Winkel β\beta:

Basis for Bob

Die Farben der Vektoren entsprechen den Antworten von Alice und Bob: blau für 00 und rot für 1.1.

Wenn wir nun (33) und (44) kombinieren, erhalten wir die Formel

ψαψβϕ+=12ψαψβ;\langle \psi_{\alpha} \otimes\psi_{\beta} \vert \phi^+ \rangle = \frac{1}{\sqrt{2}} \langle \psi_{\alpha} \vert \psi_{\beta} \rangle;

dies gilt für alle reellen Zahlen α\alpha und β.\beta.

Wenn wir dieselbe Art von Analyse wie oben durchführen, aber mit α\alpha und β\beta als Variablen, erhalten wir Folgendes:

(UαUβ)ϕ+=00ψαψβϕ++01ψαψβ+π/2ϕ++10ψα+π/2ψβϕ++11ψα+π/2ψβ+π/2ϕ+=ψαψβ00+ψαψβ+π/201+ψα+π/2ψβ10+ψα+π/2ψβ+π/2112. \begin{aligned} & \bigl(U_{\alpha} \otimes U_{\beta}\bigr) \vert \phi^+\rangle\\[1mm] & \qquad = \vert 00 \rangle \langle \psi_{\alpha} \otimes \psi_{\beta}\vert \phi^+\rangle + \vert 01 \rangle \langle \psi_{\alpha} \otimes\psi_{\beta + \pi/2}\vert \phi^+\rangle \\ & \qquad \qquad + \vert 10 \rangle \langle \psi_{\alpha+\pi/2} \otimes \psi_{\beta}\vert \phi^+\rangle + \vert 11 \rangle \langle \psi_{\alpha+\pi/2} \otimes \psi_{\beta+\pi/2}\vert \phi^+\rangle\\[2mm] & \qquad = \frac{ \langle \psi_\alpha \vert \psi_\beta \rangle \vert 00\rangle + \langle \psi_\alpha \vert \psi_{\beta+\pi/2} \rangle \vert 01\rangle + \langle \psi_{\alpha+\pi/2} \vert \psi_\beta \rangle \vert 10\rangle + \langle \psi_{\alpha+\pi/2} \vert \psi_{\beta+\pi/2} \rangle \vert 11\rangle }{\sqrt{2}}. \end{aligned}

Wir schließen daraus diese beiden Formeln:

Pr(a=b)=12ψαψβ2+12ψα+π/2ψβ+π/22=cos2(αβ)Pr(ab)=12ψαψβ+π/22+12ψα+π/2ψβ2=sin2(αβ).\begin{aligned} \operatorname{Pr}(a = b) & = \frac{1}{2} \vert \langle \psi_\alpha \vert \psi_\beta \rangle \vert^2 + \frac{1}{2} \vert \langle \psi_{\alpha+\pi/2} \vert \psi_{\beta+\pi/2} \rangle \vert^2 = \cos^2(\alpha - \beta)\\[2mm] \operatorname{Pr}(a \neq b) & = \frac{1}{2} \vert \langle \psi_\alpha \vert \psi_{\beta+\pi/2} \rangle \vert^2 + \frac{1}{2} \vert \langle \psi_{\alpha+\pi/2} \vert \psi_\beta \rangle \vert^2 = \sin^2(\alpha - \beta). \end{aligned}

Diese Gleichungen lassen sich mit den obigen Abbildungen in Verbindung bringen, indem man sich vorstellt, die von Alice und Bob gewählten Basen zu überlagern.

Die Strategie erkunden

Wenn (x,y)=(0,0)(x,y) = (0,0) gilt, wählen Alice und Bob α=0\alpha = 0 und β=π/8,\beta = \pi/8, und durch Überlagerung ihrer Basen erhalten wir diese Abbildung:

Alice and Bob bases case 1

Der Winkel zwischen den roten Vektoren beträgt π/8,\pi/8, ebenso wie der Winkel zwischen den beiden blauen Vektoren. Die Wahrscheinlichkeit, dass Alice und Bobs Ergebnisse übereinstimmen, ist das Cosinus-Quadrat dieses Winkels,

cos2(π8)=2+24,\cos^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2 + \sqrt{2}}{4},

während die Wahrscheinlichkeit, dass sie nicht übereinstimmen, das Sinus-Quadrat dieses Winkels ist,

sin2(π8)=224.\sin^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2 - \sqrt{2}}{4}.

Wenn (x,y)=(0,1)(x,y) = (0,1) gilt, wählen Alice und Bob α=0\alpha = 0 und β=π/8,\beta = -\pi/8, und durch Überlagerung ihrer Basen erhalten wir diese Abbildung:

Alice and Bob bases case 1

Der Winkel zwischen den roten Vektoren beträgt wieder π/8,\pi/8, ebenso der Winkel zwischen den blauen Vektoren. Die Wahrscheinlichkeit, dass Alice und Bobs Ergebnisse übereinstimmen, ist wieder das Cosinus-Quadrat dieses Winkels,

cos2(π8)=2+24,\cos^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2 + \sqrt{2}}{4},

während die Wahrscheinlichkeit, dass sie nicht übereinstimmen, das Sinus-Quadrat dieses Winkels ist,

sin2(π8)=224.\sin^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2 - \sqrt{2}}{4}.

Wenn (x,y)=(1,0)(x,y) = (1,0) gilt, wählen Alice und Bob α=π/4\alpha = \pi/4 und β=π/8,\beta = \pi/8, und durch Überlagerung ihrer Basen erhalten wir diese Abbildung:

Alice and Bob bases case 1

Die Basen haben sich geändert, aber die Winkel nicht — auch hier ist der Winkel zwischen Vektoren gleicher Farbe π/8.\pi/8. Die Wahrscheinlichkeit, dass Alice und Bobs Ergebnisse übereinstimmen, beträgt

cos2(π8)=2+24,\cos^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2 + \sqrt{2}}{4},

und die Wahrscheinlichkeit, dass sie nicht übereinstimmen, beträgt

sin2(π8)=224.\sin^2\Bigl(\frac{\pi}{8}\Bigr) = \frac{2 - \sqrt{2}}{4}.

Wenn (x,y)=(1,1)(x,y) = (1,1) gilt, wählen Alice und Bob α=π/4\alpha = \pi/4 und β=π/8.\beta = -\pi/8. Wenn wir ihre Basen überlagern, erkennen wir, dass sich etwas geändert hat:

Alice and Bob bases case 1

Durch die Wahl der Winkel beträgt diesmal der Winkel zwischen Vektoren gleicher Farbe 3π/83\pi/8 statt π/8.\pi/8. Die Wahrscheinlichkeit, dass Alice und Bobs Ergebnisse übereinstimmen, ist nach wie vor das Cosinus-Quadrat dieses Winkels, aber diesmal ist der Wert

cos2(3π8)=224.\cos^2\Bigl(\frac{3\pi}{8}\Bigr) = \frac{2 - \sqrt{2}}{4}.

Die Wahrscheinlichkeit, dass die Ergebnisse nicht übereinstimmen, ist das Sinus-Quadrat dieses Winkels, das in diesem Fall so lautet:

sin2(3π8)=2+24.\sin^2\Bigl(\frac{3\pi}{8}\Bigr) = \frac{2 + \sqrt{2}}{4}.

Anmerkungen

Die grundlegende Idee eines Experiments wie dem CHSH-Spiel — bei dem Verschränkung zu statistischen Ergebnissen führt, die mit rein klassischer Logik nicht vereinbar sind — geht auf John Bell zurück, den Namensgeber der Bell-Zustände. Deshalb bezeichnen Forschende solche Experimente oft als Bell-Tests. Manchmal spricht man auch von Bells Theorem, das auf verschiedene Weisen formuliert werden kann — der Kern besagt jedoch, dass die Quantenmechanik nicht mit sogenannten lokalen Theorien verborgener Variablen vereinbar ist. Das CHSH-Spiel ist ein besonders klares und einfaches Beispiel für einen Bell-Test und kann als Beweis oder Demonstration von Bells Theorem angesehen werden.

Das CHSH-Spiel bietet eine Möglichkeit, die Theorie der Quanteninformation experimentell zu testen. Wir können Experimente durchführen, die das CHSH-Spiel implementieren, und die oben beschriebenen verschränkungsbasierten Strategien testen. Das gibt uns ein hohes Maß an Sicherheit, dass Verschränkung real ist — und anders als bei den manchmal vagen oder poetischen Erklärungen von Verschränkung bietet das CHSH-Spiel eine konkrete und überprüfbare Möglichkeit, Verschränkung zu beobachten. Der Nobelpreis für Physik 2022 würdigt die Bedeutung dieser Forschungsrichtung: Er wurde an Alain Aspect, John Clauser (das C in CHSH) und Anton Zeilinger verliehen, für die Beobachtung von Verschränkung durch Bell-Tests an verschränkten Photonen.

Qiskit-Implementierung

Wir können das CHSH-Spiel zusammen mit der oben definierten Quantenstrategie in Qiskit wie folgt implementieren.

Zunächst die Definition des Spiels selbst, bei der eine beliebige Strategie als Argument übergeben werden kann.

def chsh_game(strategy):
# This function runs the CHSH game, using the strategy (a function
# from two bits to two bits), returning 1 for a win and 0 for a loss.

# Choose x and y randomly
x, y = random.randint(0, 1), random.randint(0, 1)

# Use the strategy to determine a and b
a, b = strategy(x, y)

# Decide if the strategy wins or loses
if (a != b) == (x & y):
return 1 # Win
return 0 # Lose

Jetzt erstellen wir eine Funktion, die einen Circuit abhängig von den Fragen an Alice und Bob ausgibt. Der Einfachheit halber verwenden wir die Standardnamen für die Qubits und nutzen das eingebaute Ry(θ)R_y(\theta)-Gate für die Aktionen von Alice und Bob.

def chsh_circuit(x, y):
# This function creates a `QuantumCircuit` implementing the quantum
# strategy described above (including the e-bit preparation).

qc = QuantumCircuit(2, 2)

# Prepare an e-bit
qc.h(0)
qc.cx(0, 1)
qc.barrier()

# Alice's actions
if x == 0:
qc.ry(0, 0)
else:
qc.ry(-pi / 2, 0)
qc.measure(0, 0)

# Bob's actions
if y == 0:
qc.ry(-pi / 4, 1)
else:
qc.ry(pi / 4, 1)
qc.measure(1, 1)

return qc

Hier sind die vier möglichen Circuits, abhängig davon, welche Fragen gestellt werden.

# Draw the four possible circuits

print("(x,y) = (0,0)")
display(chsh_circuit(0, 0).draw(output="mpl"))

print("(x,y) = (0,1)")
display(chsh_circuit(0, 1).draw(output="mpl"))

print("(x,y) = (1,0)")
display(chsh_circuit(1, 0).draw(output="mpl"))

print("(x,y) = (1,1)")
display(chsh_circuit(1, 1).draw(output="mpl"))
(x,y) = (0,0)

Output of the previous code cell

(x,y) = (0,1)

Output of the previous code cell

(x,y) = (1,0)

Output of the previous code cell

(x,y) = (1,1)

Output of the previous code cell

Jetzt erstellen wir einen Job mit dem Aer-Simulator, der den Circuit für ein gegebenes Eingabepaar (x,y)(x,y) genau einmal ausführt.

def quantum_strategy(x, y):
# This function runs the appropriate quantum circuit defined above
# one time and returns the measurement results

# Setting `shots=1` to run the circuit once
result = AerSimulator().run(chsh_circuit(x, y), shots=1).result()
statistics = result.get_counts()

# Determine the output bits and return them
bits = list(statistics.keys())[0]
a, b = bits[0], bits[1]
return a, b

Abschließend spielen wir das Spiel 1000 Mal und berechnen den Anteil der gewonnenen Runden.

NUM_GAMES = 1000
TOTAL_SCORE = 0

for _ in range(NUM_GAMES):
TOTAL_SCORE += chsh_game(quantum_strategy)

print("Fraction of games won:", TOTAL_SCORE / NUM_GAMES)
Fraction of games won: 0.867

Wir können auch eine klassische Strategie definieren und sehen, wie gut sie funktioniert. Das ist nur eine von mehreren Strategien — andere lassen sich durch Anpassen des Codes testen — aber sie gehört zu den optimalen klassischen Strategien.

def classical_strategy(x, y):
# This function implements just one example of an optimal classical
# strategy for the CHSH game. Other classical strategies can be
# implemented by changing the bit values assigned to a and b.

# Alice's answer
if x == 0:
a = 0
elif x == 1:
a = 1

# Bob's answer
if y == 0:
b = 1
elif y == 1:
b = 0

return a, b

Spielen wir das Spiel erneut 1000 Mal, um zu sehen, wie gut diese Strategie abschneidet.

NUM_GAMES = 1000
TOTAL_SCORE = 0

for _ in range(NUM_GAMES):
TOTAL_SCORE += chsh_game(classical_strategy)

print("Fraction of games won:", TOTAL_SCORE / NUM_GAMES)
Fraction of games won: 0.747

Obwohl Zufälligkeit im Spiel ist, weichen die Statistiken nach 1000 Durchläufen kaum stark ab. Die Quantenstrategie gewinnt etwa 85 % der Zeit, während eine klassische Strategie nicht mehr als etwa 75 % der Spiele gewinnen kann.