Přeskočit na hlavní obsah

Implementace v Qiskitu

V této lekci implementujeme některé myšlenky z lekce o provázanosti v akci pomocí Qiskitu.

# 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

Tady je implementace teleportačního protokolu jako kvantový Circuit.

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"))

Output of the previous code cell

Circuit využívá několik funkcí Qiskitu, které jsme v předchozích lekcích ještě neviděli, včetně funkcí barrier a if_test. Funkce barrier vytváří vizuální oddělení, díky kterému je diagram Circuit čitelnější, a zároveň brání Qiskitu provádět různá zjednodušení a optimalizace přes bariéru během kompilace, když se Circuit spouštějí na reálném hardwaru. Funkce if_test aplikuje operaci podmíněně v závislosti na klasickém bitu nebo registru.

Circuit nejprve inicializuje (A,B)(\mathsf{A},\mathsf{B}) do stavu ϕ+\vert \phi^+\rangle (což není součástí samotného protokolu), následují Aliciny operace, pak její měření a nakonec Bobovy operace. Abychom ověřili, že protokol funguje správně, aplikujeme náhodně vygenerovanou jednoqubitovou Gate na inicializovaný stav 0\vert 0\rangle Qubit Q\mathsf{Q} a získáme náhodný kvantový stavový vektor k teleportaci. Aplikací inverze (tedy komplexně sdruženého transpozice) této Gate na B\mathsf{B} po proběhnutí protokolu můžeme ověřit, že stav byl teleportován, tím, že měřením uvidíme, že se vrátil do stavu 0\vert 0\rangle.

Nejprve náhodně zvolíme unitární qubitovou Gate.

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}

Teď vytvoříme nový testovací Circuit, který nejprve aplikuje naši náhodnou Gate na Q,\mathsf{Q}, pak spustí teleportační Circuit a nakonec aplikuje inverzi naší náhodné Gate na Qubit B\mathsf{B} a provede měření. Výsledek by měl být 00 s jistotou.

# 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"))

Output of the previous code cell

Nakonec spustíme Aer simulátor na tomto Circuit a vykreslíme histogram výstupů. Uvidíme statistiky pro všechny tři klasické bity: spodní/nejlevější bit by měl být vždy 0,0, což indikuje, že Qubit Q\mathsf{Q} byl úspěšně teleportován do B,\mathsf{B}, zatímco ostatní dva bity by měly být přibližně rovnoměrně rozdělené.

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

Output of the previous code cell

Můžeme také vyfiltrovat statistiky tak, aby se zaměřily pouze na výsledkový Qubit testu, pokud chceme, a to takto:

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

Output of the previous code cell

Superdense kódování

Superdense kódování je protokol, který v jistém smyslu dosahuje komplementárního cíle k teleportaci. Místo toho, aby umožňoval přenos jednoho Qubit pomocí dvou klasických bitů komunikace (za cenu jednoho e-bitu provázanosti), umožňuje přenos dvou klasických bitů pomocí jednoho Qubit kvantové komunikace (opět za cenu jednoho e-bitu provázanosti).

Podrobněji: máme odesílatele (Alice) a příjemce (Boba), kteří sdílejí jeden e-bit provázanosti. Podle konvencí zavedených v lekci to znamená, že Alice drží Qubit A,\mathsf{A}, Bob drží Qubit B,\mathsf{B}, a společně je pár (A,B)(\mathsf{A},\mathsf{B}) ve stavu ϕ+.\vert\phi^+\rangle. Alice chce Bobovi přenést dva klasické bity, které budeme značit cc a d,d, a dosáhne toho odesláním jednoho Qubit.

Je rozumné považovat tento výkon za méně zajímavý než to, čeho dosahuje teleportace. Odesílání Qubit bude pravděpodobně v dohledné budoucnosti mnohem obtížnější než odesílání klasických bitů, takže výměna jednoho Qubit kvantové komunikace za dva bity klasické komunikace, navíc za cenu e-bitu, se sotva zdá stát za to. To ale neznamená, že superdense kódování není zajímavé, protože zcela jistě je.

V souladu s tématem lekce je jedním z důvodů, proč je superdense kódování zajímavé, to, že demonstruje konkrétní a (v kontextu teorie informace) poměrně pozoruhodné využití provázanosti. Slavná věta v kvantové teorii informace, známá jako Holevova věta, říká, že bez použití sdíleného provázaného stavu je nemožné komunikovat více než jeden bit klasické informace odesláním jednoho Qubit. (Holevova věta je obecnější. Její přesné znění je technické a vyžaduje vysvětlení, ale toto je jeden z jejích důsledků.) Prostřednictvím superdense kódování tedy sdílená provázanost efektivně umožňuje zdvojení kapacity klasického přenosu informace při odesílání Qubit.

