Přeskočit na hlavní obsah

Povaha kvantových stavů: skryté proměnné versus Bellova nerovnost

Pro tento modul Qiskit in Classrooms musí mít studenti funkční prostředí Python s nainstalovanými následujícími balíčky:

  • qiskit v2.1.0 nebo novější
  • qiskit-ibm-runtime v0.40.1 nebo novější
  • qiskit-aer v0.17.0 nebo novější
  • qiskit.visualization
  • numpy
  • pylatexenc

Postup nastavení a instalace výše uvedených balíčků najdeš v průvodci Instalace Qiskitu. Aby bylo možné spouštět úlohy na skutečných kvantových počítačích, studenti si budou muset zřídit účet u IBM Quantum® podle kroků v průvodci Nastavení účtu IBM Cloud.

Tento modul byl otestován a spotřeboval 12 sekund času QPU. Jedná se pouze o odhad. Skutečná spotřeba se může lišit.

# Added by doQumentation — required packages for this notebook
!pip install -q numpy qiskit qiskit-ibm-runtime
# Uncomment and modify this line as needed to install dependencies
#!pip install 'qiskit>=2.1.0' 'qiskit-ibm-runtime>=0.40.1' 'qiskit-aer>=0.17.0' 'numpy' 'pylatexenc'

Průvodce modulem od dr. Katie McCormickové si můžeš prohlédnout níže, nebo ho sledovat na YouTube.


Základní informace

V mnoha výpočtech v kvantové mechanice začínáš se známým stavem systému, který je obvykle znám díky měření. Dnes chceme odpovědět na otázku: „Co lze říci o stavu částice před jakýmkoli měřením?" Přirozeným důsledkem je otázka: „Jak to můžeme vědět, pokud nám není dovoleno měřit?"

Tato otázka sahá do počátků kvantové mechaniky. Průkopníci oboru se rozdělili do táborů – Einstein a mnozí další tvrdili, že částice se před měřením jednoduše nachází v nějakém neznámém stavu. Jiní, zejména Max Born a později Niels Bohr, přišli s radikálnějším tvrzením, že stav částice je před měřením skutečně neurčen přírodou – nejde jen o neznámost člověku, ale o fyzikální neurčenost. Měření pak probabilisticky kolabuje částici do určitého stavu. Einstein, nespokojen s tímto vysvětlením, proslule poznamenal: „Gott würfelt nicht," což lze přeložit přibližně jako „Bůh nehraje v kostky."

Po desetiletí, co tento spor vznikl, mnozí soudili, že možná nikdy nebude zodpovězen, nebo že jde o otázku pohledu. Pak v roce 1964 napsal John Bell, fyzik ze Severního Irska, práci, v níž zkoumal statistiky určitých experimentů, které by mohly tuto otázku definitivně zodpovědět. Ukázal, že v konkrétním testu se ze stanovených (ale neznámých) kvantových stavů získají jiné statistiky než ze stavů neurčených přírodou.

V době Bellovy práce byly experimentální testy příslušných statistik dostupné jen výzkumníkům na samé frontě fyziky. Dnes ale IBM Quantum umožnila studentům po celém světě používat skutečná kvantová zařízení vzdáleně přes cloud a zdarma, aby zkoumali povahu kvantových stavů. To je to, co budeš dělat dnes.

Nastavení myšlenkového experimentu: provázání spinu

Existují procesy, při nichž se částice bez spinu rozpadne na dvě částice, z nichž každá má spin. Protože spin je druh momentu hybnosti, zákon zachování momentu hybnosti naznačuje, že dvě výsledné částice musí mít spiny přesně anti-zarovnané. To je skutečně pozorováno experimentálně.

Příklad: neutrální pion se někdy rozpadá na pozitron a elektron: π0e++e\pi^0\rightarrow e^+ + e^- Neděl si starosti, pokud nevíš, co jsou to tyto částice, a nestarej se ani tehdy, pokud je znáš tak dobře, že víš, že tento typ rozpadu je relativně vzácný. Jen věz, že pokud má jedna z výsledných částic spin nahoru, druhá musí mít spin dolů, a naopak. Samozřejmě na „nahoru" a „dolů" není nic zvláštního; stejné anti-zarovnání je pozorováno, pokud jsou měření prováděna podél toho, co obvykle nazýváme xx nebo yy. Tento rozpad je přesvědčivým kontextem pro naše úvahy, protože se můžeme vyhnout otázkám o tom, jaká měření proběhla v minulosti; pozitron a elektron vlastně vůbec neexistovaly, dokud k rozpadu nedošlo.

Můžeme nechat mesony π0\pi^0 rozpadat a sledovat odchylku výsledných částic pod vlivem nehomogenního magnetického pole. Nehomogenní pole používané k odchylování spinů se často nazývá Stern-Gerlachovo zařízení, pojmenované po výzkumnících, kteří ho jako první použili k (náhodném) shromáždění důkazů o existenci kvantově mechanického spinu. Všimni si, že příběh je zde složitější než v původním experimentu, protože elektron a pozitron jsou také nabité (na rozdíl od atomů stříbra v experimentu Sterna a Gerlacha). Ale víme, jak se nabité částice pohybují v magnetickém poli, a můžeme tento efekt odečíst. V tom, co následuje, budeme předpokládat, že odchylky použité ve výpočtech jsou způsobeny spinem částic, nikoli jejich nábojem. Proto pro naše účely nezáleží na tom, který pozorovatel dostane pozitron a který elektron. Experimentální uspořádání vypadá přibližně takto:

Diagram uspořádání EPR experimentu. Zdroj vysílá jednu částici doleva a jednu doprava. Obě procházejí Stern-Gerlachovým zařízením, nehomogenním magnetickým polem a měřící obrazovkou.

Jak se meson rozpadá, elektron je vykopnut jedním směrem a pozitron druhým. Každá z těchto dvou částic projde nehomogenním magnetickým polem, které ji odchýlí buď ve směru magnetického pole, nebo proti němu.

Pokud máme zdroj mnoha mesonů, můžeme sbírat statistiky. Pokud pozorovatel vlevo a jeden vpravo (říkejme jim Lucas a Rihanna) vždy měří podél stejné osy, tyto statistiky nebudou příliš zajímavé: pokaždé, když jeden naměří nahoru, druhý naměří dolů; pokaždé, když jeden naměří do stránky, druhý naměří ze stránky, a tak dále. Pokud ale mohou hráči volně měřit spin podél libovolného směru, může se ukázat něco zajímavějšího.

Výše popsaný experiment, v němž částice odletí se spinem, který měří dva pozorovatelé, původně navrhli Einstein, Podolsky a Rosen (EPR) v tomto článku, a někdy se tomu říká „EPR experiment".

Naše možnosti

Uveďme si pro přehlednost dva historické pohledy:

Možnost 1 (Einstein): Oba spiny (elektron a pozitron) jsou určeny v tom smyslu, že výsledek jakéhokoli měření podél jakékoli osy je přírodou předem daný, i když ho neznáme. Mohli bychom si to představit jako spiny mající skutečnou, dobře definovanou orientaci v prostoru, která nám není známa, ale existuje. Nebo bychom si to mohli představit jako soubor informací či instrukcí, které určují výsledky měření podél xx, yy, zz nebo čehokoli mezi tím. Měření spinu positronu (řekněme podél z) ho donutí zaujmout orientaci ve směru z nebo -z. To nemá žádný příčinný vliv na spin elektronu, přestože víme, že spin elektronu začínal opačně než spin positronu – takže pokud je spin positronu naměřen jako +z, spin elektronu je naměřen jako -z. Mimo výchozí podmínku instrukcí zachovávajících moment hybnosti (spiny jsou anti-zarovnané) není mezi oběma spiny žádná vazba. Tato možnost se někdy nazývá „skryté proměnné" – projekce podél různých os jsou určeny, ale jsou nám skryty.

Možnost 2 (Born): Oba spiny jsou ve svých počátečních stavech neurčeny… nejde jen o neznámost, ale o fyzikální nedefinovanost, bez určité orientace nebo instrukcí pro výsledky experimentů, dokud nejsou změřeny. Měření spinu positronu „kolabuje" prostor všech možností do jediného určeného stavu, buď podél osy +z nebo -z. Toto měření positronu donutí spin elektronu také zkolabovat do dobře definované projekce podél z, přesně opačné než u positronu. Tento efekt se šíří přes prostor mezi positronem a elektronem. To bylo nazváno „strašidelným působením na dálku", ale méně dramaticky by se to dalo nazvat „nelokální fyzikou".

Otestuj své porozumění

Přečti si níže uvedenou otázku, přemýšlej o odpovědi a pak klikni na trojúhelník pro zobrazení řešení.

Bylo by skvělé experimentálně rozlišit mezi Einsteinovou a Bornovou možností. Jaké jsou experimenty, které by přinesly stejné výsledky bez ohledu na to, která možnost je pravdivá? Dokážeš vymyslet experiment, který by přinesl různé výsledky pro obě možnosti? Poznámka: Bylo by velmi působivé, kdybys dokázal vymyslet experiment, který by přinesl různé výsledky pro Einsteinovu a Bornovu možnost; lidstvu trvalo desetiletí, než na něco takového přišlo.

Odpověď:

Pokud zůstaneme u výše popsaného experimentu (tedy bez čistého spinu s positronem a elektronem anti-zarovnanými), měření obou spinů podél ±x\pm x, ±y\pm y nebo ±z\pm z by vždy přineslo opačná znaménka kvůli zachování momentu hybnosti, bez ohledu na to, která možnost je správná. Měření spinu jedné částice (řekněme elektronu) podél jednoho směru (řekněme +z+z) znamená, že spin druhé částice, positronu, bude naměřen podél z-z. Pokud místo toho měříš spin positronu podél směru xx, je stejně pravděpodobné, že výsledek bude +x+x nebo x-x. To může být způsobeno tím, co říkají skryté instrukce (Einsteinova možnost 1), nebo tím, že pravděpodobnostní rozdělení spinu positronu se aktualizuje po měření spinu elektronu a nové pravděpodobnostní rozdělení odpovídá rozdělení 50:50 mezi ±x\pm x (Bornova možnost 2). Tyto body jsou podrobněji vysvětleny níže.

Odpověď se jen mírně liší, pokud uvažuješ rozpad částice se spinem 1, takže dvě vznikající částice (jako pozitron a elektron) musí mít spiny zarovnané, nikoli anti-zarovnané. Pokud je jedna naměřena podél +y+y, měření druhé částice podél osy yy musí také přinést +y+y, a tak dále. Jako předtím, to může vyplývat z obou možností.

Zbytek této lekce je věnován experimentu, který dokáže rozlišit mezi Einsteinovou a Bornovou možností, takže zde nebudeme zacházet do podrobností. Část triku spočívá v měření dvou částic podél různých směrů (jako xx a zz, nebo dokonce nějakého směru mezi tradičními kartézskými osami). Zbytek spočívá v pečlivém zvažování přesné pravděpodobnosti získání různých výsledků s ohledem na předpovědi kvantové mechaniky a předpovědi klasických informací jako ve skrytých proměnných.

V obou možnostech, pokud oba pozorovatelé – Lucas a Rihanna – měří podél stejné osy, očekáváme, že získají anti-zarovnané spiny, bez ohledu na to, která možnost je pravdivá. Abychom pochopili proč, podívejme se na níže uvedené diagramy.

Tři diagramy. Nejprve je diagram dvou spinových vektorů orientovaných v opačných směrech, ležících na úhlopříčce mezi osami x a z. Dále, když je provedeno měření podél z, jeden přítel získá spin podél záporného z a druhý podél kladného z. Nakonec je situace zobrazena pro měření podél osy x, kde jeden měří spin podél záporného x a druhý podél kladného x.

Výše uvedený obrázek zobrazuje Einsteinovu možnost. Směry spinů jsou opačné a určené. Pokud měříme podél osy zz, jeden bude podél +z+z a jeden podél z-z. Nemáme důvod předpokládat, že pozitron bude podél +z+z a elektron podél z-z; obrázek pouze ukazuje, že spiny budou naměřeny v opačných směrech. Ve skutečnosti daný spin nemusí mít složku svého spinu podél směru, který bude nakonec měřen, v případě Einsteinovy možnosti. Nejslabší tvrzení Einsteinovy možnosti je, že existuje jakýsi soubor instrukcí uložených ve spinu, které určují výsledky měření podél jakékoli osy. Nemusíme si představovat, že tyto instrukce mají formu jednoduchého vektoru (viz diagram níže); k tomu se vrátíme.

Tři diagramy. První již nezobrazuje dobře definované vektorové směry, ale místo toho obsahuje seznam pravidel určujících výsledky měření. Druhý a třetí diagram jsou stejné jako na předchozím obrázku a zobrazují měření podél kladného/záporného z a podél kladného/záporného x.

Obrázek níže zobrazuje Bornovu možnost, v níž jsou směry spinu positronu a elektronu rozmazány v pravděpodobnostním rozdělení a nemají určitý směr. Nepřikládej tvaru rozdělení příliš mnoho. Každý spin by ve skutečnosti mohl mít nenulovou pravděpodobnost ukazovat jakýmkoli směrem, pokud jsou navzájem opačné; jednoduše jsme je nakreslili jako části kruhu, abychom je mohli vizuálně odlišit pro účely diskuse. Všimni si, že i v případě Bornovy možnosti musí být zachován moment hybnosti. Takže pokud je jedna vlna pravděpodobnosti „zkolabována" tak, že spin ukazuje podél +z+z, druhá bude ukazovat podél z-z a bude odchýlena v opačném směru. Obě možnosti se zdají totožné.

Diagram zobrazující rozmazané možné směry spinového vektoru, následovaný stejnými výsledky měření jako na předchozích obrázcích.

Co se ale stane, když mohou pozorovatelé L a R měřit podél libovolné ze tří os, přičemž každý pár je od sebe vzdálen 120 stupňů, jak je znázorněno na obrázcích 4 a 5. Každý pozorovatel se může náhodně rozhodnout, podél které osy spin změří (a, b nebo c). Oba nemusí měřit podél stejné osy. Při měření mohou každý najít kladnou projekci na svou vybranou osu nebo zápornou projekci. Například Lucas a Rihanna mohou naměřit +a a -b nebo +b a +c. Všimni si, že pokud se náhodou rozhodnou měřit podél stejné osy, MUSÍ získat opačná znaménka svých projekcí: +a a -a, +b a -b nebo +c a -c; nemohou oba najít například +a. V další části si projdeme výpočet pravděpodobnosti, že Lucas a Rihanna získají stejné znaménko na svých měřených osách (++ nebo --) a opačná znaménka (+-) nebo (-+).

Diagram zobrazující dva počáteční spinové vektory, následovaný možnými měřeními podél tří přímek a, b a c, z nichž každá má kladný a záporný směr. Protože tyto osy nejsou navzájem kolmé, Lucas a Rihanna nebudou měřit spiny v opačných směrech, pokud se náhodou nerozhodnou měřit podél stejných os.

Oba výše uvedené obrázky ilustrují možné interpretace skrytých proměnných v tomto novém, tříosém scénáři měření. To znamená, že spiny jsou buď již určeny jako vektory, nebo v systému existuje nějak vložená sada fyzikálních instrukcí, takže výsledky všech možných měření jsou předem dány, i když jsou pro experimentátory před měřením neznámé. Alternativa je znázorněna níže. Existuje nějaké pravděpodobnostní rozdělení výsledků, které nám může říci něco o pravděpodobnosti různých výsledků měření, ale výsledky jsou před měřením přírodou neurčeny.

Opět je zobrazeno rozmazané pravděpodobnostní rozdělení, tentokrát s třemi novými osami a, b a c. To přináší různé pravděpodobnosti měření podél různých směrů.

Můžeme si položit otázku: „Jak často by oba hráči měli najít stejné znaménko projekce spinu?" To znamená, že vůbec nezaznamenáváme, podél které osy se rozhodli měřit; jednoduše zaznamenáváme, zda našli stejné nebo jiné znaménko. Není zřejmé, zda Einsteinova a Bornova možnost přinesou stejný výsledek v tomto složitějším schématu měření. Ale z obrázků 4 a 5 by mělo být zřejmé, že je mozˇneˊmožné, aby byl rozdíl. V případě Einsteinovy možnosti měření projekce spinu e+e+ na osu aa bezpochyby přinese +a+a a projekce spinu ee- na osu bb přinese b-b (sotva). Ale v Bornově možnosti jsou možnosti zcela otevřené. Je pravda, že moment hybnosti je stále zachován. Ale protože dvě magnetická pole nejsou orientována podél stejné osy, nutíme částice do situace, kdy se musí zkolabovat na různé osy (prostřednictvím interakcí s polem). V další části použijeme kvantovou mechaniku k určení toho, jaké by měly být pravděpodobnosti – za předpokladu Bornovy možnosti – že Lucas a Rihanna získají stejné znaménko na svých měřených osách (++ nebo --), a pravděpodobnosti, že získají opačná znaménka (+- nebo -+).

Předpovědi

Co předpovídá Einsteinova možnost (skryté proměnné)?