Protokol

Následující diagram kvantového Circuit popisuje protokol superdense kódování:

Superdense coding circuit

Slovy, tady je co Alice dělá:

  1. Pokud d=1,d=1, Alice provede Gate ZZ na svém Qubit A\mathsf{A} (a pokud d=0,d=0, neprovede nic).

  2. Pokud c=1,c=1, Alice provede Gate XX na svém Qubit A\mathsf{A} (a pokud c=0,c=0, neprovede nic).

Alice pak pošle svůj Qubit A\mathsf{A} Bobovi.

Když Bob přijme Qubit A,\mathsf{A}, nejprve provede Gate CNOT, kde A\mathsf{A} je řídicí a B\mathsf{B} je cílový, a pak aplikuje Hadamardovu Gate na A.\mathsf{A}. Poté změří B\mathsf{B} a získá cc a A\mathsf{A} a získá d,d, v obou případech měřením ve standardní bázi.

Analýza

Myšlenka za tímto protokolem je jednoduchá: Alice si vlastně vybere, který Bellův stav chce sdílet s Bobem, pošle Bobovi svůj qubit a Bob měřením zjistí, který Bellův stav Alice zvolila.

To znamená, že na začátku sdílejí ϕ+,\vert\phi^+\rangle, a v závislosti na bitech cc a dd Alice buď tento stav ponechá beze změny, nebo ho posune do jednoho z ostatních Bellových stavů aplikací I,\mathbb{I}, X,X, Z,Z, nebo XZXZ na svůj qubit A.\mathsf{A}.

(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}

Bobovy akce mají na čtyři Bellovy stavy následující efekty:

ϕ+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}

To si můžeš ověřit přímo tak, že spočítáš výsledky Bobových operací na těchto stavech jeden po druhém.

Takže když Bob provede svá měření, dokáže určit, který Bellův stav Alice zvolila. Ověření, že protokol funguje správně, je otázkou kontroly každého případu:

  • Pokud cd=00,cd = 00, pak stav (B,A)(\mathsf{B},\mathsf{A}) v okamžiku, kdy Bob obdrží A,\mathsf{A}, je ϕ+.\vert \phi^+\rangle. Tento stav transformuje na 00\vert 00\rangle a získá cd=00.cd = 00.

  • Pokud cd=01,cd = 01, pak stav (B,A)(\mathsf{B},\mathsf{A}) v okamžiku, kdy Bob obdrží A,\mathsf{A}, je ϕ.\vert \phi^-\rangle. Tento stav transformuje na 01\vert 01\rangle a získá cd=01.cd = 01.

  • Pokud cd=10,cd = 10, pak stav (B,A)(\mathsf{B},\mathsf{A}) v okamžiku, kdy Bob obdrží A,\mathsf{A}, je ψ+.\vert \psi^+\rangle. Tento stav transformuje na 10\vert 10\rangle a získá cd=10.cd = 10.

  • Pokud cd=11,cd = 11, pak stav (B,A)(\mathsf{B},\mathsf{A}) v okamžiku, kdy Bob obdrží A,\mathsf{A}, je ψ.\vert \psi^-\rangle. Tento stav transformuje na 11-\vert 11\rangle a získá cd=11.cd = 11. (Záporný fázový faktor zde nemá žádný vliv.)

Implementace superdense coding

Tady je jednoduchá implementace superdense coding, kde specifikujeme Circuit sám v závislosti na bitech, které se mají přenést. Nejdřív zvolíme dva bity k přenosu. (Později je budeme volit náhodně, ale prozatím jednoduše provedeme libovolnou volbu.)

c = "1"
d = "0"

Teď sestavíme Circuit podle toho. Zde necháme Qiskit použít výchozí názvy pro qubity: q0\mathsf{q}_0 pro horní qubit a q1\mathsf{q}_1 pro spodní.

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"))

Output of the previous code cell

Nic moc nového tu není, až na funkci measure_all, která změří všechny qubity a uloží výsledky do jednoho klasického registru (v tomto případě tedy se dvěma bity).

Spuštění simulátoru Aer produkuje očekávaný výstup.

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

Output of the previous code cell