Pokud platí Einsteinova možnost, pak libovolný pár e+e+ a ee- bude mít soubor vektorových složek svých spinů. Elektron by například mohl mít složky (+a^,b^,+c^)(+\hat{a},-\hat{b}, +\hat{c}), v takovém případě musí pozitron mít složky (a^,+b^,c^)(-\hat{a},+\hat{b}, -\hat{c}). Určujeme zde pouze znaménko projekce na každou osu, nikoli její velikost. Představ si, že necháme proběhnout velmi velké množství NN takovýchto rozpadů a shromáždíme měření k vyplnění níže uvedené tabulky.

PopulaceČástice 1Částice 2
N1N_1(+a^,+b^,+c^)(+\hat{a},+\hat{b},+\hat{c})(a^,b^,c^)(-\hat{a},-\hat{b},-\hat{c})
N2N_2(+a^,+b^,c^)(+\hat{a},+\hat{b},-\hat{c})(a^,b^,+c^)(-\hat{a},-\hat{b},+\hat{c})
N3N_3(+a^,b^,+c^)(+\hat{a},-\hat{b},+\hat{c})(a^,+b^,c^)(-\hat{a},+\hat{b},-\hat{c})
N4N_4(+a^,b^,c^)(+\hat{a},-\hat{b},-\hat{c})(a^,+b^,+c^)(-\hat{a},+\hat{b},+\hat{c})
N5N_5(a^,+b^,+c^)(-\hat{a},+\hat{b},+\hat{c})(+a^,b^,c^)(+\hat{a},-\hat{b},-\hat{c})
N6N_6(a^,+b^,c^)(-\hat{a},+\hat{b},-\hat{c})(+a^,b^,+c^)(+\hat{a},-\hat{b},+\hat{c})
N7N_7(a^,b^,+c^)(-\hat{a},-\hat{b},+\hat{c})(+a^,+b^,c^)(+\hat{a},+\hat{b},-\hat{c})
N8N_8(a^,b^,c^)(-\hat{a},-\hat{b},-\hat{c})(+a^,+b^,+c^)(+\hat{a},+\hat{b},+\hat{c})

Pro každý případ v tabulce výše existuje 9 možných voleb os pro Lucase a Rihannu: aaaa, abab, acac, baba, bbbb, bcbc, caca, cbcb a cccc. Z této tabulky je pravděpodobnost, že oba pozorovatelé naměří stejné znaménko pro řádky 1 a 8, nulová. Pro řádky 2–7 existují 4 způsoby, jak získat stejné znaménko – ukážeme to pouze pro řádek 2:

Stejná znaménka: acac, bcbc, caca, cbcb Opačná znaménka: aaaa, abab, baba, bbbb, cccc

Takže pokud je Einsteinova možnost správnou interpretací kvantových stavů, celková pravděpodobnost sumovaná přes všechny možné populace, že Lucas a Rihanna získají stejné znaménko spinové projekce na svých náhodně zvolených osách, by byla: Psame=1iNi49(N2+N3+N4+N5+N6+N7)49 P_\text{same}=\frac{1}{\sum_i{N_i}} \frac{4}{9} (N_2+N_3+N_4+N_5+N_6+N_7)\leq \frac{4}{9} kde rovnost platí pouze tehdy, pokud N1=N8=0N_1=N_8=0.

Otestuj své porozumění

Přečti si níže uvedené otázky, přemýšlej o odpovědích a pak klikni na trojúhelníky pro zobrazení řešení.

Pro řádek 2 tabulky výše jsme vypsali všechny možné způsoby, jak Lucas a Rihanna mohou získat stejné znaménko pro svá měření, a všechny způsoby, jak mohou získat různá znaménka. Zopakuj to pro třetí řádek.

Odpověď:

Stejná znaménka: abab, baba, bcbc, cbcb

Opačná znaménka: aaaa, acac, bbbb, caca, cccc

Tabulka výše odkazuje na „populace", což znamená, že nevíme, kolik z každého typu instrukcí příroda produkuje, pokud je správné zacházení se skrytými proměnnými. Ukáži, že bez ohledu na rozložení N1N_1N8N_8 je pravděpodobnost získání stejného znaménka z měření vždy menší nebo rovna 4/9.

Odpověď:

Začněme předpokladem konstantního celkového počtu měřících pokusů, takže iNi=Ntot\sum_i{N_i} = N_{tot} je konstantní. Všimni si, že ve speciálním případě, kdy N1=N8=0N_1=N_8=0, se výraz zjednodušuje na

Psame=1N2+N3+N4+N5+N6+N7×49×(N2+N3+N4+N5+N6+N7)=1Ntot×49×Ntot=49P_{same}=\frac{1}{N_2+N_3+N_4+N_5+N_6+N_7} \times \frac{4}{9} \times (N_2+N_3+N_4+N_5+N_6+N_7) = \frac{1}{N_{tot}} \times \frac{4}{9} \times N_{tot}= \frac{4}{9}

Nyní předpokládejme, že buď N10N_1 \neq 0 nebo N80N_8 \neq 0. Pak

Psame=1N1+N2+N3+N4+N5+N6+N7+N8×49×(N2+N3+N4+N5+N6+N7)=49P_{same}=\frac{1}{N'_1+N'_2+N'_3+N'_4+N'_5+N'_6+N'_7+N'_8} \times \frac{4}{9} \times (N'_2+N'_3+N'_4+N'_5+N'_6+N'_7) = \frac{4}{9}

Součet všech pokusů, NtotN_tot, je stále stejný jako předtím. Ale protože N1N'_1 nebo N8N'_8 vzrostlo z 0, součet N2N'_2N7N'_7 musí být nižší než předtím. Konkrétně součet N2N'_2N7N'_7 je menší než NtotN_{tot}. Tedy

Psame=1Ntot×49×(N2+N3+N4+N5+N6+N7)<49P_{same}=\frac{1}{N_{tot}} \times \frac{4}{9} \times (N'_2+N'_3+N'_4+N'_5+N'_6+N'_7) < \frac{4}{9}

Při kombinaci všech možných případů máme Psame49P_{same} \leq \frac{4}{9}.

Zobecnění

Ve výše uvedeném postupu jsme uvažovali měření podél konkrétních os. Samozřejmě lze provádět měření podél libovolné osy. Označme dva spinové vektory dvou částic a\vec{a} a b\vec{b}. Ať λ\lambda je nějaká skrytá proměnná taková, že stav dvouparticového systému odpovídá dobře definované hodnotě lambdalambda. Ať ρ(λ)\rho(\lambda) je hustota pravděpodobnosti v λ\lambda. Nakonec zvolíme symboly A(a,λ)A(\vec{a},\lambda) a B(b,λ)B(\vec{b},\lambda) jako předem daný výsledek měření provedeného na ktérkoli částici (A nebo B), dáno spinovými vektory a skrytou proměnnou. Kriticky si všimni, že AA je nezávislé na b\vec{b} a BB je nezávislé na a\vec{a}. Nyní lze klást libovolný počet otázek týkajících se korelací mezi měřeními na A a B. Konkrétně lze klást otázku ohledně střední hodnoty dané výrazem

E(a,b)dλρ(λ)A(a,λ)B(b,λ)E(\vec{a},\vec{b})\equiv\int{d\lambda \rho(\lambda)A(\vec{a},\lambda)B(\vec{b},\lambda)}

Při standardních předpokladech o těchto hodnotách, jako jsou A(a,λ)1A(\vec{a},\lambda)\leq 1, B(b,λ)1B(\vec{b},\lambda)\leq 1 a normalizace přes ρ(λ)\rho(\lambda), lze ukázat, že korelace mezi dvěma částicemi splňují vztah

E(a,b)E(a,d)+E(c,d)+E(c,b)2,|E(\vec{a},\vec{b})-E(\vec{a},\vec{d})|+|E(\vec{c},\vec{d})+E(\vec{c},\vec{b})|\leq 2,

kde a\vec{a} a b\vec{b} jsou spinové stavy tvého systému a c\vec{c} a d\vec{d} jsou referenční spinové stavy (libovolné jiné možné spinové stavy systému). Toto je jedna z celé třídy nerovností, které jsou nyní označovány jako „Bellovy nerovnosti". Zde nebudeme používat tuto obecnou formu. Místo toho se soustředíme na jedno konkrétní experimentální uspořádání, abychom mohli toto uspořádání namapovat na kvantový obvod.

Co předpovídá Bornova možnost (nedeterministická kvantová mechanika)?

Lucas si vybere nějakou osu a zjistí, že spin jedné částice je buď v kladném nebo záporném směru. Ať získá cokoli, orientujme naše osy tak, aby osa zz byla tímto směrem. Pak můžeme zapsat počáteční stav po rozpadu mesonu a před jakýmkoli měřením jako

ψ=12(+LRL+R)|\psi \rangle =\frac{1}{\sqrt{2}}(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R)

Rihanna změří spin své částice podél jiného směru ve úhlu θ\theta relativně k Lucasovu. Spinový operátor podél libovolného směru n^\hat{n} je dán vztahem