Teď použijeme další qubit jako generátor náhodných bitů -- v podstatě k hodu spravedlivou mincí. Použijeme ho k náhodnému výběru cc a dd a pak spustíme protokol superdense coding.

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"))

Output of the previous code cell

Spuštění simulátoru Aer ukazuje výsledky: klasické bity Alice a Boba se vždy shodují.

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

Output of the previous code cell

Hra CHSH

Posledním příkladem, o kterém se v této lekci budeme bavit, není protokol, ale hra známá jako hra CHSH.

Když v tomto kontextu mluvíme o hře, nemáme na mysli něco, co je určeno k zábavě nebo sportu, ale spíše matematickou abstrakci ve smyslu teorie her. Matematické abstrakce her se studují například v ekonomii a informatice a jsou fascinující i užitečné.

Písmena CHSH odkazují na autory -- Johna Clausera, Michaela Hornea, Abnera Shimonyho a Richarda Holta -- článku z roku 1969, kde byl tento příklad poprvé popsán. Nepopsali tento příklad jako hru, ale jako experiment. Jeho popis jako hry je ale přirozený a intuitivní.

Hra CHSH spadá do třídy her známých jako nelokální hry. Nelokální hry jsou neuvěřitelně zajímavé a mají hluboké souvislosti s fyzikou, informatikou a matematikou -- skrývají záhady, které zůstávají dosud nevyřešené. Tuto sekci začneme vysvětlením toho, co jsou nelokální hry, a pak se zaměříme na hru CHSH a na to, co ji dělá zajímavou.

Nelokální hry

Nelokální hra je kooperativní hra, ve které dva hráči, Alice a Bob, spolupracují na dosažení konkrétního výsledku. Hru řídí rozhodčí, který se chová podle přísných pravidel, jež jsou Alice a Bobovi známa.

Alice a Bob se na hru mohou připravit jakkoli chtějí, ale jakmile hra začne, mají zakázáno komunikovat. Můžeme si představit, že se hra odehrává v nějakém zabezpečeném zařízení -- jako by rozhodčí hrál roli detektiva a Alice s Bobem byli podezřelí vyslýchaní v oddělených místnostech. Ale jiný způsob, jak si to představit, je, že Alice a Bob jsou odděleni obrovskou vzdáleností a komunikace je zakázána, protože rychlost světla ji v době trvání hry neumožňuje. Jinými slovy, pokud se Alice pokusí poslat Bobovi zprávu, hra skončí dříve, než ji obdrží, a naopak.

Nelokální hra funguje tak, že rozhodčí nejprve položí Alice a Bobovi každému jednu otázku. Budeme používat písmeno xx pro otázku Alice a yy pro otázku Boba. Zde si xx a yy představujeme jako klasické stavy a v hře CHSH jsou xx a yy bity.

Rozhodčí používá k výběru těchto otázek náhodnost. Přesněji řečeno, ke každému možnému páru (x,y)(x,y) otázek je přiřazena nějaká pravděpodobnost p(x,y)p(x,y) a rozhodčí se zavázal vybírat otázky v okamžiku hry náhodně tímto způsobem. Všichni, včetně Alice a Boba, tyto pravděpodobnosti znají -- ale nikdo neví, jaký konkrétní pár (x,y)(x,y) bude zvolen, dokud hra nezačne.

Poté, co Alice a Bob obdrží své otázky, musí poskytnout odpovědi: odpověď Alice je aa a odpověď Boba je b.b. Obecně jsou to klasické stavy a v hře CHSH jsou to bity.

V tuto chvíli rozhodčí rozhodne: Alice a Bob buď vyhrají, nebo prohrají v závislosti na tom, zda je pár odpovědí (a,b)(a,b) považován za správný pro pár otázek (x,y)(x,y) podle nějaké pevné sady pravidel. Různá pravidla znamenají různé hry a pravidla pro konkrétně hru CHSH jsou popsána v následující sekci. Jak už bylo naznačeno, pravidla jsou všem známa.

Následující diagram poskytuje grafické znázornění interakcí.

Nonlocal game

Právě nejistota ohledně toho, jaké otázky budou položeny, a konkrétně fakt, že žádný z hráčů nezná otázku toho druhého, dělá nelokální hry pro Alici a Boba náročné -- stejně jako když se spolčení podezřelí v oddělených místnostech snaží udržet svou verzi příběhu konzistentní.