S^n^=2[cos(θ)sin(θ)eiϕsin(θ)eiϕcos(θ)]\hat{S}_{\hat{n}}=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta) & \sin(\theta) e^{-i\phi} \\ \sin(\theta) e^{i\phi} & -\cos(\theta) \end{bmatrix}

Vlastní stavy tohoto operátoru jsou

+n^=cos(θ/2)0+sin(θ/2)eiϕ1n^=sin(θ/2)0cos(θ/2)eiϕ1|+\rangle_{\hat{n}}=\cos(\theta/2)|0\rangle+\sin(\theta/2)e^{i\phi}|1\rangle \\ |-\rangle_{\hat{n}}=\sin(\theta/2)|0\rangle-\cos(\theta/2)e^{i\phi}|1\rangle

Otestuj své porozumění

Přečti si níže uvedené otázky, přemýšlej o odpovědích a pak klikni na trojúhelníky pro zobrazení řešení.

Ověř, že +n^|+\rangle_{\hat{n}} je vlastní stav operátoru S^n^\hat{S}_{\hat{n}} výše, a najdi vlastní hodnotu.

Odpověď:

S^n^+n^=2[cos(θ)sin(θ)eiϕsin(θ)eiϕcos(θ)][cos(θ/2)sin(θ/2)eiϕ]\hat{S}_{\hat{n}}|+\rangle_{\hat{n}}=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta) & \sin(\theta) e^{-i\phi} \\ \sin(\theta) e^{i\phi} & -\cos(\theta) \end{bmatrix} \begin{bmatrix} \cos(\theta/2) \\ \sin(\theta/2)e^{i\phi}\end{bmatrix}=2[cos(θ)cos(θ/2)+sin(θ)sin(θ/2)eiϕeiϕcos(θ/2)sin(θ)eiϕcos(θ)sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta)\cos(\theta/2) + \sin(\theta)\sin(\theta/2)e^{i\phi} e^{-i\phi} \\ \cos(\theta/2)\sin(\theta) e^{i\phi} -\cos(\theta)\sin(\theta/2)e^{i\phi} \end{bmatrix}

Pomocí cos(θ)=cos2(θ/2)sin2(θ/2)\cos(\theta)=\cos^2(\theta/2)-\sin^2(\theta/2) a sin(θ)=2cos(θ/2)sin(θ/2)\sin(\theta)=2\cos(\theta/2)\sin(\theta/2) dostaneme

=2[(cos(θ)+2sin2(θ/2))cos(θ/2)(2cos2(θ/2)cos2(θ/2)+sin2(θ/2))sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \left(\cos(\theta) + 2\sin^2(\theta/2)\right) \cos(\theta/2) \\ \left(2\cos^2(\theta/2) -\cos^2(\theta/2)+\sin^2(\theta/2)\right)\sin(\theta/2)e^{i\phi} \end{bmatrix}=2[(cos2(θ/2)sin2(θ/2)+2sin2(θ/2))cos(θ/2)(2cos2(θ/2)cos2(θ/2)+sin2(θ/2))sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \left(\cos^2(\theta/2)-\sin^2(\theta/2) + 2\sin^2(\theta/2)\right) \cos(\theta/2) \\ \left(2\cos^2(\theta/2) -\cos^2(\theta/2)+\sin^2(\theta/2)\right)\sin(\theta/2)e^{i\phi} \end{bmatrix}=2[cos(θ/2)sin(θ/2)eiϕ]=\frac{\hbar}{2}\begin{bmatrix} \cos(\theta/2) \\ \sin(\theta/2)e^{i\phi} \end{bmatrix}

Tím je prokázáno, že +n^|+\rangle_{\hat{n}} je vlastní stav a příslušná vlastní hodnota je 2\frac{\hbar}{2}.

Pravděpodobnost, že Lucas naměří spin v kladném směru podél jím zvolené osy +|+\rangle aa že Rihanna také naměří kladný spin podél svého zvoleného směru +n^|+\rangle_{\hat{n}}, je

P++=(L+R,n^+)ψ2P_{++}=\left|\left(_L\langle+|_{R,\hat{n}}\langle+|\right)|\psi\rangle\right|^2 P++=(L+R(cos(θ/2)++sin(θ/2)eiϕ))12(+LRL+R)2P_{++}=\left| \left(_L\langle+|_R\left(\cos(\theta/2)\langle+|+\sin(\theta/2)e^{-i\phi}\langle-|\right)\right) \frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right) \right|^2 P++=12(L+R(cos(θ/2)++sin(θ/2)eiϕ))(+LR)2P_{++}=\frac{1}{2}\left| \left(_L\langle+|_R\left(\cos(\theta/2)\langle+|+\sin(\theta/2)e^{-i\phi}\langle-|\right)\right) \left(|+\rangle_L|-\rangle_R\right) \right|^2 P++=12(sin(θ/2)eiϕpR)R2P_{++}=\frac{1}{2}\left| \left(\sin(\theta/2)e^{-i\phi}\vphantom{p}_R\langle-|\right) |-\rangle_R \right|^2 P++=12sin2(θ/2)P_{++}=\frac{1}{2}\sin^2(\theta/2)

Otestuj své porozumění

Přečti si níže uvedené otázky, přemýšlej o odpovědích a pak klikni na trojúhelníky pro zobrazení řešení.

Proveď totéž pro PP_{--}. Ověř, že se také rovná 12sin2(θ).\frac{1}{2}\sin^2(\theta).

Odpověď:

P=(LR,n^+)ψ2P_{--}=\left|\left(_L\langle-|_{R,\hat{-n}}\langle+|\right)|\psi\rangle\right|^2P=(LR(sin(θ/2)+cos(θ/2)eiϕ))12(+LRL+R)2P_{--}=\left| \left(_L\langle-|_R\left(\sin(\theta/2)\langle+|-\cos(\theta/2)e^{-i\phi}\langle-|\right)\right) \frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right) \right|^2P=12(LR(sin(θ/2)+cos(θ/2)eiϕ))(L+R)2P_{--}=\frac{1}{2}\left| \left(_L\langle-|_R\left(\sin(\theta/2)\langle+|-\cos(\theta/2)e^{-i\phi}\langle-|\right)\right) \left(-|-\rangle_L|+\rangle_R\right) \right|^2P=12(sin(θ/2)pR+)+R2P_{--}=\frac{1}{2}\left| \left(\sin(\theta/2) \vphantom{p}_R\langle+|\right) |+\rangle_R \right|^2P=12sin2(θ/2)P_{--}=\frac{1}{2}\sin^2(\theta/2)

Po sečtení těchto výsledků zjišťujeme, že pravděpodobnost, že znaménka dvou měřených os jsou stejná, je Psame=sin2(θ/2)P_{\text{same}}=\sin^2(\theta/2).

Otestuj své porozumění

Přečti si níže uvedenou otázku, přemýšlej o odpovědi a pak klikni na trojúhelník pro zobrazení řešení.

Co bys mohl udělat pro ověření matematiky tohoto výsledku? Abychom byli přesní, nežádáme tě, abys ověřoval, že odpovídá přírodě, jen abys se ujistil, že v celé matematice nedošlo k chybě.

Odpověď:

(1) Proveď stejný výpočet pro Pdiff=cos2(θ/2)P_{\text{diff}}=\cos^2(\theta/2) a ověř zachování pravděpodobnosti.

(2) Zkontroluj známý případ. Dosaď θ=0\theta = 0. Pak PsameP_{\text{same}} odpovídá situaci, kdy oba pozorovatelé měří svůj spin podél stejné osy, což by porušilo zachování momentu hybnosti. Tedy by ses dal očekávat, že tato pravděpodobnost je nulová, a skutečně dosazení θ=0\theta = 0 přinese sin2(0/2)=0\sin^2(0/2) = 0.

(3) Zkontroluj jiný známý případ. Zkus θ=π\theta = \pi. Co bys měl dostat. Dej si pozor na tu 12\frac{1}{2}.

Konkrétně jsme načrtli případ, kdy osy svírají úhel 120deg120\deg navzájem. Pamatuj, že ať Lucas získá jakýkoli směr (±a\pm a, ±b\pm b nebo ±c\pm c), nazýváme ho zz. Pak Rihanna náhodně zvolí měření podél ±a\pm a, ±b\pm b nebo ±c\pm c. Pokud je její volba stejná jako Lucasova (až na znaménko), pak oba měří podél zz a pravděpodobnost, že Rihanna také naměří +z+z, je nulová. To by mělo nastat 1/3 času, protože volba osy Rihannou je nezávislá na volbě Lucase. Pro jakoukoli jinou volbu bude Rihanna měřit podél osy buď 120deg=2π/3120\deg = 2\pi/3 radiánů od zz (1/3 času) nebo 240deg=4π/3240\deg = 4\pi/3 radiánů od zz (1/3 času). A samozřejmě podél ktéré z těchto os může být spin naměřen v kladném nebo záporném směru. To nám dává celkovou pravděpodobnost, že Lucas a Rihanna získají stejné znaménko:

Psame=13(0+sin2(π/3)+sin2(2π/3))=13(0+34+34)=12P_{\text{same}} = \frac{1}{3}\left( 0 + \sin^2(\pi/3) + \sin^2(2\pi/3) \right) = \frac{1}{3}\left( 0 + \frac{3}{4} + \frac{3}{4} \right) = \frac{1}{2}

Páni

Právě jsme ukázali, že

(Psame)max, Einstein<(Psame)max, Born.(P_\text{same})_\text{max, Einstein}<(P_\text{same})_\text{max, Born}.

Udělejme krok zpět.

Einsteinova a Bornova možnost se zdály, jako by vždy přinesly stejné výsledky, protože se lišily pouze ve svém popisu toho, co se děje před měřením. A přesto, za předpokladu, že existují instrukce, které předem určují znaménko měření spinu podél určitých os, jsme získali omezení pravděpodobnosti, že měření přinesou stejné znaménko (Psame)Einstein49(P_{\text{same}})_\text{Einstein}\leq\frac{4}{9}. Pak jsme předpokládali pravděpodobnostní rozdělení podle kvantové mechaniky... a získali jsme jinou hodnotu (Psame)Born=12(P_{\text{same}})_\text{Born}=\frac{1}{2}. Předpověď kvantové mechaniky je vyšší, než je povoleno zacházením se skrytými proměnnými. Takže skutečně můžeme provést experiment a zjistit, zda jsou kvantové mechanické stavy přírodou určeny před měřením, nebo zda jsou skutečně v probabilistické superpozici možných stavů.

Tento experiment byl proveden mnohokrát pomocí mnoha různých fyzikálních systémů, často fotonů. Existuje mnoho jemných úvah, jako jsou zkreslení v měření, načasování (simultánnost) měření a mnohé další. V průběhu desetiletí byly obavy z těchto jemností postupně odstraněny. Testy jsou stále prováděny, jak se dozvídáme více o realitě, ale nyní panuje široká shoda, že odpověď, kterou zde získáš pomocí kvantových počítačů IBM®, je správná.

Test pomocí skutečných kvantových počítačů!

V souladu s naším výše uvedeným přístupem definujme směr Lukášova měření jako +z+z. To bylo výhodné i v algebraickém přístupu, ale je to obzvlášť výhodné pro kvantové výpočty, protože to, co se typicky měří, je projekce qubitu podél zz. Chceme sestrojit kvantový obvod, který nám dá stejné podmínky pravděpodobnosti jako výše pro P++P_{++}. Můžeme orientovat naši rovinu tak, aby ϕ=0\phi=0, a dostaneme

P++=(L+R(cos(θ/2)++sin(θ/2)))12(+LRL+R)2P_{++}=\left| \left(_L\langle+|_R\left(\cos(\theta/2)\langle+|+\sin(\theta/2)\langle-|\right)\right) \frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right) \right|^2

Potřebujeme vědět několik věcí o kvantových počítačích IBM, abychom mohli vést naši diskusi. Za prvé, qubity začínají inicializovány ve stavu 0=+z|0\rangle = |+\rangle_z. Jak bylo zmíněno dříve, když se provádějí měření, jsou podél osy zz. Cílem je tedy určit, jaké operátory můžeme vložit mezi bázové stavy měření 00\langle 0|\langle 0| a počáteční stavy qubitů 00|0\rangle |0\rangle, abychom získali výše uvedený složitý výraz. K tomu si budeme muset zopakovat některé základní hradla v kvantových výpočtech.

Hradlo XX: Ekvivalent operace NOT. Jednoqubitové hradlo.

X0=1,X1=0X|0\rangle = |1\rangle,\\X|1\rangle=|0\rangle X=[0110]X=\begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}

V Qiskitu vypadá vytvoření obvodu s hradlem XX takto:

from qiskit import QuantumCircuit

qc = QuantumCircuit(1)
qc.x(0)
qc.draw("mpl")

Output of the previous code cell

Hadamardovo hradlo HH: Vytváří superpozici stavů. Jednoqubitové hradlo.

H0=12(0+1),H|0\rangle = \frac{1}{2}\left(|0\rangle+|1\rangle\right), H1=12(01)H|1\rangle = \frac{1}{2}\left(|0\rangle-|1\rangle\right) H=12[1111]H=\frac{1}{2}\begin{bmatrix} 1 & 1 \\ 1 & -1 \end{bmatrix}

Obvod s Hadamardovým hradlem se vytvoří takto:

qc = QuantumCircuit(1)
qc.h(0)
qc.draw("mpl")

Output of the previous code cell

Řízené hradlo NOT (CNOT): Toto hradlo používá dva qubity: řídící a cílový. Kontroluje stav řídícího qubitu, který se nemění. Pokud je ale řídící qubit ve stavu 1|1\rangle, hradlo změní stav cílového qubitu; pokud je stav řídícího qubitu 0|0\rangle, neprovede se žádná změna. V notaci níže předpokládej, že první qubit je řídící a druhý je cílový.

CNOT00=00,CNOT01=01CNOT10=11CNOT11=10CNOT|00\rangle = |00\rangle, \\ CNOT|01\rangle = |01\rangle \\ CNOT|10\rangle = |11\rangle \\ CNOT|11\rangle = |10\rangle

Hradlo CNOT vypadá v obvodu trochu jinak, protože vyžaduje dva qubity. Takto se implementuje:

qc = QuantumCircuit(2)
qc.cx(0, 1)
qc.draw("mpl")

Output of the previous code cell

Všimni si, že první qubit uvedený v qc.cx(0,1) je řídící a druhý je cílový. Diagramaticky je cílový ten se znaménkem „+" nebo křížkem.

Rotační hradlo Y Ry(θ)R_y(\theta): Otáčí stav kolem osy y. Jde o jednoqubitové hradlo.

Ry(θ)0=cos(θ/2)0+sin(θ/2)1,Ry(θ)0=sin(θ/2)0+cos(θ/2)1R_y(\theta)|0\rangle = \cos(\theta/2)|0\rangle+\sin(\theta/2)|1\rangle,\\R_y(\theta)|0\rangle = -\sin(\theta/2)|0\rangle+\cos(\theta/2)|1\rangle Ry(θ)=[cos(θ/2)sin(θ/2)sin(θ/2)cos(θ/2)]R_y(\theta)=\begin{bmatrix} \cos(\theta/2) & -\sin(\theta/2) \\ \sin(\theta/2) & \cos(\theta/2) \end{bmatrix}

Rotační hradla se implementují zadáním typu hradla, velikosti rotace a qubitu, na který se hradlo aplikuje, a to v tomto pořadí:

import numpy as np

pi = np.pi

qc = QuantumCircuit(2)
qc.ry(pi / 2, 0)
qc.draw("mpl")

Output of the previous code cell

Název hradla ry určuje osu, kolem které se rotace provádí. První argument π/2\pi/2 označuje velikost rotace a druhý argument určuje qubit, na který má být hradlo umístěno.

Ověř si porozumění

Přečti si otázky níže, zamysli se nad odpovědí a pak klikni na trojúhelník pro zobrazení řešení.

Pomocí výše uvedené nebo zopakované syntaxe sestav libovolný kvantový obvod zahrnující čtyři různé typy kvantových hradel.

Odpověď:

Existuje samozřejmě nekonečně mnoho možností. Zde je jeden příklad:

qc=QuantumCircuit(2)
qc.ry(pi/2,0)
qc.cx(1,0)
qc.x(1)
qc.h(0)
qc.cx(0,1)
qc.draw("mpl")

Od fyzikálního experimentu ke kvantovým obvodům

Z operací těchto hradel vidíme například, že kety ve výrazech pro P++P_{++}:

12(+LRL+R)\frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right)

pravděpodobně zahrnují Hadamardovo hradlo pro vytvoření superpozice a hradlo CNOT pro vytvoření provázanosti.

Nyní použijeme hradla H, X a CNOT k transformaci 0L0R|0\rangle_L|0\rangle_R na 12(+LRL+R)\frac{1}{\sqrt{2}}\left(|+\rangle_L|-\rangle_R-|-\rangle_L|+\rangle_R\right):

12(0L1R1L0R)\frac{1}{\sqrt{2}}\left(|0\rangle_L|1\rangle_R-|1\rangle_L|0\rangle_R\right) 12CNOTLR(0L1R1L1R)\frac{1}{\sqrt{2}}CNOT_{LR}\left(|0\rangle_L|1\rangle_R-|1\rangle_L|1\rangle_R\right)