Přesný popis rozhodčího definuje instanci nelokální hry. To zahrnuje specifikaci pravděpodobností p(x,y)p(x,y) pro každý pár otázek spolu s pravidly, která určují, zda každý pár odpovědí (a,b)(a,b) vyhrává nebo prohrává pro každý možný pár otázek (x,y).(x,y).

Podíváme se na hru CHSH za okamžik, ale předtím si krátce přiznejme, že je také zajímavé uvažovat o dalších nelokálních hrách. Ve skutečnosti je to nesmírně zajímavé; existují poměrně jednoduché nelokální hry, pro které v současnosti není známo, jak dobře mohou Alice a Bob hrát s využitím provázanosti. Nastavení je jednoduché, ale je v tom skrytá složitost -- a pro některé hry může být nemožně obtížné vypočítat nejlepší nebo téměř nejlepší strategie pro Alici a Boba. To je překvapivě neintuitivní povaha modelu nelokálních her.

Popis hry CHSH

Zde je přesný popis hry CHSH, kde (jak je uvedeno výše) xx je otázka pro Alici, yy je otázka pro Boba, aa je odpověď Alice a bb je odpověď Boba:

  • Otázky a odpovědi jsou všechny bity: x,y,a,b{0,1}.x,y,a,b\in\{0,1\}.

  • Rozhodčí vybírá otázky (x,y)(x,y) rovnoměrně náhodně. To znamená, že každá ze čtyř možností, (0,0),(0,0), (0,1),(0,1), (1,0)(1,0) a (1,1),(1,1), je vybrána s pravděpodobností 1/4.1/4.

  • Odpovědi (a,b)(a,b) vyhrávají pro otázky (x,y)(x,y) pokud ab=xya\oplus b = x\wedge y a prohrávají v opačném případě. Následující tabulka vyjadřuje toto pravidlo tím, že uvádí výherní a proherní podmínky pro odpovědi (a,b)(a,b) pro každý pár otázek (x,y).(x,y).

(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}

Omezení klasických strategií

Nyní se podívejme na strategie pro Alici a Boba ve hře CHSH, počínaje klasickými strategiemi.

Deterministické strategie

Začneme deterministickými strategiemi, kde odpověď Alice aa je funkcí otázky xx, kterou obdrží, a stejně tak odpověď Boba bb je funkcí otázky yy, kterou obdrží. Takže například můžeme psát a(0)a(0) pro odpověď Alice, když je její otázka 0,0, a a(1)a(1) pro odpověď Alice, když je její otázka 1.1.

Žádná deterministická strategie nemůže vyhrát hru CHSH pokaždé. Jeden způsob, jak to pochopit, je jednoduše projít jednu po druhé všechny možné deterministické strategie a ověřit, že každá z nich prohrává alespoň pro jeden ze čtyř možných párů otázek. Alice i Bob si mohou vybrat ze čtyř možných funkcí z jednoho bitu na jeden bit -- se kterými jsme se setkali v lekci o Jednotlivých systémech -- a tedy je celkem 1616 různých deterministických strategií ke kontrole.

Můžeme to také odvodit analyticky. Pokud strategie Alice a Boba vyhrává, když (x,y)=(0,0),(x,y) = (0,0), pak musí platit a(0)=b(0);a(0) = b(0); pokud jejich strategie vyhrává, když (x,y)=(0,1),(x,y) = (0,1), pak a(0)=b(1);a(0) = b(1); a podobně, pokud strategie vyhrává pro (x,y)=(1,0),(x,y)=(1,0), pak a(1)=b(0).a(1) = b(0). Takže pokud jejich strategie vyhrává pro všechny tři možnosti, pak

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

To znamená, že strategie prohrává v posledním případě (x,y)=(1,1),(x,y) = (1,1), protože pro výhru je zde nutné, aby a(1)b(1).a(1) \neq b(1). Tedy nemůže existovat žádná deterministická strategie, která vyhrává pokaždé.

Na druhou stranu je snadné najít deterministické strategie, které vyhrávají ve třech ze čtyř případů, například a(0)=a(1)=b(0)=b(1)=0.a(0)=a(1)=b(0)=b(1)=0. Z toho vyplývá, že maximální pravděpodobnost výhry Alice a Boba pomocí deterministické strategie je 3/4.3/4.

Pravděpodobnostní strategie

Jak jsme právě odvodili, Alice a Bob nemohou dosáhnout lepšího výsledku než výhry ve hře CHSH v 75 % případů pomocí deterministické strategie. Ale co pravděpodobnostní strategie? Mohlo by Alici a Bobovi pomoci použití náhodnosti -- včetně možnosti sdílené náhodnosti, kde jsou jejich náhodné volby korelované?