Zde CNOTLRCNOT_{LR} označuje hradlo CNOT používající L jako řídící a R jako cílový qubit. Nyní můžeme faktorizovat část R stavu:

CNOTLR12(0L1L)1R\text{CNOT}_{LR}\frac{1}{\sqrt{2}}\left(|0\rangle_L-|1\rangle_L\right)|1\rangle_R CNOTLRHL1L1R\text{CNOT}_{LR} H_L|1\rangle_L|1\rangle_R CNOTLRHLXLXR0L0R\text{CNOT}_{LR} H_L X_L X_R|0\rangle_L|0\rangle_R

Nyní jsme zapsali ket zcela jako kvantová hradla působící na výchozí počáteční stav qubitů.

Nyní můžeme použít Ry(θ)R_y(\theta) působící na pL0R1\vphantom{p}_L\langle 0|_R\langle 1| k získání bra ve výrazu pro P++P_{++}.

pL0R(cos(θ/2)0+sin(θ/2)1)\vphantom{p}_L\langle0|_R\left(\cos(\theta/2)\langle0|+\sin(\theta/2)\langle1|\right) pL0R(0cos(θ/2)+1sin(θ/2))\vphantom{p}_L\langle0|_R\left(|0\rangle \cos(\theta/2)+|1\rangle \sin(\theta/2)\right)^{\dagger} pL0(Ry,R(θ)0R)\vphantom{p}_L\langle0|\left(R_{y,R}(\theta)|0\rangle_R\right)^{\dagger} pL0R0Ry,R(θ)\vphantom{p}_L\langle0|_R\langle0|R_{y,R}(-\theta)

Kombinací těchto výsledků můžeme zapsat pravděpodobnost P++P_{++} jako

p++=pL0R0Ry,R(θ)CNOTLRHLXLXR0L0R2p_{++}=\left|\vphantom{p}_L\langle0|_R\langle0|R_{y,R}(-\theta)\text{CNOT}_{LR} H_L X_L X_R|0\rangle_L|0\rangle_R\right|^2

To nám dává explicitní instrukce, jak sestrojit náš kvantový obvod. Na qubity reprezentující kvantové stavy částic měřených Lukášem a Rihannou aplikujeme hradla X, H, CNOT a RyR_y a provedeme měření k získání pravděpodobnosti.

IBM Quantum doporučuje řešit problémy kvantových výpočtů pomocí rámce, který nazýváme Qiskit patterns. Skládá se z následujících kroků.

  • Krok 1: Namapuj svůj problém na kvantový obvod
  • Krok 2: Optimalizuj svůj obvod pro spuštění na skutečném kvantovém hardwaru
  • Krok 3: Spusť svou úlohu na kvantových počítačích IBM pomocí Runtime Primitives
  • Krok 4: Post-processing výsledků

Prakticky veškerá práce, kterou jsme provedli výše, byl krok 1. Pojďme sestrojit výsledný obvod pomocí Qiskitu!

Krok 1: Namapování výsledků na kvantový obvod

# We'll begin by importing qiskit and a visualization module so that we can plot a histogram of our results.

from qiskit.visualization import plot_histogram

Pamatuj, že 1/3 času bude Rihannina zvolená osa 2π/32\pi/3 radiánů od Lukášovy, 1/3 času bude 4π/34 \pi/3 radiánů od Lukášovy a 1/3 času zvolí stejnou osu. Potřebujeme tedy sestavit 3 kvantové obvody pro tyto 3 případy a výsledky sečíst. První podrobně vysvětlíme a u posledních dvou je pouze uvedeme.

# We start by declaring our first quantum circuit, and giving it two qubits (the first "2") and two classical bits for storing outputs (the second "2")
# Define registers
from qiskit import ClassicalRegister, QuantumRegister

qr = QuantumRegister(2, "q")
cr = ClassicalRegister(2, "c")
qc1 = QuantumCircuit(qr, cr)

# We know from our analysis above that we need an X gate acting on each of the qubits (L and R)
qc1.x([0, 1])
# We need a Hadamard gate acting on Lucas's qubit, which we're calling the 0th qubit.
qc1.h(0)
# The controlled-NOT gate uses the 0th qubit (Lucas's) as the control and the 1st qubit (Rihanna's) as the target.
qc1.cx(0, 1)
# The rotation gate acts on the 1st qubit (Rihanna's) and has an argument of -2 pi/3
qc1.ry(-2 * pi / 3, 1)
# Finally, we want to measure all the qubits in the circuit to obtain measurement probabilities, and store the results in the classical bits.
qc1.measure([0, 1], [0, 1])
# Now we can draw the first of the three circuits that will check Bell's inequality for us.
qc1.draw(output="mpl")

Output of the previous code cell

Níže uvedený kód rychle konstruuje všechny tři obvody efektivnějším způsobem. Všimni si, že jediný rozdíl mezi třemi obvody je velikost rotace dvou qubitů kolem osy yy.

qcs = [QuantumCircuit(2, 2), QuantumCircuit(2, 2), QuantumCircuit(2, 2)]
for i in range(0, len(qcs)):
qcs[i].x([0, 1])
qcs[i].h(0)
qcs[i].cx(0, 1)

qcs[0].ry(-2 * pi / 3, 1)
qcs[1].ry(-4 * pi / 3, 1)
qcs[2].ry(-2 * pi / 3, 1)
qcs[2].ry(-4 * pi / 3, 1)

for i in range(0, len(qcs)):
qcs[i].barrier()
qcs[i].measure([0, 1], [0, 1])

counts_list = [None] * len(qcs)
qcs[0].draw(output="mpl")

Output of the previous code cell

Nyní použijeme Qiskit primitivum zvané StatevectorSampler. Sampler je primitivum navržené k vzorkování všech možných stavů systému a vrácení pravděpodobností (nebo v některých případech kvazipravděpodobností) získání každého stavu. Můžeme zadat počet „shots" a podívat se na „counts" pro každý stav.

from qiskit.primitives import StatevectorSampler

sampler = StatevectorSampler()

# Start a job that will return shots for all 100 parameter value sets.
for i in range(0, len(qcs)):
pub = qcs[i]
job = sampler.run([pub], shots=10000)
# Extract the result for the 0th pub (this example only has one pub).
result = job.result()
data_pub = result[0].data
counts = data_pub.c.get_counts()
counts_list[i] = counts
# plot_histogram(counts)

Když se podíváme na counts z každého obvodu, vidíme, že dva z nich byly v zásadě identické a třetí byl poměrně odlišný.

plot_histogram(counts_list)

Output of the previous code cell

Sestavme seznam možných výsledků a sečtěme všechny counts každého stavu ze všech tří obvodů, abychom získali celkové pravděpodobnosti.

outcomes = ("00", "01", "10", "11")

# Here we convert "None"s into 0's so that we can sum.

for i in range(0, len(qcs)):
for j in range(0, len(outcomes)):
if counts_list[i].get(outcomes[j]) is None:
counts_list[i].update({outcomes[j]: 0})

# Here we create a dictionary that holds all the outcomes and sums over their appearances in each of the circuits.

total_counts = {}
for i in range(0, len(outcomes)):
total_counts[outcomes[i]] = sum(
counts_list[j].get(outcomes[i]) for j in range(0, len(qcs))
)

Nyní můžeme vypsat celkové counts pro každý výsledek a vykreslit histogram.

print(total_counts)
plot_histogram(total_counts)
{'00': 7493, '01': 7432, '10': 7605, '11': 7470}

Output of the previous code cell

Ověř si porozumění

Přečti si otázky níže, zamysli se nad odpovědí a pak klikni na trojúhelník pro zobrazení řešení.

Je výše uvedený obrázek v souladu s výsledky předpovězenými skrytými proměnnými a determinismem? Nebo je v souladu s pravděpodobnostní (a nelokální) kvantovou mechanikou?

Odpověď:

Je v souladu s pravděpodobnostní a nelokální kvantovou mechanikou. Přístup skrytých proměnných předpovídal, že pravděpodobnost získání stejného znaménka je menší nebo rovna 4/9. Kvantová mechanika předpovídala pravděpodobnost 50 %. Histogram výše popisuje pravděpodobnost 00 nebo 11 rovnou 49,97 %. To je velmi blízko předpovědi pravděpodobnostní kvantové mechaniky, ale co je nejdůležitější, je to větší než povolený rozsah v přístupu skrytých proměnných.

Dokazuje to něco o přírodě?

Odpověď:

Ne! Používali jsme simulátor! To je počítač naprogramovaný tak, aby se choval podle zákonů pravděpodobnostní kvantové mechaniky. Pokud navrhneme pravidlo a pak naprogramujeme počítač, aby ho dodržoval, jeho schopnost pravidlo dodržovat není důkazem, že pravidlo je správné! Jediný způsob, jak to dokázat, je použít skutečný kvantový počítač!

Krok 2: Optimalizace kvantového obvodu pro spuštění na skutečném hardwaru

I když jsme zpočátku použili simulátor k ladění kódu, opravdu chceme spustit na skutečném hardwaru. Simulátor totiž jen předstírá, že je kvantově mechanický, na základě výše uvedených rovnic. Kdyby nám simulátor řekl, že jsou tyto rovnice správné, moc by nás to nepřesvědčilo. Chceme, aby nám skutečný kvantový počítač řekl, co se děje! Vybereme tedy kvantový počítač, který chceme použít. Někdy může být důležité vybrat konkrétní zařízení s vlastnostmi, které chceš, ale často jednoduše chceme použít to, které je nejméně vytížené.

Níže je kód pro uložení přihlašovacích údajů při prvním použití. Po uložení do svého prostředí tuto informaci z notebooku smaž, aby tvoje přihlašovací údaje nebyly náhodně sdíleny při sdílení notebooku. Viz Nastavení účtu IBM Cloud a Inicializace služby v nedůvěryhodném prostředí pro další pokyny.

from qiskit_ibm_runtime import QiskitRuntimeService

# Syntax for first saving your token. Delete these lines after saving your credentials.
# QiskitRuntimeService.save_account(channel='ibm_quantum_platform', instance = '<YOUR_IBM_INSTANCE_CRN>', token='<YOUR-API_KEY>', overwrite=True, set_as_default=True)
# service = QiskitRuntimeService(channel='ibm_quantum_platform')

# Load saved credentials
service = QiskitRuntimeService()

backend = service.least_busy(
operational=True, min_num_qubits=qcs[0].num_qubits, simulator=False
)
from qiskit.transpiler.preset_passmanagers import generate_preset_pass_manager

target = backend.target
pm = generate_preset_pass_manager(target=target, optimization_level=3)

qcs_isa = qcs

for i in range(0, len(qcs)):
qcs_isa[i] = pm.run(qcs[i])
qcs_isa[i].draw(output="mpl", idle_wires=False, style="iqp")
qcs_isa[2].draw(output="mpl", idle_wires=False, style="iqp")

Output of the previous code cell

Krok 3: Spuštění úlohy na kvantových počítačích IBM pomocí Runtime primitiv

Nyní, když jsme optimalizovali naše obvody pro spuštění na skutečném kvantovém hardwaru a odladili kód pomocí simulátorů, jsme připraveni shromažďovat statistiky ze skutečného kvantového počítače a vyřešit spor mezi Einsteinem a Bornem.

from qiskit_ibm_runtime import SamplerV2 as Sampler
# from qiskit_ibm_runtime import Session
# sampler.options.default_shots = 1000

# Start a job that will return shots for all 100 parameter value sets.
# The best practice is to use a session as shown below. This is available to Premium Plan, Flex Plan, and On-Prem (IBM Quantum Platform API) Plan users.
# result_list = [None] * len(qcs)
# real_counts_list = [None] * len(qcs)
# with Session(backend=backend) as session:
# sampler = Sampler(mode=session)

# for i in range(0, len(qcs)):
# # Define the primitive unified bloc (pub)
# pub = qcs[i]
# job = sampler.run([pub], shots=10000)
# # Extract the result for the 0th pub (this example only has one pub).
# result_list[i] = job.result()
# data_pub = result_list[i][0].data
# counts = data_pub.c.get_counts()
# real_counts_list[i] = counts
# # plot_histogram(counts)

# Open users can still carry out this experiment, but without reserving a session of use, meaning repeated queuing is possible.
from qiskit_ibm_runtime import Batch

batch = Batch(backend=backend)
sampler = Sampler(mode=batch)

result_list = [None] * len(qcs)
real_counts_list = [None] * len(qcs)

for i in range(0, len(qcs)):
# Define the primitive unified bloc (pub)
pub = qcs[i]
job = sampler.run([pub], shots=10000)
# Extract the result for the 0th pub (this example only has one pub).
result_list[i] = job.result()
data_pub = result_list[i][0].data
counts = data_pub.c.get_counts()
real_counts_list[i] = counts

# Close the batch because no context manager was used.
batch.close()
outcomes = ("00", "01", "10", "11")

# Here we convert "None"s into 0's so that we can sum.

for i in range(0, len(qcs)):
for j in range(0, len(outcomes)):
if real_counts_list[i].get(outcomes[j]) is None:
real_counts_list[i].update({outcomes[j]: 0})

# Here we create a dictionary that holds all the outcomes and sums over their appearances in each of the circuits.

real_total_counts = {}
for i in range(0, len(outcomes)):
real_total_counts[outcomes[i]] = sum(
real_counts_list[j].get(outcomes[i]) for j in range(0, len(qcs))
)

print(real_total_counts)
plot_histogram(real_total_counts)
{'00': 7542, '01': 7503, '10': 7304, '11': 7651}

Output of the previous code cell

# This syntax allows you to run the job on a simulator, in case you have exhausted your allotted time on real IBM quantum computers.
# But we strongly advise running this on real quantum computers, since this is meant to be a check of the behavior of real quantum systems.

# This uses a local simulator
# from qiskit_aer import AerSimulator

# This generates a simulator that mimics the real quantum system
# backend_sim = AerSimulator.from_backend(backend)

# Import an estimator, this time from qiskit (we import from Runtime for real hardware)
# from qiskit.primitives import BackendSamplerV2
# sampler = BackendSamplerV2(backend = backend_sim)

# result_list = [None] * len(qcs)
# counts_list = [None] * len(qcs)
# for i in range(0, len(qcs)):
# Define the primitive unified bloc (pub)
# pub = qcs[i]
# job = sampler.run([pub], shots=10000)
# Extract the result for the 0th pub (this example only has one pub).
# result_list[i] = job.result()
# data_pub = result_list[i][0].data
# counts = data_pub.c.get_counts()
# counts_list[i] = counts

# data_pubs = (result_list[0][0].data,result_list[1][0].data,result_list[2][0].data)
# outcomes = ("00", "01", "10", "11")

# Here we convert "None"s into 0's so that we can sum.

# for i in range(0, len(qcs)):
# for j in range(0, len(outcomes)):
# if counts_list[i].get(outcomes[j]) is None:
# counts_list[i].update({outcomes[j]: 0})

# Here we create a dictionary that holds all the outcomes and sums over their appearances in each of the circuits.

# total_counts = {}
# for i in range(0, len(outcomes)):
# total_counts[outcomes[i]] = sum(
# counts_list[j].get(outcomes[i]) for j in range(0, len(qcs))
# )

# print(total_counts)
# plot_histogram(total_counts)
counts_list
[None, None, None]

Krok 4: Post-processing a analýza

Udělejme krok zpět a rekapitulujme: Pomocí přístupu skrytých proměnných a 3 posunutých os jsme získali omezení pravděpodobnosti, že měření dají stejné znaménko Psame,hv=4/9P_{same,hv} =4/9. Poté jsme předpokládali rozdělení pravděpodobnosti podle kvantové mechaniky a získali jsme jinou hodnotu pro tuto pravděpodobnost: Psame,gm=1/2P_{same,gm} = 1/2. Předpověď z kvantové mechaniky je vyšší než to, co umožňuje přístup skrytých proměnných. Lze tedy experimentálně zjistit, zda jsou kvantové mechanické stavy určeny přírodou před měřením, nebo zda jsou skutečně v pravděpodobnostní superpozici možných stavů.

Navrhli jsme naše kvantové obvody tak, aby existovaly čtyři možné výsledky odpovídající tomu, že Lukáš a Rihanna měří jedno nebo druhé znaménko projekce spinu: 00, 01, 10 a 11. V případech 00 a 11 měří Lukáš a Rihanna stejné znaménko a v případech 01 a 10 měří opačná znaménka. Vidíme, že s velmi dobrou aproximací je šance, že Lukáš a Rihanna dostanou stejné znaménko, přibližně 50 %, rozhodně větší než 4/94/9. To znamená, že neexistuje žádná sada skrytých proměnných, která by mohla vysvětlit toto rozdělení pravděpodobností, a přístup skrytých proměnných není slučitelný s experimentem.

Existují různé interpretace výsledků kvantových mechanických experimentů a existuje mnoho jemností v experimentálních uspořádáních, které jsou čas od času znovu přezkoumávány. Dosud však principy kvantové mechaniky a pravděpodobnostní interpretace kvantových stavů přesně popisovaly výsledky. Max Born zřejmě měl pravdu.