Ukazuje se, že pravděpodobnostní strategie vůbec nepomáhají zvýšit pravděpodobnost výhry Alice a Boba. Je to proto, že každou pravděpodobnostní strategii lze alternativně chápat jako náhodný výběr deterministické strategie, stejně jako (jak bylo zmíněno v lekci o Jednotlivých systémech) lze pravděpodobnostní operace chápat jako náhodné výběry deterministických operací. Průměr nikdy není větší než maximum, a z toho vyplývá, že pravděpodobnostní strategie neposkytují žádnou výhodu z hlediska celkové pravděpodobnosti výhry.

Tedy výhra s pravděpodobností 3/43/4 je to nejlepší, čeho mohou Alice a Bob dosáhnout pomocí jakékoli klasické strategie, ať už deterministické nebo pravděpodobnostní.

Strategie pro hru CHSH

Přirozenou otázkou v tuto chvíli je, zda si mohou Alice a Bob polepšit pomocí kvantové strategie. Konkrétně, pokud sdílejí provázaný kvantový stav, jak naznačuje následující obrázek, který si mohli připravit před začátkem hry, mohou zvýšit svou pravděpodobnost výhry?

Nonlocal game with entanglement

Odpověď je ano, a to je hlavní pointa tohoto příkladu a důvod, proč je tak zajímavý. Pojďme se tedy přesně podívat, jak mohou Alice a Bob v této hře dosáhnout lepšího výsledku pomocí provázanosti.

Potřebné vektory a matice

První věc, kterou musíme udělat, je definovat stavový vektor Qubit ψθ,\vert \psi_{\theta}\rangle, pro každé reálné číslo θ\theta (které si budeme představovat jako úhel měřený v radiánech) takto.

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

Zde je několik jednoduchých příkladů:

ψ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}

Máme také následující příklady, které se objeví v analýze níže:

ψπ/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}

Podíváme-li se na obecný tvar, vidíme, že skalární součin libovolných dvou z těchto vektorů má tento vzorec:

ψαψβ=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}

Podrobně řečeno, v těchto vektorech jsou pouze reálné hodnoty, takže se nemusíme starat o komplexní sdružení: skalární součin je součin kosinů plus součin sinů. Použití jednoho ze součtových vzorců z trigonometrie vede ke zjednodušení uvedenému výše. Tento vzorec odhaluje geometrickou interpretaci skalárního součinu mezi reálnými jednotkovými vektory jako kosinus úhlu mezi nimi.

Pokud vypočítáme skalární součin tenzorového součinu libovolných dvou z těchto vektorů se stavem ϕ+\vert \phi^+\rangle, získáme podobný výraz, až na to, že má 2\sqrt{2} ve jmenovateli:

ψαψβϕ+=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}

Náš zájem o tento konkrétní skalární součin se objasní za chvíli, ale prozatím si jej prostě zaznamenáváme jako vzorec.

Dále definujme unitární matici UθU_{\theta} pro každý úhel θ\theta takto.

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

Intuitivně řečeno, tato matice transformuje ψθ\vert\psi_{\theta}\rangle na 0\vert 0\rangle a ψθ+π/2\vert \psi_{\theta + \pi/2}\rangle na 1.\vert 1\rangle. K ověření, že jde o unitární matici, je klíčové pozorování, že vektory ψθ\vert\psi_{\theta}\rangle a ψθ+π/2\vert\psi_{\theta + \pi/2}\rangle jsou ortogonální pro každý úhel θ\theta:

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

Tedy zjistíme, že

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}

Tuto matici můžeme alternativně zapsat explicitně jako

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}.

Toto je příklad rotační matice, a konkrétně otáčí dvourozměrné vektory s reálnými hodnotami o úhel θ-\theta kolem počátku.Pokud dodržíme standardní konvenci pro pojmenování a parametrizaci rotací různých forem, máme Uθ=Ry(2θ)U_{\theta} = R_y(-2\theta) kde

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}.

Popis strategie

Nyní můžeme popsat kvantovou strategii.

  • Příprava: Alice a Bob začínají hru se sdíleným e-bitem: Alice drží Qubit A,\mathsf{A}, Bob drží Qubit B,\mathsf{B}, a společně jsou oba Qubity (X,Y)(\mathsf{X},\mathsf{Y}) ve stavu ϕ+\vert\phi^+\rangle.

  • Akce Alice:

    • Pokud Alice obdrží otázku x=0,x=0, aplikuje U0U_{0} na svůj Qubit A.\mathsf{A}.
    • Pokud Alice obdrží otázku x=1,x=1, aplikuje Uπ/4U_{\pi/4} na svůj Qubit A.\mathsf{A}.

    Operaci, kterou Alice provádí na A\mathsf{A}, lze alternativně popsat takto:

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

    Poté, co Alice aplikuje tuto operaci, změří A\mathsf{A} měřením ve standardní bázi a nastaví svou odpověď aa na výsledek měření.

  • Akce Boba:

    • Pokud Bob obdrží otázku y=0,y=0, aplikuje Uπ/8U_{\pi/8} na svůj Qubit B.\mathsf{B}.
    • Pokud Bob obdrží otázku y=1,y=1, aplikuje Uπ/8U_{-\pi/8} na svůj Qubit B.\mathsf{B}.

    Stejně jako u Alice můžeme Bobovu operaci na B\mathsf{B} vyjádřit takto:

    {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}

    Poté, co Bob aplikuje tuto operaci, změří B\mathsf{B} měřením ve standardní bázi a nastaví svou odpověď bb na výsledek měření.

Zde je diagram kvantového Circuit, který popisuje tuto strategii:

CHSH game circuit

V tomto diagramu vidíme dva obvyklé řízené Gate, jeden pro Uπ/8U_{-\pi/8} nahoře a jeden pro Uπ/4U_{\pi/4} dole. Máme také dva Gate, které vypadají jako řízené Gate, jeden pro Uπ/8U_{\pi/8} nahoře a jeden pro U0U_{0} dole, s tím rozdílem, že kroužek představující řídící Qubit není vyplněný. To označuje jiný typ řízeného Gate, kde se Gate provede, pokud je řídící Qubit nastaven na 00 (namísto 11 jako u běžného řízeného Gate). Takže fakticky Bob provede Uπ/8U_{\pi/8} na svém Qubitu, pokud y=0y=0, a Uπ/8U_{-\pi/8}, pokud y=1;y=1; a Alice provede U0U_0 na svém Qubitu, pokud x=0x=0, a Uπ/4U_{\pi/4}, pokud x=1,x=1, což je v souladu s výše uvedeným slovním popisem protokolu.

Zbývá zjistit, jak dobře tato strategie pro Alice a Boba funguje. Uděláme to tak, že projdeme čtyři možné páry otázek jednotlivě.

Analýza případ po případu

  • Případ 1: (x,y)=(0,0).(x,y) = (0,0).

    V tomto případě Alice provede U0U_{0} na svém Qubitu a Bob provede Uπ/8U_{\pi/8} na svém, takže stav obou Qubitů (A,B)(\mathsf{A},\mathsf{B}) po provedení jejich operací je

    (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}

    Pravděpodobnosti pro čtyři možné páry odpovědí (a,b)(a,b) jsou tedy následující.

    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}

    Poté můžeme získat pravděpodobnosti, že a=ba=b a aba\neq b, sečtením.

    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}

    Pro pár otázek (0,0)(0,0) Alice a Bob vyhrávají, pokud a=b,a=b, a proto v tomto případě vyhrávají s pravděpodobností

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

    V tomto případě Alice provede U0U_{0} na svém Qubitu a Bob provede Uπ/8U_{-\pi/8} na svém, takže stav obou Qubitů (A,B)(\mathsf{A},\mathsf{B}) po provedení jejich operací je

    (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}

    Pravděpodobnosti pro čtyři možné páry odpovědí (a,b)(a,b) jsou tedy následující.

    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}

    Opět můžeme získat pravděpodobnosti, že a=ba=b a aba\neq b, sečtením.

    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}

    Pro pár otázek (0,1)(0,1) Alice a Bob vyhrávají, pokud a=b,a=b, a proto v tomto případě vyhrávají s pravděpodobností

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

    V tomto případě Alice provede Uπ/4U_{\pi/4} na svém Qubitu a Bob provede Uπ/8U_{\pi/8} na svém, takže stav obou Qubitů (A,B)(\mathsf{A},\mathsf{B}) po provedení jejich operací je

    (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}

    Pravděpodobnosti pro čtyři možné páry odpovědí (a,b)(a,b) jsou tedy následující.

    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}

    Opět zjišťujeme, že pravděpodobnosti, že a=ba=b a aba\neq b, jsou následující.

    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}

    Pro pár otázek (1,0)(1,0) Alice a Bob vyhrávají, pokud a=b,a=b, takže v tomto případě vyhrávají s pravděpodobností

    2+24.\frac{2 + \sqrt{2}}{4}.
  • Případ 4: (x,y)=(1,1).(x,y) = (1,1).

    Poslední případ je trochu jiný, jak bychom mohli očekávat, protože podmínka výhry je v tomto případě odlišná. Když jsou xx i yy obě 1,1, Alice a Bob vyhrávají, když se aa a bb liší. V tomto případě Alice provede Uπ/4U_{\pi/4} na svém Qubit a Bob provede Uπ/8U_{-\pi/8} na svém, takže stav dvou Qubit (A,B)(\mathsf{A},\mathsf{B}) poté, co provedou své operace, je

    (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}

    Pravděpodobnosti pro čtyři možné páry odpovědí (a,b)(a,b) jsou tedy následující.

    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}

    Pravděpodobnosti si oproti třem předchozím případům fakticky vyměnily místa. Pravděpodobnosti a=ba=b a aba\neq b získáme sečtením.

    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}

    Pro pár otázek (1,1)(1,1) Alice a Bob vyhrávají, pokud ab,a\neq b, a proto v tomto případě vyhrávají s pravděpodobností

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