Věnujme ještě chvíli zamyšlení nad významem tohoto zjištění. Z rozpadové události vylétnou dvě částice a obě cestují různými směry, možná po dlouhou dobu. Jejich spiny nejsou v žádném dobře definovaném stavu a nenesou s sebou žádné instrukce skrytých proměnných, které by určovaly výsledky budoucích měření. Ale měření jedné z nich (řekněme podél +z+z) nutně určí výsledek experimentu na spinu druhé částice podél osy zz (musí být z-z). To znamená, že něco o fyzice jedné částice je určeno tím, co se dělá s druhou částicí, která může být daleko. Toto je jedna ze situací, které vedly lidi k označení reality jako „nelokální".

Dvě částice, jako jsou ty, které jsme popisovali, jsou jakýmsi způsobem „propojeny" v tom smyslu, že měření na jedné může ovlivnit druhou. Takové částice označujeme jako „provázané". Provázanost je více než jen korelace. Například bychom mohli sestrojit klasický stroj, který vystřelí magnet na jednu stranu se severním pólem nahoru a magnet na druhou stranu se severním pólem dolů. Takové magnety by mohly být dokonale antikorelované. Ale měření jednoho by nijak neovlivnilo druhý. V kvantové mechanické provázanosti může být částice A v nedefinovaném stavu (nebo směsi mnoha stavů) a my ji můžeme připnout k definovanému stavu prostřednictvím měření na zcela jiné částici (řekněme B). Nic takového v klasickém světě neexistuje.

To často otevírá celý nový svět otázek a možností. Některé z vyvolaných myšlenek jsou reálné, jako je využití provázanosti k výpočtům, jako v kvantových počítačích! Jiné jsou lákavě působivé, ale nakonec selžou, jako pokus využít provázanost k přenosu informací rychleji než světlo. Povzbuzujeme tě, abys kladl/kladla všechny otázky, které tě napadají, a četl/četla o tom, jak ostatní tyto jevy zkoumali. Je tu celý svět kvantové mechaniky k prozkoumání, ale zde je jen několik zdrojů, které bys mohl/mohla zkontrolovat:

Kurzy IBM Quantum:

Zajímavé články z kvantové mechaniky:

Některé výukové zdroje z kvantové mechaniky:

Výzkum v oblasti vzdělávání v kvantové mechanice:

Otázky

Vyučující mohou požádat o verze těchto notebooků s klíčem odpovědí a pokyny k zařazení do běžných osnov vyplněním tohoto krátkého průzkumu o způsobu využití notebooků.

Klíčové pojmy:

  • V historii existoval spor o to, zda jsou kvantové stavy před měřením pouze neznámé, nebo zda jsou ze své podstaty neurčené, a zda je kvantová mechanika deterministická nebo pravděpodobnostní.
  • Skryté proměnné, a tedy lokální realismus, nejsou v souladu s pozorováními kvantové mechaniky. Korelace pozorované v kvantové mechanice tedy nelze vysvětlit dobře definovanými proměnnými, které jsou nám prostě neznámé.
  • Kvantová mechanika je pravděpodobnostní.
  • Provázanost je reálná a pozorovatelná.
  • Provázanost není pouhá korelace.
  • Reálné světové scénáře lze mapovat na kvantové počítače.
  • Skryté proměnné označují veličiny specifikované přírodou, avšak lidem neznámé; v tomto kontextu neexistují.

Otázky Pravda/Nepravda:

  1. P/N Albert Einstein tvrdil, že kvantová mechanika je jako teorie neúplná, protože popisuje pouze pravděpodobnosti výsledků, nikoli základní mechanismus, který tyto výsledky určuje.
  2. P/N „Skryté proměnné" označují myšlenku, že dvě kvantově mechanické částice mohou být provázané.
  3. P/N Jakékoli dva korelované systémy jsou kvantově mechanicky provázané.
  4. P/N Kvantově mechanická provázanost je důležitá pro správné výpočty, ale nelze ji pozorovat v experimentu.
  5. P/N Ve většině případů ti kvantová mechanika nemůže říci přesný výsledek experimentu, pouze pravděpodobnosti, s nimiž budou určité výsledky naměřeny.
  6. P/N V kvantové mechanice může být za určitých podmínek stav částice A ovlivněn stavem částice B, i když částice A a B nejsou v kontaktu a nevyměňují si žádné částice.
  7. P/N Reálné experimenty lze mapovat na kvantové obvody.

Otázky s výběrem odpovědi:

  1. Předpokládej, že částice se spinem 0 se rozpadne na dvě částice A a B se spinem 1/2. Měření provedené na částici A ukáže, že její spin má projekci podél +z+z. Částice B má nyní

    • a. určitě projekci spinu podél z-z
    • b. určitě projekci spinu podél x-x
    • c. určitě projekci spinu podél y-y
    • d. určitě zápornou projekci spinu podél libovolné naměřené osy.
  2. Částice se spinem 0 se rozpadne na dvě částice A a B se spinem 1/2. Pokud je naměřeno, že částice A má projekci podél +z+z, které z následujících projekcí jsou možné pro měření částice B? Zakroužkuj vše, co platí.

    • a. +x+x
    • b. x-x
    • c. +y+y
    • d. y-y
    • e. +z+z
    • f. z-z
  3. Předpokládej, že částice se spinem 0 se rozpadne na dvě částice A a B se spinem 1/2. Co nejlépe popisuje stav částice A před jakýmkoli měřením?

    • a. Spin částice A je podél +z+z.
    • b. Spin částice A je podél z-z.
    • c. Spin částice A je podél +x+x.
    • d. Spin částice A je definován podél některých směrů, ale ne jiných.
    • e. Orientace spinu částice A je před jakýmkoli měřením přírodou neurčena.
  4. Které z následujících tvrzení platí pro Hadamardovu hradlo? Vyber vše, co platí.

    • a. H0=12(0+1)H|0\rangle = \frac{1}{\sqrt{2}}(|0\rangle+|1\rangle)
    • b. H0=12(01)H|0\rangle = \frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)
    • c. H12(01)=0H \frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)=|0\rangle
    • d. H12(0+1)=0H \frac{1}{\sqrt{2}}(|0\rangle+|1\rangle)=|0\rangle
  5. Které z následujících tvrzení platí pro hradlo X? Vyber vše, co platí.

    • a. X0=1X|0\rangle = |1\rangle
    • b. X0=12(01)X|0\rangle = \frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)
    • c. X0=0X|0\rangle = -|0\rangle
    • d. X1=0X|1\rangle = |0\rangle
    • e. X12(01)=X12(10)X\frac{1}{\sqrt{2}}(|0\rangle-|1\rangle)=X\frac{1}{\sqrt{2}}(|1\rangle-|0\rangle)
  6. Které z následujících je dvoukubitové hradlo?

    • a. X
    • b. Ry(θ)R_y(\theta)
    • c. H
    • d. CNOT
  7. Předpokládej, že qubit je ve stavu 0|0\rangle. Jaká je pravděpodobnost jeho naměření ve stavu 11\rangle?

    • a. Přesně 100 % na simulátoru bez šumu, přibližně 100 % na skutečném kvantovém počítači
    • b. Přibližně 100 % na simulátoru bez šumu, přesně 100 % na skutečném kvantovém počítači
    • c. Přesně 0 % na simulátoru bez šumu, přibližně 0 % na skutečném kvantovém počítači
    • d. Přibližně 0 % na simulátoru bez šumu, přesně 0 % na skutečném kvantovém počítači

Diskusní otázky:

  1. Přátelé A, B a C diskutují o výsledcích z této laboratoře týkajících se Bellovy nerovnosti. Konkrétně se dívají na obrázek, který ukazuje, že kvantově mechanická pravděpodobnost měření stejného znaménka podél os je větší, než dovoluje přístup se skrytými proměnnými: (Psame)max,QM>(Psame)max,HV(P_\text{same})_\text{max,QM}>(P_\text{same})_\text{max,HV}. Přítel A říká: „To znamená, že jsme před měřením neznali spinové stavy." Přítel B říká: „Ne, je to víc než to. To znamená, že spiny před měřením vůbec neukazují konkrétním směrem. I když by spinový stav mohl být nějak určen nebo uložen." Přítel C říká: „Ne, je to ještě víc než to. To znamená, že budoucí spinový stav nebyl přírodou rozhodnut ani před měřením." S kým souhlasíš a proč?

  2. Vysvětli, jak kvantově mechanické jevy jako provázanost naznačují, že realita je nelokální.

  3. Jaké další experimenty bys chtěl/a provést, abys se přesvědčil/a o zde získaných výsledcích?

  4. Mohla by být Bellova nerovnost zkoumána pouze se 3 rovnoměrně rozmístěnými osami aa, bb a cc? Šlo by to s jiným počtem os? Jak by to vypadalo? Vedlo by to stále k rozdílu v pravděpodobnostech předpovídaných skrytými proměnnými oproti pravděpodobnostní kvantové mechanice?