Vyhrávají v každém případě se stejnou pravděpodobností:

2+240.85. \frac{2 + \sqrt{2}}{4} \approx 0.85.

To je tedy pravděpodobnost, s jakou celkově vyhrávají. To je výrazně lepší než jakákoli klasická strategie pro tuto hru; klasické strategie mají pravděpodobnost výhry omezenou hodnotou 3/4.3/4. A to dělá z tohoto příkladu velmi zajímavý případ.

Toto je zároveň optimální pravděpodobnost výhry pro kvantové strategie; lépe si vést nemůžeme, bez ohledu na to, jaký provázaný stav nebo měření zvolíme. Tento fakt je znám jako Cirelsonova nerovnost, pojmenovaná po Borisi Cirelsonovi, který ji jako první dokázal — a který jako první popsal CHSH experiment jako hru.

Geometrický pohled

Strategii popsanou výše je možné si představit geometricky, což může pomoci pochopit vztahy mezi různými úhly zvolenými pro operace Alice a Boba.

Alice vlastně volí úhel α\alpha v závislosti na své otázce xx a pak aplikuje UαU_{\alpha} na svůj Qubit a měří. Podobně Bob volí úhel β\beta v závislosti na yy a pak aplikuje UβU_{\beta} na svůj Qubit a měří. Zvolili jsme α\alpha a β\beta následovně.

α={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}

Prozatím ale vezměme α\alpha a β\beta jako libovolné. Volbou α\alpha Alice fakticky definuje ortonormální bázi vektorů, která vypadá takto:

Basis for Alice

Bob dělá totéž, jen s úhlem β\beta:

Basis for Bob

Barvy vektorů odpovídají odpovědím Alice a Boba: modrá pro 00 a červená pro 1.1.

Pokud nyní zkombinujeme (33) a (44), dostaneme vzorec

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

to platí pro všechna reálná čísla α\alpha a β.\beta.

Provedeme-li stejný typ analýzy jako výše, ale s α\alpha a β\beta jako proměnnými, zjistíme toto:

(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}

Z toho vyplývají tyto dva vzorce:

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}

Tyto rovnice lze propojit s obrázky výše tak, že si představíme, jak přeložíme báze zvolené Alicí a Bobem přes sebe.

Prozkoumej strategii

Když (x,y)=(0,0),(x,y) = (0,0), Alice a Bob volí α=0\alpha = 0 a β=π/8\beta = \pi/8 a přeložením jejich bází přes sebe získáme tento obrázek:

Alice and Bob bases case 1

Úhel mezi červenými vektory je π/8,\pi/8, což je stejný úhel jako mezi dvěma modrými vektory. Pravděpodobnost, že se výsledky Alice a Boba shodují, je kosinus na druhou tohoto úhlu,

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

zatímco pravděpodobnost, že se liší, je sinus na druhou tohoto úhlu,

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

Když (x,y)=(0,1),(x,y) = (0,1), Alice a Bob volí α=0\alpha = 0 a β=π/8\beta = -\pi/8 a přeložením jejich bází přes sebe získáme tento obrázek:

Alice and Bob bases case 1

Úhel mezi červenými vektory je opět π/8,\pi/8, stejně jako úhel mezi modrými vektory. Pravděpodobnost, že se výsledky Alice a Boba shodují, je opět kosinus na druhou tohoto úhlu,

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

zatímco pravděpodobnost, že se liší, je sinus na druhou tohoto úhlu,

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

Když (x,y)=(1,0),(x,y) = (1,0), Alice a Bob volí α=π/4\alpha = \pi/4 a β=π/8\beta = \pi/8 a přeložením jejich bází přes sebe získáme tento obrázek:

Alice and Bob bases case 1

Báze se změnily, ale úhly ne — opět je úhel mezi vektory stejné barvy π/8.\pi/8. Pravděpodobnost, že se výsledky Alice a Boba shodují, je

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

a pravděpodobnost, že se liší, je

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

Když (x,y)=(1,1),(x,y) = (1,1), Alice a Bob volí α=π/4\alpha = \pi/4 a β=π/8.\beta = -\pi/8. Když přeložíme jejich báze přes sebe, vidíme, že se stalo něco jiného:

Alice and Bob bases case 1

Díky tomu, jak byly úhly zvoleny, je tentokrát úhel mezi vektory stejné barvy 3π/83\pi/8 místo π/8.\pi/8. Pravděpodobnost, že se výsledky Alice a Boba shodnou, je stále kosinus na druhou tohoto úhlu, ale tentokrát je hodnota

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

Pravděpodobnost, že se výsledky neshodnou, je sinus na druhou tohoto úhlu, což je v tomto případě:

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

Poznámky

Základní myšlenka experimentu jako je CHSH hra, kde provázanost vede ke statistickým výsledkům, které jsou nekonzistentní s čistě klasickým uvažováním, pochází od Johna Bella, podle něhož jsou pojmenovány Bellovy stavy. Z tohoto důvodu se experimenty tohoto druhu často označují jako Bellovy testy. Někdy se také mluví o Bellově teorému, který lze formulovat různými způsoby — ale jeho podstatou je, že kvantová mechanika není kompatibilní s takzvanými lokálními teoriemi skrytých proměnných. CHSH hra je obzvlášť čistý a jednoduchý příklad Bellova testu a lze ji chápat jako důkaz či demonstraci Bellova teorému.

CHSH hra nabízí způsob, jak experimentálně otestovat teorii kvantové informace. Můžeme provádět experimenty, které implementují CHSH hru, a testovat typy strategií založených na provázanosti popsané výše. To nám poskytuje vysoký stupeň jistoty, že provázanost je skutečná — a na rozdíl od někdy vágních či poetických způsobů, jakými vysvětlujeme provázanost, nám CHSH hra dává konkrétní a testovatelný způsob, jak provázanost pozorovat. Nobelova cena za fyziku v roce 2022 uznává důležitost tohoto směru výzkumu: cena byla udělena Alainu Aspectovi, Johnu Clauserovi (C v CHSH) a Antonu Zeilingerovi za pozorování provázanosti prostřednictvím Bellových testů na provázaných fotonech.

Implementace v Qiskitu

CHSH hru společně s výše definovanou kvantovou strategií můžeme v Qiskitu implementovat následovně.

Nejprve zde je definice samotné hry, která umožňuje připojit libovolnou strategii jako argument.

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

Nyní vytvoříme funkci, která vygeneruje Circuit v závislosti na otázkách pro Alice a Boba. Pro jednoduchost ponecháme Qubit s jejich výchozími názvy a pro akce Alice a Boba použijeme vestavěný Ry(θ)R_y(\theta) Gate.

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

Zde jsou čtyři možné Circuit v závislosti na tom, jaké otázky jsou položeny.

# 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

Nyní vytvoříme úlohu pomocí simulátoru Aer, která spustí Circuit jednou pro daný vstupní pár (x,y).(x,y).

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

Nakonec zahrajeme hru 1000krát a vypočítáme podíl výher strategie.

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

Můžeme také definovat klasickou strategii a podívat se, jak dobře funguje. Toto je jen jedna strategie — další lze otestovat úpravou kódu — ale patří mezi optimální klasické strategie.

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

Znovu zahrajeme hru 1000krát, abychom viděli, jak dobře funguje.

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

I když je v tom náhodnost, statistiky se po 1000 bězích velmi pravděpodobně příliš neodchýlí. Kvantová strategie vyhrává přibližně v 85 % případů, zatímco klasická strategie nemůže vyhrát více než přibližně v 75 % případů.