ABSTRAKT Práce se věnuje zavedení matematické notace kvantových stavů, následně pak hlubšímu porozumění jejich reprezentace. V práci je uvedeno rozšíření klasické hry dvou hráčů Vězňova dilematu o kvantové strategie. Jsou pozorovány změny rovnovážného stavu hry oproti hře nekvantové. KLÍČOVÁ SLOVA kvantový bit, Blochova sféra, entanglement, vězňovo dilema ABSTRACT This thesis presents introductuion to mathematical notation of quantum states, further- more foucuses on deeper understanding of their representation. We broaden a clasical game of two players Prisoners dilema by adding quantum strategies. And we observe changes of equilibrium in comparison to clasical game. KEYWORDS quantum bit, Bloch sphere, entanglement, prisoners dilema Vysázeno pomocí balíčku thesis verze 4.07; http://latex.feec.vutbr.cz http://latex.feec.vutbr.cz KRAJNÝ, Matěj. Kvantová teorie her dvou hráčů. Brno: Vysoké učení technické v Brně, Fakulta strojního inženýrství, Ústav matematiky, 2022, 49 s. Bakalářská práce. Vedoucí práce: doc. Mgr. Jaroslav Hrdina, Ph.D. Prohlášení autora o původnosti díla Jméno a příjmení autora: Matěj Krajný VUT ID autora: 209410 Typ práce: Bakalářská práce Akademický rok: 2021/22 Téma závěrečné práce: Kvantová teorie her dvou hráčů Prohlašuji, že svou závěrečnou práci jsem vypracoval samostatně pod vedením vedou- cí/ho závěrečné práce a s použitím odborné literatury a dalších informačních zdrojů, které jsou všechny citovány v práci a uvedeny v seznamu literatury na konci práce. Jako autor uvedené závěrečné práce dále prohlašuji, že v souvislosti s vytvořením této závěrečné práce jsem neporušil autorská práva třetích osob, zejména jsem nezasáhl nedovoleným způsobem do cizích autorských práv osobnostních a/nebo majetkových a jsem si plně vědom následků porušení ustanovení S 11 a následujících autorského zá- kona č. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon), ve znění pozdějších předpisů, včetně možných trestněprávních důsledků vyplývajících z ustanovení části druhé, hlavy VI. díl 4 Trestního zákoníku č. 40/2009 Sb. Brno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . podpis autora∗ ∗Autor podepisuje pouze v tištěné verzi. PODĚKOVÁNÍ Rád bych poděkoval vedoucímu bakalářské práce panu doc. Mgr.Jaroslav Hrdina Ph.D. za odborné vedení, mnohé konzultace, neutuchající trpělivost a podnětné návrhy k práci. Obsah Úvod 15 1 Matematický formalismus 17 1.1 Zavedení qubitu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.1.1 Diracova notace . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.1.2 Zavedení operací na qubitech . . . . . . . . . . . . . . . . . . 18 1.1.3 2-qubit a n-qubity . . . . . . . . . . . . . . . . . . . . . . . . 22 2 Základy kvantového počtu 23 2.1 Měření stavů . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2 Blochovsky podobné vektory . . . . . . . . . . . . . . . . . . . . . . . 24 2.3 Vizuální reprezentace Blochovy sféry . . . . . . . . . . . . . . . . . . 29 2.4 Logické brány . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.4.1 Brány na 1-qubitech . . . . . . . . . . . . . . . . . . . . . . . 33 2.4.2 Entaglment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3 Kvantové hry 37 3.1 Hry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 3.2 Kvantové vězňovo dilema . . . . . . . . . . . . . . . . . . . . . . . . . 38 Závěr 47 Literatura 49 Úvod V dnešním světě se stále častěji začínají objevovat zmínky o kvantových počítačích. Už v roce 2019 Google publikoval své výsledky na téma kvantové nadřazenosti. Kdy je dána stejná výpočetní úloha kvantovému počítači a velice výkonému klasickému počítači. Google tvrdí, že algoritmus na jejich kvantovém počítači dokončil výsledky za 200 sekund, zatímco odhad trvání výpočtu stejné úlohy by nejrychlejšímu počítači na světě trval přes 10 000 let. Toto tvrzení bylo později zpochybněno firmou IBM, která tvrdí, že po optimalizaci klasického algoritmu, by výpočet trval pouze několik dní. S tím, jaký zájem mají kvantové počítače v prostoru technologických gigantů, je pouze logické očekávat jejich další rozvoj. Není proto od věci zaměřit se na pocho- pení základů kvantových algoritmů. Na první pohled patrným rozdílem klasického a kvantového algoritmu je jejich způsob práce s informacemi. Zatímco klasický počítač bere v potaz pouze diskrétní hodnoty 1 a 0 chceme-li pravda a nepravda. Kvantový počítač pracuje s celým spektrem hodnot mezi pravdou a nepravdou, a o konkrétním výstupu rozhoduje až finální pozorování. Toto se ve fyzických kvantových počíta- čích děje, za pomoci částic kvantové fyziky a jejich vlastnosti superpozice. Kdy částice jsou zdánlivě ve více stavech zároveň, a až pozorováním (měřením), dochází ke kolapsu do jednoho ze stavů. Tento fakt reprezentujeme za pomoci konstrukce kvantových bitů ’qubitů’ jako prvků komplexních vektorových prostorů, jak uvidíme dále. Stavíme tedy paralely mezi světy: běžné výpočetní techniky, kvantové fyziky a kvantových počítačů. 15 1 Matematický formalismus 1.1 Zavedení qubitu Abychom mohli mluvit o teorii her v kvantovém světě, musíme si nejprve stanovit jasný komunikační rámec. O hrách můžeme mluvit jako o algoritmech, a abychom mohli popisovat kvantové algoritmy, musíme nejprve poznat jejich doménu nad kte- rou pracují tedy data. V tradiční výpočetní technice využíváme k uchování informace takzvané bity. Binární jednotku informace uloženou ve formě 1 nebo 0, chcete-li prav- da/nepravda. Ale ty pro popis kvantových stavů nestačí. A proto zavádíme takzvané qubity jako prvky C 2 následovně: Q := {︃ �⃗� = ⎛⎝𝑞1 𝑞2 ⎞⎠ , 𝑞1, 𝑞2 ∈ C ‖�⃗�‖ = 1 }︃ , kde ‖�⃗�‖ definujeme jako zobrazení z C2 do R s následujícím předpisem: ‖ · ‖ := C 2 → R ∀�⃗� ∈ C2 : ‖�⃗�‖ = √ 𝑞1𝑞1 + 𝑞2𝑞2, kde 𝑞 je číslo komplexně sdružené. Tímto jsme si definovali qubit, což je základní informační jednotka, při popisu kvantových algoritmů. Obdobně jako v binární výpočetní technice, máme základní stavy 0 a 1, máme pro tyto stavy obdoby i na qubitech. Vyberme si tedy jednu z mnoha bází C2, jejíž vektory označíme 0⃗ a 1⃗, a nazvěme ji Kanonickou: 0⃗ = ⎛⎝1 + 0 · 𝑖 0 + 0 · 𝑖 ⎞⎠ , 1⃗ = ⎛⎝0 + 0 · 𝑖 1 + 0 · 𝑖 ⎞⎠ . Libovolný 1-qubit pak můžeme sestrojit takto: �⃗� ∈ {𝑎 · 0⃗ + 𝑏 · 1⃗ | 𝑎, 𝑏 ∈ C ‖𝑎‖2 + ‖𝑏‖2 = 1}. Tato báze však není jediná se kterou budeme pracovat. Zmiňme zde proto aspoň některé další, přičemž k jejich podrobnému popisu se dostaneme později. Budeme je nazývat ± báze a její prvky jsou: +⃗ = √ 2 2 · 0⃗ + √ 2 2 · 1⃗, −⃗ = √ 2 2 · 0⃗− √ 2 2 · 1⃗ a ±𝑖 báze s prvky: +⃗𝑖 = √ 2 2 · 0⃗ + √ 2 2 𝑖 · 1⃗, −⃗𝑖 = √ 2 2 · 0⃗− √ 2 2 𝑖 · 1⃗ 17 1.1.1 Diracova notace Obvykle, pro popisování kvantových stavů používáme Diracova zápisu. Je to jen jiný způsob notace vektoru, který nám ale zápis zpřehlední, a výpočty opticky zjednoduší. Sloupcový vektor a nazýváme ’ket’ a zapisujeme následovně: �⃗� = ⎛⎝𝑞1 𝑞2 ⎞⎠ = |𝑞⟩. Řádkový vektor nazýváme ’bra’ a značíme takto: (𝑝1, 𝑝2) = ⟨𝑝|. Přičemž mějme † zobrazení, mezi prostory ’ket’ vektorů a ’bra’ vektorů. Takové že platí: ⟨𝑝|† = |𝑞⟩ ⇔ 𝑝1 = 𝑞1 ∧ 𝑝2 = 𝑞2. Jasně vidíme, že zobrazení výše je pouze transponování vektoru spolu s komplexní konjugací jeho složek. A to ukažme na příkladu: |𝑎⟩ = �⃗� = ⎛⎝−√ 3 3 + √ 3 3 𝑖 0− √ 3 3 𝑖 ⎞⎠ , ⟨𝑎| = �⃗� † = (︃ − √ 3 3 − √ 3 3 𝑖, 0 + √ 3 3 𝑖 )︃ . *(Pro snadné zapamatování, můžeme nad zápisem vektorů uvažovat jako nad psaním závorek neboli ’brackets’. Pokud bychom slovo rozdělili foneticky napůl, dostaneme bra a ket, a máme jasnou nápovědu jak který vektor nazvat.) 1.1.2 Zavedení operací na qubitech Pro jednoduchost uvádíme příklady na 1-qubitech, ale veškeré operace, lze jednoduše zobecnit na n-qubit. Sčítání ⨁︀ Uvědomme si, že prostor qubitů netvoři vektorový prostor. Klasická operace sčítání na vektorech by proto na prostoru qubitů nedávala smysl, navíc nemáme k dispozici nulový vektor. A proto na qubitech nezavádíme sčítání, stejně jako na obvyklých vektorových prostorech po složkách, ale se změnou a to takovou, že vždy vynu- tíme, aby byl výsledek považován za qubit. Tedy po každém klasickém součtu ještě výsledek normalizujeme: 𝑝⊕ �⃗� = 𝑝+ �⃗� ‖𝑝+ �⃗�‖ , kde + značíme tradiční součet po složkách. Důležité je poznamenat, že můžeme sčítat pouze bra vektory s bra vektory a očekávat výsledek opět jako bra vektor. Stejně pak s ket vektory. 18 Skalární součin (·, ·) ∼ ⟨·|·⟩ Pro vyjádření skalárního součinu, za pomoci Diracovy notace, potřebujeme nejprve odkázat na adjungované prostory. Konkrétně nás zajímají prostory všech lineárních zobrazení z C2 do C. Tedy zobrazení z prostoru ket vektorů do komplexních čísel. Mějme lineární zobrazení ⟨𝑓 | z prostoru C 2 do C. ⟨𝑓 | : C2 → C. Na prostoru C2 značíme obecný prvek |𝑞⟩ přičemž, ten získáváme lineární kombinací bázových prvků {|0⟩, |1⟩} tohoto prostoru následovně: |𝑞⟩ = 𝛼|0⟩+ 𝛽|1⟩, 𝛼, 𝛽 ∈ C ∧ ‖𝛼‖2 + ‖𝛽‖2 = 1. Pak díky linearitě zobrazení ⟨𝑓 | platí: ⟨𝑓 |𝑞⟩ = ⟨𝑓 |0⟩ · 𝛼 + ⟨𝑓 |1⟩ · 𝛽. Vidíme, že pro jednoznačné určení libovolného zobrazení ⟨𝑥| stačí určit hodnoty v bázových vektorech. Definujme nyní zobrazení ⟨0| , ⟨1| pomocí báze prostoru ket vektorů indexované takto: ⟨𝑗|𝑖⟩ = ⎧⎪⎨⎪⎩1 𝑖 = 𝑗 0 𝑖 ̸= 𝑗 | 𝑖, 𝑗,∈ {0, 1} Je vidět, že tato zobrazení jsou lineárně nezávislá. Mějme libovolné zobrazení ⟨𝑓 | a vektor |𝑥⟩ pak platí: ⟨𝑓 |𝑥⟩ = ⟨𝑓 |(|0⟩⟨0|+ |1⟩⟨1|)|𝑥⟩ = ⟨𝑓 |0⟩⟨0|𝑥⟩+ ⟨𝑓 |1⟩⟨1|𝑥⟩ = 𝑓1𝑥1 + 𝑓2𝑥2, kde |0⟩⟨0|+|1⟩⟨1| je identické zobrazení. Dokonce z předchozího vztahu výše vyplývá, že zobrazení {⟨0|, ⟨1|} tvoří bázi prostoru, adjungovanému prostoru ket vektorů. Tento prostor, pak nazveme prostorem ’bra’ vektorů. Přičemž každý bra vektor můžeme vyjádřit jako lineární kombinaci bázových bra vektorů: ⟨𝑓 | = 𝑓1⟨0|+ 𝑓2⟨1|. Na druhou stranu výpočet hodnoty komplexního skalárního součinu ve zvolené bázy můžeme zapsat takto: (|𝑝⟩, |𝑞⟩) = 𝛼 · 𝛾 + 𝛽 · 𝛿 = 𝜑. kde |𝑝⟩ = 𝛼|0⟩+𝛽|1⟩, |𝑞⟩ = 𝛾|0⟩+𝛿|1⟩, 𝛼, 𝛽, 𝛾, 𝛿 ∈ C, ‖𝛼‖2+‖𝛽‖2 = ‖𝛾‖2+‖𝛿‖2 = 1. 19 Celkově tedy vidíme, že ve zvolené bázi můžeme definovat komplexní skalární součin pomocí Diracovy notace jako: (|𝑝⟩, |𝑞⟩) = |𝑝⟩†|𝑞⟩ = ⟨𝑝|𝑞⟩ Dále pak pro libovolný ket vektor |𝑞⟩ vidíme jasnou souvislost skalárního součinu a normy vektoru: ⟨𝑞|𝑞⟩ = (|𝑞⟩, |𝑞⟩) = ||�⃗� ||2, což pokud |𝑞⟩ ∈ Q považujeme za qubit musí splňovat podmínku normality: ⟨𝑞|𝑞⟩ = (|𝑞⟩, |𝑞⟩) = ||�⃗� ||2 = 1. Pro úplnost ještě označme prostor ’bra’ vektorů: 𝒬† := {︂ ⟨𝑞| = (︁ 𝑞1, 𝑞2 )︁ , 𝑞1, 𝑞2 ∈ C 𝑞1𝑞1 + 𝑞2𝑞2 = 1 }︂ . Tenzorový součin Rozebírání tříd tenzorů a detailní popis fungování jejich součinu, je mimo možnosti této bakalářské práce. Avšak poznamenejme zde, jak funguje tenzorový součin vek- torů 𝑘𝑒𝑡×𝑘𝑒𝑡 ∼ |𝑞⟩|𝑝⟩, a 𝑘𝑒𝑡×𝑏𝑟𝑎 ∼ |𝑞⟩⟨𝑝|. Zatímco se u skalárního součinu 𝑏𝑟𝑎×𝑘𝑒𝑡 dimenze redukuje na skalár, bude se při tenzorovém součinu dimenze navyšovat. A to například tak, že budeme li násobit ket vektor |𝑑⟩ dimenze 4 s ket vektorem |𝑏⟩ dimenze 2 dostaneme ket vektor |ℎ⟩ dimenze 8. Přičemž vektory zapíšeme takto: |𝑑⟩ = ⎛⎜⎜⎜⎜⎜⎝ 𝑑0 𝑑1 𝑑2 𝑑3 ⎞⎟⎟⎟⎟⎟⎠ , |𝑏⟩ = ⎛⎝𝑏0 𝑏1 ⎞⎠ , |ℎ⟩ = ⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝ ℎ0 ℎ1 ℎ2 ℎ3 ℎ4 ℎ5 ℎ6 ℎ7 ⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠ 20 Chceme zjistit jak tenzorové násobení zpracovává jednotlivé souřadnice vektorů, vyjádřeme indexy 𝑖, 𝑗, 𝑘 jako binární čísla: 𝑖 = 0 00 1 01 2 10 3 11 𝑗 = 0 0 1 1 𝑘 = 𝑖 |𝑗 0 00|0 1 00|1 2 01|0 3 01|1 4 10|0 5 10|1 6 11|0 7 11|1 . Všimněme si, že indexy 𝑖,𝑗 jsou jakoby schovány v indexu 𝑘. Nyní tedy potřebujeme index 𝑘 vyjádřit pomocí indexů 𝑖 a 𝑗, a to provedeme následovně: 𝑘 = 𝑑𝑖𝑚(|𝑏⟩) · 𝑖+ 𝑗. Konečně definujeme součin |𝑑⟩ × |𝑏⟩ = |ℎ⟩ tak, že pro ℎ𝑘 platí: ℎ𝑘 = 𝑏𝑖 · 𝑑𝑗 ←→ 𝑘 = 𝑑𝑖𝑚(|𝑏⟩) · 𝑖+ 𝑗 | 𝑖 = 0, 1, 2, 3 𝑗 = 0, 1 𝑘 = 0, 1, ..., 6, 7 Všimněme si že tato operace není komutativní vůči výsledku samotnému, ale pro- hození pořadí násobení zachová typ výsledného vektoru. Také poznamenejme, že násobení 𝑏𝑟𝑎× 𝑏𝑟𝑎 bude fungovat naprosto obdobně, tedy ho jen shrňme příkladem: ⟨u| = 5 13⟨0|+ 12 13⟨1| ⟨v| = 1 10⟨00|+ 5 10⟨01|+ 5 10⟨10|+ 7 10⟨11| ⟨𝑤| = ⟨𝑢| × ⟨𝑣| = ( 5 13⟨0|+ 12 13⟨1|)× ( 1 10⟨00|+ 5 10⟨01|+ 5 10⟨10|+ 7 10⟨11|) = = 1 10 5 13⟨0|⟨00|+ 5 10 5 13⟨0|⟨01|+ 5 10 5 13⟨0|⟨10|+ 7 10 5 13⟨0|⟨11|+ + 1 10 12 13⟨1|⟨00|+ 5 10 12 13⟨1|⟨01|+ 5 10 12 13⟨1|⟨10|+ 7 10 12 13⟨1|⟨11| = = 5 130⟨000|+ 25 130⟨001|+ 25 130⟨010|+ 35 130⟨011|+ + 12 130⟨100|+ 60 130⟨101|+ 60 130⟨110|+ 84 130⟨111|. Zde poprvé vidíme plnou sílu způsobu značení kanonické báze pomocí binárního vyjádření indexu nenulového prvku. Totiž nad operací ⟨10|⟨1| nemusíme příliš pře- mýšlet a rovnou píšeme ⟨101|. Poslední varianta, kterou jsme ještě neprozkoumali je násobení vektorů způsobem 𝑘𝑒𝑡 × 𝑏𝑟𝑎. Což díky tenzorovému součinu jde také, a vlastně intuitivně. Pokud jsme 21 totiž postupem 𝑏𝑟𝑎 × 𝑘𝑒𝑡 dimenze ztráceli, tak nyní je bude nabývat zpět. Dovolím si zde poměrně přímočaré zjednodušení, ale pro naše potřeby, bude vyhovující. Tedy součin vektorů |𝑞⟩⟨𝑝| kde 𝑑𝑖𝑚(⟨𝑝|) = 𝑚 a 𝑑𝑖𝑚(|𝑞⟩) = 𝑛 nám dá matici řádu 𝑚× 𝑛. Přičemž konkrétní postup násobení definujme následovně: ⟨𝑝| = (︁ 𝑝1 𝑝2 · · · 𝑝𝑚−1 𝑝𝑚 )︁ , |𝑞⟩ = ⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝ 𝑞1 𝑞2 ... 𝑞𝑛−1 𝑞𝑛 ⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠ , |𝑞⟩⟨𝑝| := ⎛⎜⎜⎜⎜⎜⎜⎜⎜⎜⎝ 𝑝1 · 𝑞1 𝑝2 · 𝑞1 · · · 𝑝𝑚−1 · 𝑞1 𝑝𝑚 · 𝑞1 𝑝1 · 𝑞2 𝑝2 · 𝑞2 · · · 𝑝𝑚−1 · 𝑞2 𝑝𝑚 · 𝑞2 ... ... . . . ... ... 𝑝1 · 𝑞𝑛−1 𝑝2 · 𝑞𝑛−1 · · · 𝑝𝑚−1 · 𝑞𝑛−1 𝑝𝑚 · 𝑞𝑛−1 𝑝1 · 𝑞𝑛 𝑝2 · 𝑞𝑛 · · · 𝑝𝑚−1 · 𝑞𝑛 𝑝𝑚 · 𝑞𝑛 ⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠ . 1.1.3 2-qubit a n-qubity Až doposud jsme se věnovaly zavedení 1-qubitu. Pokud ale chceme qubity využít jako stavební kámen pro algoritmy, musíme být schopni ukládat větší množství infor- mací než je ekvivalent jednoho bitu. Začněme tedy zavedením 2-qubitů (čtěme "dva kjůbitů"). Obecně jsou 2-qubity prvky vektorového prostoru C 4, opět s omezením jejich velikosti na 1. Všechny 2-qubity tedy můžeme popsat jako tuto množinu: |𝑞2⟩ ∈ Q2 := {𝛼|00⟩+ 𝛽|01⟩+ 𝛾|10⟩+ 𝛿|11⟩ | ‖𝛼‖2 + ‖𝛽‖2 + ‖𝛾‖2 + ‖𝛿‖2 = 1}. Kde vektory |00⟩, |01⟩, |10⟩ a |11⟩ tvoří ortonormální bázi prostoru dimenze čtyři nad polem C. |00⟩ = ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 ⎞⎟⎟⎟⎟⎟⎠ , |01⟩ = ⎛⎜⎜⎜⎜⎜⎝ 0 1 0 0 ⎞⎟⎟⎟⎟⎟⎠ , |10⟩ = ⎛⎜⎜⎜⎜⎜⎝ 0 0 1 0 ⎞⎟⎟⎟⎟⎟⎠ , |11⟩ = ⎛⎜⎜⎜⎜⎜⎝ 0 0 0 1 ⎞⎟⎟⎟⎟⎟⎠ Všimněme si zde "binárního"způsobu označení vektorů kanonické báze. Neboli vektor mající na nultém místě (indexujeme od nuly) číslo 1 a na ostatních nuly, značíme binárně nula. Vektor mající na prvním místě číslo jedna, a všude jinde nuly, značíme binárně jedna a tak dále. Toto označení, nám přijde vhod, obzvláště s přihlédnutím k fungování tenzorového součinu. 22 2 Základy kvantového počtu 2.1 Měření stavů Prozatím jsme byli schopni klást qubity do paralely s bity v klasické informatice. Nyní se však budeme věnovat problému měření kvantových stavů. U tradičních bitů je měření, něco nad čím se příliš nepozastavujeme. Pokud hodnotu bitu zjistíme, ta zůstává stejná a jeho stav se nemění. Avšak zde máme první důvod qubity nazývat kvantovými bity. A to proto, že stav qubitu může být libovolný mezi |0⟩ a |1⟩. Takže mluvíme o hodnotě pravděpodobnosti, že qubit při měření zkolabuje do jednoho ze stavů, a my tuto hodnotu naměříme. Tuto dualitu můžeme nejlépe chápat jako paralelu s fyzikálním Youngovým pokusem. Tedy že chování elektronů se mění v závislosti na tom, jestli jsou a nebo nejsou při průchodu štěrbinami pozorování. Označme kolaps obecného stavu |𝑞⟩ do stavu |𝑥⟩ jako ↦→. Pak pravděpodobnost, že obecný kvantový stav reprezentovaný qubitem |𝑞⟩ při měření zkolabuje do stavu |𝑥⟩, určíme následovně: 𝑃 (|𝑞⟩ ↦→ |𝑥⟩) = ‖⟨𝑥|𝑞⟩‖2 Pokud si vezmeme libovolnou ortonormální bázi C2 prostoru qubitů: {|𝑥1⟩, |𝑥2⟩} oproti které budeme měřit stav |𝑞⟩, naměříme příslušné prvky báze s následujícími pravděpodobnostmi: 𝑃 (𝑥1) = 𝑃 (|𝑞⟩ ↦→ |𝑥1⟩) = ‖⟨𝑥1|𝑞⟩‖2 𝑃 (𝑥2) = 𝑃 (|𝑞⟩ ↦→ |𝑥2⟩) = ‖⟨𝑥2|𝑞⟩‖2 2∑︁ 𝑗=1 𝑃 (𝑥𝑗) = 1 Uveďme příklad pro objasnění: |𝑎⟩ = 1√ 30 · ⎛⎝2 + 3𝑖 −4 + 𝑖 ⎞⎠ ∼ |𝑎⟩ = 2 + 3𝑖√ 30 |0⟩ + −4 + 𝑖√ 30 |1⟩. Měření pro bázi {|0⟩, |1⟩} pomocí zápisu vektorů po složkách: 𝑃 (|𝑎⟩ ↦→ |0⟩) = ‖⟨0|𝑎⟩‖2 = ⃦⃦⃦⃦ ⃦⃦(1, 0) 1√ 30 ⎛⎝2 + 3𝑖 −4 + 𝑖 ⎞⎠⃦⃦⃦⃦⃦⃦ 2 = ⃦⃦⃦⃦ ⃦2 + 3𝑖√ 30 ⃦⃦⃦⃦ ⃦ 2 = ‖2 + 3𝑖‖2 30 = 13 30 𝑃 (|𝑎⟩ ↦→ |1⟩) = ‖⟨1|𝑎⟩‖2 = ⃦⃦⃦⃦ ⃦⃦(0, 1) 1√ 30 ⎛⎝2 + 3𝑖 −4 + 𝑖 ⎞⎠⃦⃦⃦⃦⃦⃦ 2 = ⃦⃦⃦⃦ ⃦−4 + 𝑖√ 30 ⃦⃦⃦⃦ ⃦ 2 = ‖ − 4 + 𝑖‖2 30 = 17 30 . 23 Za pomoci Diracovy notace: 𝑃 (|𝑎⟩ ↦→ |0⟩) = ⃦⃦⃦ ⟨0| (︁ 2+3𝑖√ 30 |0⟩ + −4+𝑖√ 30 |1⟩ )︁⃦⃦⃦2 = ⃦⃦⃦⃦ ⃦2 + 3𝑖√ 30 ⟨0|0⟩+ −4 + 𝑖√ 30 ⟨0|1⟩ ⃦⃦⃦⃦ ⃦ 2 = ⃦⃦⃦⃦ ⃦2 + 3𝑖√ 30 · 1 + −4 + 𝑖√ 30 · 0 ⃦⃦⃦⃦ ⃦ = ⃦⃦⃦⃦ ⃦2 + 3𝑖√ 30 ⃦⃦⃦⃦ ⃦ 2 = ‖2 + 3𝑖‖2 30 = 13 30 𝑃 (|𝑎⟩ ↦→ |1⟩) = ⃦⃦⃦ ⟨1| (︁ 2+3𝑖√ 30 |0⟩ + −4+𝑖√ 30 |1⟩ )︁⃦⃦⃦2 = ⃦⃦⃦⃦ ⃦2 + 3𝑖√ 30 ⟨1|0⟩+ −4 + 𝑖√ 30 ⟨1|1⟩ ⃦⃦⃦⃦ ⃦ 2 = ⃦⃦⃦⃦ ⃦2 + 3𝑖√ 30 · 0 + −4 + 𝑖√ 30 · 1 ⃦⃦⃦⃦ ⃦ = ⃦⃦⃦⃦ ⃦−4 + 𝑖√ 30 ⃦⃦⃦⃦ ⃦ 2 = ‖ − 4 + 𝑖‖2 30 = 17 30 . Měření se za pomoci Diracovy notace, zdá být zdlouhavější. Ale to pouze proto, že je pro názornost postup rozepsáno krok po kroku. Pokud ale máme qubit zapsaný za pomoci báze kterou měříme, můžeme jednoduše využít její ortonormality. Tedy pokud bychom obecný qubit zapsali jako: |𝑞⟩ = 𝛼|0⟩+ 𝛽|1⟩ , ‖𝛼‖2 + ‖𝛽‖2 = 1. Pak díky postupu výše vidíme, že: 𝑃 (|𝑞⟩ ↦→ |0⟩) = ‖𝛼‖2 𝑃 (|𝑞⟩ ↦→ |1⟩) = ‖𝛽‖2. Měření pro bazi {|+⟩, |-⟩} pomocí zápisu vektorů po složkách: 𝑃 (|𝑎⟩ ↦→ |+⟩) = ‖⟨+|𝑎⟩‖2 = ⃦⃦⃦⃦ ⃦⃦( 1√ 2 , 1√ 2 ) 1√ 30 ⎛⎝2 + 3𝑖 −4 + 𝑖 ⎞⎠⃦⃦⃦⃦⃦⃦ 2 = = ⃦⃦⃦⃦ ⃦(2 + 3𝑖) + (−4 + 𝑖)√ 2 · 30 ⃦⃦⃦⃦ ⃦ 2 = ‖ − 2 + 4𝑖‖2 60 = 20 60 = 1 3 𝑃 (|𝑎⟩ ↦→ |-⟩) = ‖⟨-|𝑎⟩‖2 = ⃦⃦⃦⃦ ⃦⃦( 1√ 2 , −1√ 2 ) 1√ 30 ⎛⎝2 + 3𝑖 −4 + 𝑖 ⎞⎠⃦⃦⃦⃦⃦⃦ 2 = = ⃦⃦⃦⃦ ⃦(2 + 3𝑖)− (−4 + 𝑖)√ 2 · 30 ⃦⃦⃦⃦ ⃦ 2 = ‖6 + 2𝑖‖2 60 = 40 60 = 2 3 2.2 Blochovsky podobné vektory Z toho jak jsme výše popsali měření qubitů, je patrné, že měření rozhodně není jednoznačné. Rovnou uveďme ilustrační příklad. Vektory |0⟩ a √ 2 2 (1+ 𝑖)|0⟩ rozhodně nejsou totožné, naměříme však pravděpodobnost vzájemného kolapsu 1: ‖⟨0| √ 2 2 (1+𝑖)|0⟩‖2 = ‖ √ 2 2 (1+𝑖)⟨0|0⟩‖2 = ‖ √ 2 2 (1+𝑖)·1‖2 = √ 2 2 (1+𝑖) √ 2 2 (1−𝑖) = 1. 24 Uvažujme tedy nad tím, zda by mohlo měření kvantových stavů dělit prostor qu- bitů do tříd ekvivalence. Prostor, který je pak tvořen zástupci těchto tříd nazvěme Blochovou sférou, přičemž zástupce můžeme vyjádřit ve tvaru: |𝜓⟩ = cos( 𝜃2 ) |0⟩ + 𝑒𝑖𝜑 sin( 𝜃2 ) |1⟩ 𝜃 ∈ [0, 𝜋], 𝜑 ∈ [0, 2𝜋]. Blochově sféře jako takové se budeme věnovat ještě o kapitolu později,nyní se však pokusme popsat důvod její existence. Začněme rovnou tvrzením, že vektory jsou na Blochově sféře rozeznatelné za pomoci vzájemného měření. Myšleno ve smyslu, že jediná dvojice vektorů u které naměřím pravděpodobnost kolapsu 1, je dvojice totožných vektorů. Avšak toto rozhodně neplatí pro celý prostor qubitů. Uvažujme tedy množinu všech takových vektorů, které kolabují k pevně zvole- nému vektoru |𝑞⟩ s pravděpodobností 1: I𝑞 := {︂ |𝑝⟩ ∈ Q : ‖⟨𝑝|𝑞⟩‖2 = 1 }︂ . Taková množina vždy obsahuje minimálně generující prvek |𝑞⟩, jak ale zjistíme záhy, není to prvek jediný. Dále definujme množinu Λ𝑞 pro každý vektor |𝑞⟩ jako množinu všech vektorů, které jsou na něj kolmé, následovně: Λ𝑞 := {︂ |𝜆⟩ ∈ Q : ‖⟨𝜆|𝑞⟩‖2 = 0 }︂ . Zaveďme označení, že vektory |𝑝⟩ a |𝑞⟩ jsou si Blochovsky podobné jestliže nejsou rozeznatelné za pomoci měření jejich skalárního součinu neboli: ‖⟨𝑝|𝑞⟩‖2 = 1 Což také znamená: I𝑝 = I𝑞 Nyní uveďme tvrzení, že vektory si jsou Blochovsky podobné mají-li stejné množiny Λ. Lemma 1 (Parametrizace Λ𝑞). Pro každý qubity |𝑞⟩ = 𝑞1|0⟩+𝑞2|1⟩ můžeme sestrojit Λ𝑞 s následující parametrizací: Λ𝑞 = ⎧⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎩ {︂⎛⎜⎝𝑘𝑡 𝑡 ⎞⎟⎠ = |𝜆⟩, ‖𝑘‖2‖𝑡‖2 + ‖𝑡‖2 = 1 𝑘 = − 𝑞2 𝑞1 , 𝑡 ∈ C }︂ 𝑞1 ̸= 0 {︂⎛⎜⎝𝑡 0 ⎞⎟⎠ = |𝜆⟩, 𝑡 ∈ C ∧ ‖𝑡‖2 = 1 }︂ 𝑞1 = 0. Důkaz. Zaměřme se na popis množin Λ pomocí zápisu: ‖⟨𝜆|𝑞⟩‖2 = 0. 25 Je asi zřejmé, že pokud má být norma komplexního čísla rovna nule, musí oním komplexním číslem být právě nula. Zápis tedy můžeme zjednodušit na : ⟨𝜆|𝑞⟩ = 0. A nyní tento zápis rozepišme podrobně. ⟨𝜆|𝑞⟩ = 0(︁ 𝜆1 𝜆2 )︁⎛⎝𝑞1 𝑞2 ⎞⎠ = 0 𝜆1𝑞1 + 𝜆2𝑞2 = 0 Pokud 𝑞1 ̸= 0 : 𝜆1𝑞1 = −𝜆2𝑞2 ⇒ 𝜆1 = −𝑞2 𝑞1 𝜆2 Pokud 𝑞1 = 0 : 𝜆2𝑞2 = 0⇒ 𝜆2 = 0 ∧ 𝜆1 ∈ C : ‖𝜆1‖ = 1 Máme tedy parametrický předpis pro to, jak vypadá množina Λ𝑞 s jedním komplex- ním parametrem. Tím je důkaz kompletní. Lemma 1. Všechny vektory |𝑝⟩, pro které platí: Λ𝑝 = Λ𝑞, můžeme vyjádřit za pomoci vektoru |𝑞⟩ = 𝑞1|0⟩+ 𝑞2|1⟩ následovně: |𝑝⟩ = ⎧⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎩ ⎛⎜⎝ 𝑙 𝑠𝑙 ⎞⎟⎠ , 𝑠 = 𝑞2 𝑞1 , 𝑙 ∈ C ‖𝑠‖2‖𝑙‖2 + ‖𝑙‖2 = 1 𝑞1 ̸= 0⎛⎜⎝0 𝑙 ⎞⎟⎠ , 𝑙 ∈ C, ‖𝑙‖2 = 1 𝑞1 = 0 Důkaz. Předpokládejme tedy Λ𝑞 = Λ𝑝 a vyjádřeme všechny vektory |𝑝⟩, které by takovou Λ𝑝 generovali, v závislosti na vektoru |𝑞⟩. Pokud 𝑞1 ̸= 0 : ⟨𝜆|𝑝⟩ = 0(︁ − 𝑞2 𝑞1 𝑡 𝑡 )︁⎛⎝𝑝1 𝑝2 ⎞⎠ = 0 −𝑞2 𝑞1 𝑡𝑝1 + 𝑡𝑝2 = 0 𝑡 ̸= 0 −𝑞2 𝑞1 𝑝1 + 𝑝2 = 0⇒ 𝑝2 = 𝑞2 𝑞1 𝑝1 26 Pro ostatní případy pak: Pokud 𝑞1 = 0 : ⟨𝜆|𝑝⟩ = 0(︁ 𝑡 0 )︁⎛⎝𝑝1 𝑝2 ⎞⎠ = 0 𝑡𝑝1 + 0𝑝2 = 0⇒ 𝑡𝑝1 = 0⇒ 𝑝1 = 0 Čímž je lemma dokázáno. Věta 1 (Dvojitá kolmost). Vektory |𝑝⟩ a |𝑞⟩ mají totožné množiny Λ, právě tehdy když, mají totožné množiny I. Λ𝑝 = Λ𝑞 ⇐⇒ I𝑝 = I𝑞. Důkaz. Za předpokladu Λ𝑝 = Λ𝑞, máme z lemma výše parametrický vztah mezi |𝑝⟩ a |𝑞⟩. Rozveďme tedy detailněji jejich vzájemné měření|⟨𝑝|𝑞⟩|2. 𝑞1 = 0, 𝑝1 = 0 : ‖⟨𝑝|𝑞⟩‖2 = ⟨𝑝|𝑞⟩⟨𝑞|𝑝⟩ = (︁ 0 𝑝2 )︁⎛⎝ 0 𝑞2 ⎞⎠(︁0 𝑞2 )︁⎛⎝ 0 𝑝2 ⎞⎠ = 𝑝2𝑞2𝑝2𝑞2 = 𝑝2𝑝2 · 𝑞2𝑞2 = 1 𝑞1 ̸= 0, 𝑝2 = 𝑞2 𝑞1 𝑝1 ⇒ 𝑝2 = 𝑞2 𝑞1 𝑝1 = 𝑞2 𝑞1 𝑝1 : |⟨𝑝|𝑞⟩|2 = ⟨𝑝|𝑞⟩⟨𝑝|𝑞⟩ = ⟨𝑝|𝑞⟩⟨𝑞|𝑝⟩ = (︁ 𝑝1 𝑞2 𝑞1 𝑝1 )︁⎛⎝𝑞1 𝑞2 ⎞⎠(︁𝑞1 𝑞2 )︁⎛⎝ 𝑝1 𝑞2 𝑞1 𝑝1 ⎞⎠ = (︁ 𝑝1𝑞1 + 𝑞2𝑞2 𝑞1 𝑝1 )︁(︁ 𝑞1𝑝1 + 𝑞2𝑞2 𝑞1 𝑝1 )︁ = ‖𝑝1‖2‖𝑞1‖2 + 2‖𝑞2‖2‖𝑝1‖2 + ‖𝑞2‖4 ‖𝑞1‖2‖𝑝1‖2 = ‖𝑝1‖2 ‖𝑞1‖2 (︁ ‖𝑞1‖4 + 2‖𝑞1‖2‖𝑞2‖2 + ‖𝑞2‖4 )︁ = ‖𝑝1‖2 ‖𝑞1‖2 (︁ ‖𝑞1‖2 + ‖𝑞2‖2 )︁2 = ‖𝑝1‖2 ‖𝑞1‖2 Nyní ukažme, že výraz ‖𝑝1‖2 ‖𝑞1‖2 je roven jedné. K tomu využijeme vztah odvozený výše 27 𝑝2 = 𝑞2 𝑞1 𝑝1 a fakt, že vektory |𝑝⟩ |𝑞⟩ reprezentují qubity, a jsou tedy normované. 1− ‖𝑝1‖2 = ‖𝑝2‖2 = ⃦⃦⃦⃦ 𝑞2 𝑞1 𝑝1 ⃦⃦⃦⃦2 1− ‖𝑝1‖2 = ‖𝑞2‖2 ‖𝑞1‖2‖𝑝1‖2 1 = ‖𝑞2‖2‖𝑝1‖2 ‖𝑞1‖2 + ‖𝑝1‖2 = ‖𝑞2‖2‖𝑝1‖2 ‖𝑞1‖2 + ‖𝑝1‖2 1 = (1− ‖𝑞1‖2)‖𝑝1‖2 ‖𝑞1‖2 + ‖𝑝1‖2 = ‖𝑝1‖2 ‖𝑞1‖2 −‖𝑞1‖2‖𝑝1‖2 ‖𝑞1‖2 + ‖𝑝1‖2 1 = ‖𝑝1‖2 ‖𝑞1‖2 − ‖𝑝1‖2 + ‖𝑝1‖2 = ‖𝑝1‖2 ‖𝑞1‖2 A tím je věta dokázána. Povšimněme si, že díky parametrizaci 𝑝2 = 𝑞2 𝑞1𝑝1, kterou můžeme přepsat na 𝑝2 𝑝1 = 𝑞2 𝑞1 , máme jasně definovaný deskriptor třídy ekvivalence, ve smyslu měření skalárním součinem. A to právě onen poměr 𝑞2 𝑞1 který jasně definuje tyto množiny, až na výjimku kdy 𝑞1 = 0. Pro tento případ tedy zaveďme arbitrární značení ∞. Tedy máme jednoduchý způsob, jak určit, zda jsou si vektory Blochovsky podobné. Věta 1 (Zaplněnost Blochovské sféry). Všechny možné třídy ekvivalence mají na Blochově sféře svého zástupce, a žádné jiné prvky, krom těchto zástupců Blochova sféra neobsahuje. Důkaz. Z vět a důkazů výše vidíme, že každou třídu ekvivalence můžeme dobře definovat pomocí koeficientu 𝑞2 𝑞1 = 𝛼 ∈ C∪∞. Který pokud upravíme, jak je dobrým zvykem, tak aby komplexní člen nebyl ve jmenovateli dostaneme výraz: 𝛼 = 𝑞2 𝑞1 = 𝑞2𝑞1 ‖𝑞1‖2 = 𝑞2𝑞1 ‖𝑞1‖2 ‖𝑞2𝑞1‖2 ‖𝑞2𝑞1‖2 = 𝑞2𝑞1 ‖𝑞2𝑞1‖2 ‖𝑞2𝑞1‖2 ‖𝑞1‖2 . Vidíme, že beze změny hodnoty koeficientu jsme ho z poměru dvou komplexních čísel transformovat do tvaru součinu jednoho normalizovaného komplexního čísla a jednoho kladného reálného koeficientu. Nyní uveďme konvenci zápisu obecného kvantového stavu reprezentovaného na Blochově sféře: |𝜓⟩ = cos( 𝜃2 ) |0⟩ + 𝑒𝑖𝜑 sin( 𝜃2 ) |1⟩ 𝜃 ∈ [0, 𝜋], 𝜑 ∈ [0, 2𝜋]. a vytvořme pro něj koeficient Blochovsky podobných vektorů. Po úpravách dosta- neme: 𝜓2 𝜓1 = 𝑒𝑖𝜑 sin( 𝜃 2 ) cos( 𝜃 2 ) = (cos𝜑+ 𝑖 sin𝜑) sin 𝜃 2 cos 𝜃 2 = (cos𝜑+ 𝑖 sin𝜑) tan 𝜃2 28 Našli jsme tedy kompatibilní tvar koeficientu. Díky tomu, že funkce tangens zobra- zuje interval ⟨0; 𝜋2 ⟩ na interval ⟨0;∞⟩, máme pokrytý celý rozsah reálného parametru výše. Máme tedy jasně ukázanou platnost toho, že pro každý prvek Blochovy sféry existuje právě jedna množina I𝜓, a opačně. Pro úplnost poukažme ještě na následu- jící výjimky. Kdy 𝑞1 = 0 pak 𝛼 =∞ a množinu Blochovsky podobných vektorů nám na Blochově sféře zastupuje vektor |1⟩. Podobně v případě kdy 𝑞2 = 0 pak 𝛼 = 0 a vektor jež na Blochově sféře zastupuje množinu Blochovsky podobných vektorů je |0⟩. Koncem této kapitoly se sluší podotknout, že byť tomuto faktu nebývá často věnována pozornost. Je důležité při návrhu kvantových algoritmů dbát na to aby výstupní stavy, kterými chceme reprezentovat různé výsledky, nebyli Blochovsky podobné. 2.3 Vizuální reprezentace Blochovy sféry Už několikrát jsme narazili na to jaký objekt qubity tvoří a jak ho znázornit. Vzhle- dem k tomu, že nemáme mimo jiné nulový prvek nemohou qubity tvořit kompletní vektorový prostor, jsou pouze podmnožinou prostoru C 2𝑛 (kde n je rozměr qubitu). Proto přicházíme se zápisem jednotlivých kvantových stavů ve formátu: |𝜓⟩ = cos( 𝜃2 ) |0⟩ + 𝑒𝑖𝜑 sin( 𝜃2 ) |1⟩ Kde 𝜑 ∈ [0, 2𝜋] popisuje relativní fázi kvantového stavu a 𝜃 ∈ [0, 𝜋] určuje pravdě- podobnost naměření kanonických stavů|0⟩, |1⟩. Tedy : 𝑃 (|𝜓⟩ ↦→ |0⟩ = cos( 𝜃2 )2 𝑃 (|𝜓⟩ ↦→ |1⟩ = sin( 𝜃2 )2 Díky vyjádření všech měřením rozeznatelných qubitů za pomoci dvou parametrů, můžeme množinu pozorovatelných kvantových stavů vyjádřit jako dvouparametric- kou plochu v trojrozměrném prostoru. Jak už název napovídá Blochova sféra je sféra: B := {(𝑥, 𝑦, 𝑧)𝑇 ∈ R3 | 𝑥2 + 𝑦2 + 𝑧2 = 1} na niž můžeme každému reprezentantu třídy ekvivalence prostoru qubitu přiřadit právě jeden bod. A to následovně: �⃗� = ⎛⎜⎜⎝ sin(𝜃) cos(𝜑) sin(𝜃) sin(𝜑) cos(𝜃) ⎞⎟⎟⎠ 29 Obr. 2.1: Vizualizace Blochovy sféry, v programu GeoGebra Naše známé vektory pak zobrazujeme takto: |0⟩ : 𝜃 = 0 𝜑 = libovolné ⎛⎜⎜⎝ 0 0 1 ⎞⎟⎟⎠ |1⟩ : 𝜃 = 𝜋 𝜑 = libovolné ⎛⎜⎜⎝ 0 0 −1 ⎞⎟⎟⎠ |+⟩ : 𝜃 = 𝜋 2 𝜑 = 0 ⎛⎜⎜⎝ 1 0 0 ⎞⎟⎟⎠ |−⟩ : 𝜃 = 𝜋 2 𝜑 = 𝜋 ⎛⎜⎜⎝ −1 0 0 ⎞⎟⎟⎠ |+ 𝑖⟩ : 𝜃 = 𝜋 2 𝜑 = 𝜋 2 ⎛⎜⎜⎝ 0 1 0 ⎞⎟⎟⎠ | − 𝑖⟩ : 𝜃 = 𝜋 2 𝜑 = 3𝜋 2 ⎛⎜⎜⎝ 0 −1 0 ⎞⎟⎟⎠ Na Blochově sféře je pak dobře viditelné kolabování qubitu při měření. Protože ho zde reprezentujeme jednoduchým pootočením. Což nám dává možnost vizuálně reprezentovat i fenomén superpozice. Tedy kdy stav leží mezi dvěma stavy a kolabuje do jednoho z nich až při měření. Přičemž toto vidíme právě na úhlech, které spolu vektory na Blochově sféře svírají. Všimněme si, že existence Blochovy sféry je odůvodněna pouze způsobem za- vedení měření qubitů. Což nám tedy vysvětluje proč je Blochova sféra v literatuře používána jako množina všech pozorovatelných kvantových stavů. Jestliže existují i 30 jiné kvantové stavy než ty na Blochově sféře, stejně při měření splynou s některým, který na ni je. Jsou tedy pozorováním neodlišitelné. 2.4 Logické brány Pokud jsme se zatím věnovali způsobu zápisu kvantových stavů z důvodu abychom na nim mohli stavět algoritmy, je na místě se nyní zaměřit na hlavní hybatele oněch algoritmů. Obdobně chceme-li klasické bity využít k výpočtu, musíme je nechat pro- jít systémem logických bran, tak i my používáme kvantové logické brány. Tyto brány jsou obyčejnými zobrazeními z prostoru qubitů zpět do prostoru qubitů. Tedy přiro- zeně, tak jako chápeme qubity jako vektory, můžeme tyto brány chápat jako matice transformací. Ovšem máme zde pár omezení pro to aby nám jejich transformace dávaly smysl. Tedy hlavně to, že matice musí být unitární. Unitární matice Unitární maticí rozumíme jakoukoli čtvercovou matici, nad komplexními čísly, pro kterou platí: 𝑈 × 𝑈 † = 1, kde 1 je maticí identity, přesněji: 1 := [𝑙]𝑖𝑗 𝑙𝑖𝑗 = ⎧⎪⎨⎪⎩1 𝑖 = 𝑗 0 𝑖 ̸= 𝑗 𝑖, 𝑗 = 1, · · · , 𝑛 | 𝑛 = 𝑑𝑖𝑚(1). Značením † v horním indexu matice transformace pak rozumíme matici Hermitovsky sdruženou. Což je matice transponovaná a komplexně sdružená k matici výchozí. Neboli: 𝐴 = ⎛⎜⎜⎜⎝ 𝑎00 · · · 𝑎0𝑛 ... . . . ... 𝑎𝑛0 · · · 𝑎𝑛𝑛 ⎞⎟⎟⎟⎠ , 𝐴† = 𝐴𝑇 = ⎛⎜⎜⎜⎝ 𝑎00 · · · 𝑎𝑛0 ... . . . ... 𝑎0𝑛 · · · 𝑎𝑛𝑛 ⎞⎟⎟⎟⎠ = ⎛⎜⎜⎜⎝ 𝑎00 · · · 𝑎𝑛0 ... . . . ... 𝑎0𝑛 · · · 𝑎𝑛𝑛 ⎞⎟⎟⎟⎠ . Tato vlastnost nám zaručí, že při transformacích neopustíme prostor qubitů. Obecně je pak můžeme říci, že každá unitární matice, je i maticí ortonormální. Ukažme, že definice unitární matice: 𝐴× 𝐴† = 1 | 1 := ∑︁ 𝑖∈𝐼 |𝑖⟩⟨𝑖|, (2.1) přímo implikuje následující vlastnosti: a) Pro všechny řádky matice platí, že jejich eukleidovská norma je rovná 1. b) Všechny řádky jsou, brány jako vektory, na sebe kolmé. 31 Toto odvoďme přímo roznásobením matic: 𝐴 = ∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 𝑎𝑖𝑗|𝑖⟩⟨𝑗| 𝐴† = ∑︁ 𝑠∈𝐼 ∑︁ 𝑡∈𝐼 𝑎𝑠𝑡|𝑡⟩⟨𝑠|. 𝐴× 𝐴† = 1 = (︁∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 𝑎𝑖𝑗|𝑖⟩⟨𝑗| )︁ × (︁∑︁ 𝑠∈𝐼 ∑︁ 𝑡∈𝐼 𝑎𝑠𝑡|𝑡⟩⟨𝑠| )︁ (2.2) = ∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 [︁ 𝑎𝑖𝑗|𝑖⟩⟨𝑗| ∑︁ 𝑠∈𝐼 ∑︁ 𝑡∈𝐼 𝑎𝑠𝑡|𝑡⟩⟨𝑠| ]︁ (2.3) = ∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 ∑︁ 𝑠∈𝐼 ∑︁ 𝑡∈𝐼 𝑎𝑖𝑗|𝑖⟩⟨𝑗|𝑎𝑠𝑡|𝑡⟩⟨𝑠| (2.4) = ∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 ∑︁ 𝑠∈𝐼 ∑︁ 𝑡∈𝐼 𝑎𝑖𝑗𝑎𝑠𝑡|𝑖⟩⟨𝑗|𝑡⟩⟨𝑠| (2.5) = ∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 ∑︁ 𝑠∈𝐼 ∑︁ 𝑡∈𝐼 𝑎𝑖𝑗𝑎𝑠𝑗|𝑖⟩⟨𝑗|𝑗⟩⟨𝑠| (2.6) = ∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 ∑︁ 𝑠∈𝐼 𝑎𝑖𝑗𝑎𝑠𝑗|𝑖⟩⟨𝑠| (2.7) (2.2) ↦→ (2.3) ↦→ (2.4) : Distributivita maticového součinu. (2.4) ↦→ (2.5) : Komutativita násobení skalárem. (2.5) ↦→ (2.6) : Mějme ortonormální bázi, indexovanou množinou indexů 𝐼 pak : ∀𝑗, 𝑠 ∈ 𝐼 : ⟨𝑗|𝑠⟩ = 0 ↔ 𝑗 ̸= 𝑠 Tedy vyřazujeme všechny takové sčítance, které jsou nulové, a nahrazujeme index 𝑠 značením 𝑗. (2.6) ↦→ (2.7) : Využijeme vlastnosti normality báze, a veškeré ⟨𝑗|𝑗⟩ nahradíme 1, kterou pak můžeme při násobení zanedbat. Následně také odebereme přebytečné sčítání přes, již sečtený index. 1 = ∑︁ 𝑖∈𝐼 |𝑖⟩⟨𝑖| = ∑︁ 𝑖∈𝐼 ∑︁ 𝑗∈𝐼 ∑︁ 𝑠∈𝐼 𝑎𝑖𝑗𝑎𝑠𝑗|𝑖⟩⟨𝑠| → ∀𝑖, 𝑠 ∈ 𝐼 ∧ 𝑖 = 𝑠 : ∑︁ 𝑠∈𝐼 ∑︁ 𝑗∈𝐼 𝑎𝑠𝑗𝑎𝑠𝑗|𝑠⟩⟨𝑠| = ∑︁ 𝑖∈𝐼 |𝑖⟩⟨𝑖| ⇒ ∀𝑠 ∈ 𝐼 : ∑︁ 𝑗∈𝐼 𝑎𝑠𝑗𝑎𝑠𝑗 = ⟨𝑎𝑠 :|𝑎𝑠 :⟩ = ‖𝑎𝑠 :‖2 = 1 𝑎) ⇒ ∀𝑖, 𝑠 ∈ 𝐼 ∧ 𝑖 ̸= 𝑠 : ∑︁ 𝑗∈𝐼 𝑎𝑖𝑗𝑎𝑠𝑗 = ∑︁ 𝑗∈𝐼 𝑎𝑠𝑗𝑎𝑖𝑗 = ⟨𝑎𝑠 :|𝑎𝑖 :⟩ = 0 𝑏) Přičemž, pro dokázání výroků a) a b) pro sloupce místo řádků provedeme stejný důkazový postup, jen s obraceným pořadím násobení. Což můžeme protože: 𝐴× 𝐴† = 1 𝐴× 𝐴† × 𝐴 = 𝐴 𝐴−1 × 𝐴× 𝐴† × 𝐴 = 𝐴−1 × 𝐴 = 1 ⇒ 𝐴× 𝐴† = 𝐴† × 𝐴 = 1. 32 2.4.1 Brány na 1-qubitech Nyní tedy už můžeme uvést základní brány, tedy takové transformace jež mají smysl na jednom qubitu. Bránu NOT zapíšeme jako: 𝜎𝑥 := ⎛⎝0 1 1 0 ⎞⎠ = |0⟩⟨1|+ |1⟩⟨0|. A používáme takto:⎛⎝0 1 1 0 ⎞⎠⎛⎝1 0 ⎞⎠ = ⎛⎝0 1 ⎞⎠ ∼ 𝜎𝑥|0⟩ = (︁ |0⟩⟨1|+ |1⟩⟨0| )︁ |0⟩ = |0⟩⟨1|0⟩+ |1⟩⟨0|0⟩ = |1⟩ Pokud se pak podíváme na reprezentaci qubitů za pomoci Blochovy sféry, všimneme si, že při aplikaci 𝜎𝑥 dochází k rotaci okolo X-ové osy o 𝜋. Můžeme tedy uvést další brány, které budou provádět obdobné rotace. 𝜎𝑧 := ⎛⎝1 0 0 −1 ⎞⎠ = |0⟩⟨0| − |1⟩⟨1|. Je rotací okolo z o 𝜋, nebo také přehození fáze, tedy přechod od |+⟩ k |−⟩ a zpět. 𝜎𝑧|+⟩ = (|0⟩⟨0| − |1⟩⟨1|) √ 2 2 (|0⟩+ |1⟩) = √ 2 2 [︁ |0⟩⟨0|0⟩ − |1⟩⟨1|0⟩+ |0⟩⟨0|1⟩ − |1⟩⟨1|1⟩ ]︁ = √ 2 2 [︁ |0⟩1− |1⟩0 + |0⟩0− |1⟩1 ]︁ = |−⟩ Rotaci okolo osy y, pak můžeme vyjádřit obdobně: 𝜎𝑦 := ⎛⎝0 −𝑖 𝑖 0 ⎞⎠ = 𝑖𝜎𝑥𝜎𝑦. Opět rotujeme o 𝜋 na Blochově sféře, měníme jak hodnotu bitu, tak i fáze a pře- cházíme od | + 𝑖⟩ k | − 𝑖⟩ a zpět. Speciální pozornost si pak zaslouží brána zvaná Hadamardova, tato brána nám totiž slouží nejen k přechodu mezi bázemi {|0⟩, |1⟩} a {|+⟩, |−⟩}, ale také nám pomáhá tvořit reprezentaci takzvaného entaglmentu, jak uvidíme později. 𝐻 = √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ = √ 2 2 (︁ |0⟩⟨0|+ |0⟩⟨1|+ |1⟩⟨0| − |1⟩⟨1| )︁ . 33 Brány na 2-qubitech Typickým příkladem logické prány pro 2 bity je brána OR, tuto bránu však, ne- považujeme za bránu aplikovatelnou pro kvantové výpočty. Jednak nejde zapsat za pomoci matice, která by splňovala naše kritéria výše, a také protože při její aplikaci dochází ke ztrátě informace, chceme li dimenze. Proto používáme bránu CNOT, jež se dá slovy popsat jako kontrolovatelný exkluzivní OR, přičemž první z qubitů je bitem kontrolním, a druhý pak nese logický výsledek brány. CNOT pak zapisujeme takto: 𝐶𝑁𝑂𝑇 = ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 ⎞⎟⎟⎟⎟⎟⎠ = |00⟩⟨00|+ |01⟩⟨01|+ |10⟩⟨11|+ |11⟩⟨10| Působení CNOT brány, značené pomocí ⊕, pak můžeme vyjádřit i pomocí pravdi- vostní tabulky: input output x y x x ⊕ y 0 0 0 0 0 1 0 1 1 0 1 1 1 1 1 0 2.4.2 Entaglment Entaglment, už z překladu znamená provázanost, nebo zamotanost. A je to přesně ta vlastnost, která dělá kvantovou logiku zajímavou ke studiu. Obecně říkáme, že 2-qubit |𝜓⟩𝐴𝐵 reprezentuje entaglované stavy 𝐴 a 𝐵 , jestliže nemůže vzniknout součinem dvou qubitů: ∄|𝜑⟩𝐴, |𝜃⟩𝐵 ∈ Q : |𝜑⟩𝐴 × |𝜃⟩𝐵 = |𝜓⟩𝐴𝐵. Bellovy stavy Bellovými stavy rozumíme čtyři 2-qubity, které jsou maximálně entaglované, a tvoří vlastní bázi prostoru C 4. |𝜓00⟩ := √ 2 2 (|00⟩+ |11⟩) |𝜓01⟩ := √ 2 2 (|01⟩+ |10⟩) |𝜓10⟩ := √ 2 2 (|00⟩ − |11⟩) |𝜓11⟩ := √ 2 2 (|01⟩ − |10⟩) Obecný Bellův stav pak můžeme zapsat takto: |𝜓𝑖 𝑗⟩ = (︁ 1 ⨂︁ 𝜎𝑖𝑥𝜎 𝑗 𝑧 )︁ |𝜓00⟩ 34 Ukažme nyní využití Hadamardovy brány ke konstrukci Bellových stavů: |𝑖 𝑗⟩𝐴𝐵 |0 0⟩ |0 1⟩ |1 0⟩ |1 1⟩ 𝐻𝐴 ⨂︀ 1𝐵−−−−−→ (𝐻𝐴 ⨂︀ 1𝐵)|𝑖 𝑗⟩𝐴𝐵√ 2 2 (|0 0⟩+ |1 0⟩) √ 2 2 (|0 1⟩+ |1 1⟩) √ 2 2 (|0 0⟩ − |1 0⟩) √ 2 2 (|0 0⟩ − |1 0⟩) 𝐶𝑁𝑂𝑇𝐴 𝐵−−−−−−→ |𝜓𝑖 𝑗⟩ √ 2 2 (|0 0⟩+ |1 1⟩) = |𝜓0 0⟩ √ 2 2 (|0 1⟩+ |1 0⟩) = |𝜓0 1⟩ √ 2 2 (|0 0⟩ − |1 1⟩) = |𝜓1 0⟩ √ 2 2 (|0 1⟩ − |1 0⟩) = |𝜓1 1⟩ Přičemž operaci ⨂︀ chápeme jako tenzorové násobení matic následovně: 𝐻 = √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ 1 = ⎛⎝1 0 0 1 ⎞⎠ 𝐻 ⨂︁ 1 = ⎛⎝𝐻 · 1 𝐻 · 0 𝐻 · 0 𝐻 · 1 ⎞⎠ = √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 1 1 0 0 1 −1 0 0 0 0 1 1 0 0 1 −1 ⎞⎟⎟⎟⎟⎟⎠ nebo v Diracově notaci: 𝐻𝐴 ⨂︁ 1𝐵 = √ 2 2 (|0⟩⟨0|+ |0⟩⟨1|+ |1⟩⟨0| − |1⟩⟨1|)𝐴 ⨂︁ (|0⟩⟨0|+ |1⟩⟨1|)𝐵 = √ 2 2 (|0⟩𝐴|0⟩𝐵⟨0|𝐴⟨0|𝐵 + |0⟩𝐴|0⟩𝐵⟨1|𝐴⟨0|𝐵+ + |1⟩𝐴|0⟩𝐵⟨0|𝐴⟨0|𝐵 − |1⟩𝐴|0⟩𝐵⟨1|𝐴⟨0|𝐵+ + |0⟩𝐴|1⟩𝐵⟨0|𝐴⟨1|𝐵 + |0⟩𝐴|1⟩𝐵⟨1|𝐴⟨1|𝐵+ + |1⟩𝐴|1⟩𝐵⟨0|𝐴⟨1|𝐵 − |1⟩𝐴|1⟩𝐵⟨1|𝐴⟨1|𝐵) = √ 2 2 (|00⟩⟨00|+ |00⟩⟨10|+ |10⟩⟨00| − |10⟩⟨10|+ + |01⟩⟨01|+ |01⟩⟨11|+ |11⟩⟨01| − |11⟩⟨11|)𝐴𝐵. 35 3 Kvantové hry 3.1 Hry V matematice nechápeme hry v tradičním slova smyslu dětských her. Hra je z ma- tematického pohledu pevně stanovený systém pravidel a hodnocení stavů. Aktivní členy hry nazveme hráče, a jim umožníme konat pouze konkrétní akce neboli tahy. Soubor takových tahů provedených za sebou pak nazveme strategií. V rámci systému hodnocení stavu hry jsme pak u některých her schopni hledat optimální strategii. Vězňovo dilema Vězňovo dilema je jednoduchá hra pro dva hráče. Každý hráč má k dispozici pouze jeden možný tah. Tedy pro provedení obou dvou tahů hra končí. Název je zvolen podle analogie této hry vykreslované v podobě příběhu dvou podezřelých zločinců Adama a Barbory. Policie však nemá přímé důkazy, a proto potřebuje aspoň jed- noho přimět k výpovědi. Zločinci tak dostávají na výběr zradit toho druhého,a nebo nevypovídat.V případě, kdy Adam zradí Barboru ale ta se rozhodne nevypovídat odchází Adam bez trestu do ochrany svědků, a Barbora dostává pět let vězení. S tím, že jednostranná zrada funguje symetricky, zradí-li tedy Barbora Adama i ona má možnost odejít bez trestu, a nechat Adama pět let ve vězení. Když se rozhodnou oba zradit odejdou každý s tříletým trestem, s přihlédnutím k tomu že spolupracovali s policií. Nakonec pokud nezradí ani jeden dostanou oba trest v rozsahu jednoho roku za kladení odporu při zatýkání. 1 Pokud bychom si zapsali tyto výstupy do tabulky dostaneme: Adam∖ Barbora Zradí Nezradí Zradí (3,3) (0,5) Nezradí (5,0) (1,1) Vidíme tedy, že pokud hráč nemá informace o tom, jak hraje protihráč nutně je logickou úvahou veden zvolit zradu. Má totiž při zradě celkem šanci na trojnásobné prodloužení trestu nebo prominutí. V případě mlčení pak pětinásobnou nebo běžnou délku trestu. Vidíme tedy, že motivací zavést to hry kvantování, je snaha zohlednit ve hře sociální hladinu vztahu mezi hráči. Což dosahujeme za pomoci entaglmentu. 1Chtěl bych pouze krátce podotknout, že tato práce se nezabývá morálkou takového právního systému, ani neklade důraz na realističnost ilustračního příběhu. 37 3.2 Kvantové vězňovo dilema V tradičním vězňovu dilematu musíme provést několik změn, abychom ho mohli nazývat kvantovým. Předně je třeba zavést proces entaglování, což je hlavní fak- tor definující rozdíly, mezi klasickou a kvantovou hrou. Ten provádíme za pomoci operátoru 𝐽 , kterým na začátku transformujeme stav hráčů. Přičemž stav hráčů re- prezentujeme 2-qubitem. Následně, necháme každého z hráčů, zahrát svoji strategii, za pomoci logické brány, kterou značíme 𝐴 respektive 𝐵. Konečně qubity odentaglu- jeme, pomocí Hermitovsky sdruženého operátoru 𝐽†, a měříme výsledek. Proces hry můžeme vyjádřit i diagramem: Tedy při zápisu celého procesu hry do tenzorových operací, dostaneme formuli, pro finální stav hry: |𝜓𝑓⟩ = 𝐽†(𝐴⊗𝐵)𝐽 |𝜓𝑖⟩. Kde |𝜓𝑖⟩ označuje počáteční stav a |𝜓𝑓⟩ stav finální ve formátu 2-qubitu. Nyní detailněji zaveďme operátor 𝐽 , tak abychom mohli regulovat míru entaglovanosti. 𝐽 = exp{𝑖𝛾2𝜎𝑥 ⊗ 𝜎𝑥} 𝛾 ∈ [0, 𝜋2 ] Přičemž význam matice v exponentu chápeme, v případě čtvercové matice, jako zo- becnění exponenciální funkce. A při použití Maclaurinova polynomu můžeme funkci přepsat do tvaru: exp{𝑋} = ∞∑︁ 𝑘=0 1 𝑘!𝑋 𝑘. 38 Díky tomuto poznatku pak můžeme lépe pracovat s operátorem 𝐽 jako s maticí. 𝐽 = exp{𝑖𝛾2𝜎𝑥 ⊗ 𝜎𝑥} = ∞∑︁ 𝑘=0 1 𝑘! ⎛⎝𝑖𝛾2 ⎛⎝0 1 1 0 ⎞⎠⊗ ⎛⎝0 1 1 0 ⎞⎠⎞⎠𝑘 = ∞∑︁ 𝑘=0 1 𝑘! ⎛⎜⎜⎜⎜⎜⎝𝑖 𝛾 2 ⎛⎜⎜⎜⎜⎜⎝ 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 ⎞⎟⎟⎟⎟⎟⎠ ⎞⎟⎟⎟⎟⎟⎠ 𝑘 = ∞∑︁ 𝑘 = 0 𝑘 − sudé 1 𝑘! (︁𝑖𝛾 2 )︁𝑘 ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ⎞⎟⎟⎟⎟⎟⎠+ ∞∑︁ 𝑘 = 0 𝑘 − liché 1 𝑘! (︁𝑖𝛾 2 )︁𝑘 ⎛⎜⎜⎜⎜⎜⎝ 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 ⎞⎟⎟⎟⎟⎟⎠ = ∞∑︁ 𝑘=0 1 2𝑘! (︁𝑖𝛾 2 )︁2𝑘 ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ⎞⎟⎟⎟⎟⎟⎠+ ∞∑︁ 𝑘=0 1 (2𝑘 + 1)! (︁𝑖𝛾 2 )︁(2𝑘+1) ⎛⎜⎜⎜⎜⎜⎝ 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 ⎞⎟⎟⎟⎟⎟⎠ = cos 𝛾2 ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ⎞⎟⎟⎟⎟⎟⎠+ 𝑖 sin 𝛾2 ⎛⎜⎜⎜⎜⎜⎝ 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 ⎞⎟⎟⎟⎟⎟⎠ . Kdy pro 𝛾 = 𝜋 2 dostáváme maximální entaglovanost. A tedy tvar operátoru 𝐽 : 𝐽 = √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 𝑖 0 1 𝑖 0 0 𝑖 1 0 𝑖 0 0 1 ⎞⎟⎟⎟⎟⎟⎠ . Naopak nulovou entaglovanost máme při 𝛾 = 0, kdy operátor 𝐽 nabývá tvaru: 𝐽 = ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ⎞⎟⎟⎟⎟⎟⎠ . Což je jasné, protože je to tvar matice identity. Jak už jsme komentovali výše, v kapitole logických bran, abychom lineární transformaci mohli za logickou bránu považovat, musí být unitární. Tedy všechny možné strategie pro Adama či Barboru můžeme obecně zapsat jako: 𝑈(𝜃, 𝛼, 𝛽) = ⎛⎝ 𝑒𝑖𝛼 cos 𝜃 2 𝑒𝑖𝛽 sin 𝜃 2 𝑒−𝑖𝛽 sin 𝜃 2 𝑒−𝑖𝛼 cos 𝜃 2 ⎞⎠ 𝜃 ∈ [0, 𝜋] , 𝛼, 𝛽 ∈ [−𝜋, 𝜋]. 39 Jako příklad vlivu parametru 𝜃 uvažujme všechny strategie 𝑈(𝜃, 0, 0). Ukažme, že popisují určitou kombinaci mezi přehozením bitu, a identickým zobrazením. Kdy míru pravděpodobnosti, zda dojde nebo nedojde ke změně stavu, určuje právě 𝜃: ⎛⎝cos 𝜃 2 sin 𝜃 2 sin 𝜃 2 cos 𝜃 2 ⎞⎠ |0⟩ = cos 𝜃2 |0⟩+ sin 𝜃2 |1⟩ = |𝑞⟩ ‖⟨0|𝑞⟩‖2 = ‖⟨0|(cos 𝜃2 |0⟩+ sin 𝜃2 |1⟩)‖ 2 = ‖⟨0| cos 𝜃2 |0⟩‖ 2 = ‖ cos 𝜃2‖ 2 = cos2 𝜃 2 ‖⟨1|𝑞⟩‖2 = ‖⟨0|(cos 𝜃2 |0⟩+ sin 𝜃2 |1⟩)‖ 2 = ‖⟨1| sin 𝜃2 |0⟩‖ 2 = ‖ sin 𝜃2‖ 2 = sin2 𝜃 2 . Z příkladu výše vidíme, že k přehození bitu dojde s pravděpodobností sin2 𝜃 2 a kom- plementárně pak s pravděpodobností cos2 𝜃 2 ke změně nedojde. Ze všech možných strategií se budeme zabývat třemi, a to: 𝑈(0, 0, 0), 𝑈(𝜋, 0, 0) a 𝑈(𝜋2 , 𝜋 2 , 0). Takže pokud bychom do hry vstupovali se stavem |00⟩ reprezento- vaným oboustrannou zradou, pak strategie 𝑈(0, 0, 0) = ⎛⎝1 0 0 1 ⎞⎠ je strategií zradit oponenta, strategie 𝑈(𝜋, 0, 0) = ⎛⎝0 1 1 0 ⎞⎠ je strategií nezradit oponenta, a strategie 𝑈(𝜋2 , 𝜋 2 , 0) = 𝑖 √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠, je strategií popisovanou jako Eisertův zázračný tah, který nám umožní naplno využít potenciálu entaglovanosti hráčů. Chceme-li nějak výsledek hry kvantifikovat, musíme použít tabulku trestů, s níž jsme ilustrovali, klasické vězňovo dilema. Tabulku reprezentujme maticí s prvky 𝑇𝑖,𝑗, například na pozici 𝑇0,1 bude trest pro hráče, který zradil, a zároveň zrazen nebyl. Tedy z konkrétního případu výše: 𝑇Adam = ⎛⎝3 0 5 1 ⎞⎠ , 𝑇Barbora = ⎛⎝3 5 0 1 ⎞⎠ . Strategie u kvantových her budeme hodnotit podobně jako u těch klasických. Chceme určit hodnotu rizika, jaké kvůli vybrané strategii podstupujeme. Takže vezmeme pravděpodobnost každého výstupu, znásobíme ji s jemu příslušným trestem, a tyto hodnoty sečteme. Takže pokud při Adamově strategii 𝐴, a Bářině strategii 𝐵, máme 40 výstup |𝜓𝑓⟩, pak riziko pro Adama určíme následovně: Riziko = 𝑇𝐴𝑑𝑎𝑚[00]‖⟨00|𝜓𝑓⟩‖2 + 𝑇𝐴𝑑𝑎𝑚[01]‖⟨01|𝜓𝑓⟩‖2 + 𝑇𝐴𝑑𝑎𝑚[10]‖⟨10|𝜓𝑓⟩‖2 + 𝑇𝐴𝑑𝑎𝑚[11]‖⟨11|𝜓𝑓⟩‖2 Vidíme tedy, že rizikovost Adamovi strategie, závisí nejen na strategii samotné, kte- rou si vybere, ale i na strategii Báry, která hru ovlivňuje stejně. Z toho pak vychází optimalizační postup za pomoci minimaxového kritéria. Kdy Adam si volí takovou strategii, která ho minimálně poškodí, v případě kdy Barbora zvolí strategii co mu uškodí maximálně. Adam tedy efektivně volí cestu nejmenšího zla, které na něm může být vykonáno. Dále se tedy budeme věnovat výhodnosti hráčovi strategie v závislosti na strategii protihráče. Rozepišme si tedy všechny možné kombinace strategií, které hráčům poskytujeme, a vytvořme pro mě logickou bránu hry. 𝐿 = 𝐴⊗𝐵 = ⎛⎝𝐴 ·𝐵[0,0] 𝐴 ·𝐵[0,1] 𝐴 ·𝐵[1,0] 𝐴 ·𝐵[1,1] ⎞⎠ = ⎛⎜⎜⎜⎜⎜⎝ 𝐴[0,0]𝐵[0,0] 𝐴[0,1]𝐵[0,0] 𝐴[0,0]𝐵[0,1] 𝐴[0,1]𝐵[0,1] 𝐴[1,0]𝐵[0,0] 𝐴[1,1]𝐵[0,0] 𝐴[1,0]𝐵[0,1] 𝐴[1,1]𝐵[0,1] 𝐴[0,0]𝐵[1,0] 𝐴[0,1]𝐵[1,0] 𝐴[0,0]𝐵[1,1] 𝐴[0,1]𝐵[1,1] 𝐴[1,0]𝐵[1,0] 𝐴[1,1]𝐵[1,0] 𝐴[1,0]𝐵[1,1] 𝐴[1,1]𝐵[1,1] ⎞⎟⎟⎟⎟⎟⎠ 1. Adam i Barbora zradí 2. Adam zradí Barboru, která kooperuje 3. Adam zradí Barboru, která hraje miracle strategii 4. Adam, který kooperuje, je zrazen Barborou 5. Adam i Barbora kooperují 6. Adam volí strategii kooperace a Barbora miracle strategii 7. Adam použije miracle strategii a je zrazen Barborou 8. Adam použije miracle strategii a Barbora kooperuje 9. Adam i Barbora použijí miracle strategii 41 𝐴 = ⎛⎝1 0 0 1 ⎞⎠ a 𝐵 = ⎛⎝1 0 0 1 ⎞⎠ , pak 𝐿1 = ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = ⎛⎝1 0 0 1 ⎞⎠ a 𝐵 = ⎛⎝0 1 1 0 ⎞⎠ , pak 𝐿2 = ⎛⎜⎜⎜⎜⎜⎝ 0 0 1 0 0 0 0 1 1 0 0 0 0 1 0 0 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = ⎛⎝1 0 0 1 ⎞⎠ a 𝐵 = 𝑖 √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ , pak 𝐿3 = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 1 0 1 0 0 1 0 1 1 0 −1 0 0 1 0 −1 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = ⎛⎝0 1 1 0 ⎞⎠ a 𝐵 = ⎛⎝1 0 0 1 ⎞⎠ , pak 𝐿4 = ⎛⎜⎜⎜⎜⎜⎝ 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = ⎛⎝0 1 1 0 ⎞⎠ a 𝐵 = ⎛⎝0 1 1 0 ⎞⎠ , pak 𝐿5 = ⎛⎜⎜⎜⎜⎜⎝ 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = ⎛⎝0 1 1 0 ⎞⎠ a 𝐵 = 𝑖 √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ , pak 𝐿6 = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 0 1 0 1 1 0 1 0 0 1 0 −1 1 0 −1 0 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = 𝑖 √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ a 𝐵 = ⎛⎝1 0 0 1 ⎞⎠ , pak 𝐿7 = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 1 1 0 0 1 −1 0 0 0 0 1 1 0 0 1 −1 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = 𝑖 √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ a 𝐵 = ⎛⎝0 1 1 0 ⎞⎠ , pak 𝐿8 = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 0 0 1 1 0 0 1 −1 1 1 0 0 1 −1 0 0 ⎞⎟⎟⎟⎟⎟⎠ 𝐴 = 𝑖 √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ a 𝐵 = 𝑖 √ 2 2 ⎛⎝1 1 1 −1 ⎞⎠ , 𝑝𝑎𝑘 𝐿9 = −1 2 ⎛⎜⎜⎜⎜⎜⎝ 1 1 1 1 1 −1 1 −1 1 1 −1 −1 1 −1 −1 1 ⎞⎟⎟⎟⎟⎟⎠ 42 Naším cílem je nyní pozorovat výsledky možných her v závislosti na parametru en- taglovanosti 𝛾. Proveďme tedy vyhodnocení her pro každý scénář 1-9, s ponecháním parametru 𝛾 jako neznámé, až k finálnímu stavu.|𝜓𝑓𝑘 ⟩ = 𝐽†𝐿𝑘𝐽 |00⟩ 𝑘 = 1, . . . , 9 |𝜓𝑓1⟩ = |00⟩ = ⎛⎜⎜⎜⎜⎜⎝ 1 0 0 0 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓2⟩ = |01⟩ = ⎛⎜⎜⎜⎜⎜⎝ 0 1 0 0 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓3⟩ = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ cos2 𝛾 2 − sin2 𝛾 2 0 1 −2𝑖 cos 𝛾 2 sin 𝛾 2 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓4⟩ = |10⟩ = ⎛⎜⎜⎜⎜⎜⎝ 0 0 1 0 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓5⟩ = |11⟩ = ⎛⎜⎜⎜⎜⎜⎝ 0 0 0 1 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓6⟩ = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 0 cos2 𝛾 2 − sin2 𝛾 2 −2𝑖 cos 𝛾 2 sin 𝛾 2 1 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓7⟩ = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ cos2 𝛾 2 − sin2 𝛾 2 1 0 −2𝑖 cos 𝛾 2 sin 𝛾 2 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓8⟩ = 𝑖 √ 2 2 ⎛⎜⎜⎜⎜⎜⎝ 0 −2𝑖 cos 𝛾 2 sin 𝛾 2 cos2 𝛾 2 − sin2 𝛾 2 1 ⎞⎟⎟⎟⎟⎟⎠ |𝜓𝑓9⟩ = −1 2 ⎛⎜⎜⎜⎜⎜⎝ 1 (cos 𝛾 2 − 𝑖 sin 𝛾 2 )2 (cos 𝛾 2 − 𝑖 sin 𝛾 2 )2 1 ⎞⎟⎟⎟⎟⎟⎠ Nyní proveďme zhodnocení jednotlivých her za pomoci výplatní funkce, chceme-li funkce trestu. Změřme tedy pravděpodobnosti, kolapsu finálních stavů k bázovým, a znásobme výsledky měření tresty z hráčovy tabulky postihů. Neboli: 𝑟𝑖𝑧𝑖𝑘𝑜𝑘 = 𝑇[00]‖⟨00|𝜓𝑓𝑘 ⟩‖2 + 𝑇[01]‖⟨01|𝜓𝑓𝑘 ⟩‖2 + 𝑇[10]‖⟨10|𝜓𝑓𝑘 ⟩‖2 + 𝑇[11]‖⟨11|𝜓𝑓𝑘 ⟩‖2, 43 kde 𝑘 = 1, . . . , 9 označuje index hry. Adamova rizika: riziko1 = 3‖⟨00|00⟩‖2 + 0‖⟨01|00⟩‖2 + 5‖⟨10|00⟩‖2 + 1‖⟨11|00⟩‖2 = 3 riziko2 = 3‖⟨00|01⟩‖2 + 0‖⟨01|01⟩‖2 + 5‖⟨10|01⟩‖2 + 1‖⟨11|01⟩‖2 = 0 riziko3 = 1 2(3(cos2 𝛾 2 − sin2 𝛾 2 )2 + 5 + 4 cos2 𝛾 2 sin2 𝛾 2 ) riziko4 = 3‖⟨00|10⟩‖2 + 0‖⟨01|10⟩‖2 + 5‖⟨10|10⟩‖2 + 1‖⟨11|10⟩‖2 = 5 riziko5 = 3‖⟨00|11⟩‖2 + 0‖⟨01|1⟩‖2 + 5‖⟨10|11⟩‖2 + 1‖⟨11|11⟩‖2 = 1 riziko6 = 1 2(5 · 4 cos2 𝛾 2 sin2 𝛾 2 + 1) riziko7 = 1 2(3(cos2 𝛾 2 − sin2 𝛾 2 )2 + 4 cos2 𝛾 2 sin2 𝛾 2 ) riziko8 = 1 2(5(cos2 𝛾 2 − sin2 𝛾 2 )2 + 1) riziko9 = 1 4(3 + 5(cos2 𝛾 2 + sin2 𝛾 2 )2 + 1) = 3 + 5 + 1 4 Rizika Barbory: riziko1 = 3‖⟨00|00⟩‖2 + 5‖⟨01|00⟩‖2 + 0‖⟨10|00⟩‖2 + 1‖⟨11|00⟩‖2 = 3 riziko2 = 3‖⟨00|01⟩‖2 + 5‖⟨01|01⟩‖2 + 0‖⟨10|01⟩‖2 + 1‖⟨11|01⟩‖2 = 5 riziko3 = 1 2(3(cos2 𝛾 2 − sin2 𝛾 2 )2 + 4 cos2 𝛾 2 sin2 𝛾 2 ) riziko4 = 3‖⟨00|10⟩‖2 + 5‖⟨01|10⟩‖2 + 0‖⟨10|10⟩‖2 + 1‖⟨11|10⟩‖2 = 0 riziko5 = 3‖⟨00|11⟩‖2 + 5‖⟨01|11⟩‖2 + 0‖⟨10|11⟩‖2 + 1‖⟨11|11⟩‖2 = 1 riziko6 = 1 2(5(cos2 𝛾 2 − sin2 𝛾 2 )2 + 1) riziko7 = 1 2(3(cos2 𝛾 2 − sin2 𝛾 2 )2 + 5 + 4 cos2 𝛾 2 sin2 𝛾 2 ) riziko8 = 1 2(5 · 4 cos2 𝛾 2 sin2 𝛾 2 + 1) riziko9 = 1 4(3 + 5(cos2 𝛾 2 + sin2 𝛾 2 )2 + 1) = 3 + 5 + 1 4 Následně uspořádejme rizika do tabulky, podle toho jakou strategii hráči zvolí. Adam∖Barbora Zradí Nezradí Miracle Zradí riziko1 riziko2 riziko3 Nezradí riziko4 riziko5 riziko6 Miracle riziko7 riziko8 riziko9 Nyní použijeme minimax kritérium. Z Adamova pohledu minimax spočívá v minima- lizaci rizika, kterým jej ohrožuje Barbora. Tedy z každého sloupce tabulky vybereme největší ohrožení, a z nich pak vybereme to nejmenší. Uvažujeme totiž způsobem, kdy hráči hrají proti sobě. Obdobnou analýzu rizik provedeme i z pohledu Barbory, 44 jen s rozdílem, že maxima vybíráme z řádků. Vzhledem k tomu, že jsou naše rizika závislá na parametru entaglmentu 𝛾 je snazší porovnávání provádět v grafech. 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 . 0 1 2 3 4 5 H od no ta r iz ik a Adamova rizika v závislosti na . riziko 1 riziko 2 riziko 3 riziko 4 riziko 5 riziko 6 riziko 7 riziko 8 riziko 9 Obr. 3.1: Graf rizik hráče A, v závislosti na parametru entaglovanosti 𝛾, vykresleno programem MATLAB. 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 . 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 H od no ta r iz ik a Rizika Barbory v závislosti na . riziko 1 riziko 2 riziko 3 riziko 4 riziko 5 riziko 6 riziko 7 riziko 8 riziko 9 Obr. 3.2: Graf rizik hráče B, v závislosti na parametru entaglovanosti 𝛾, vykresleno programem MATLAB. 45 V grafech můžeme pozorovat změny rizikovosti jednotlivých strategií v závislosti na parametru entaglovanosti 𝛾. Pokud budeme hledat nejlepší strategie hráčů, musíme začít volbou výběrového kritéria. Nejprve zvolme algoritmus maxmin. Tedy pokud bychom chtěli vybrat strategii pro Adama, vezmeme strategie dle Barbořiny volby, které Adamovi nejvíce uškodí, a z nich vyberme ty, které uškodí nejméně. Adamova volba𝑚𝑎𝑥𝑚𝑖𝑛 = 𝑚𝑖𝑛 ⎧⎪⎪⎨⎪⎪⎩ 𝑚𝑎𝑥{𝑟𝑖𝑧𝑖𝑘𝑜1, 𝑟𝑖𝑧𝑖𝑘𝑜4𝑟𝑖𝑧𝑖𝑘𝑜7} 𝑚𝑎𝑥{𝑟𝑖𝑧𝑖𝑘𝑜2, 𝑟𝑖𝑧𝑖𝑘𝑜5𝑟𝑖𝑧𝑖𝑘𝑜8} 𝑚𝑎𝑥{𝑟𝑖𝑧𝑖𝑘𝑜3, 𝑟𝑖𝑧𝑖𝑘𝑜6𝑟𝑖𝑧𝑖𝑘𝑜9} ⎫⎪⎪⎬⎪⎪⎭ . Stejně pak postupujeme i při volbě Barbořiny strategie, jen s rozdílem že trans- ponujeme tabulku rizik. Při výběru z grafů tak začneme předvýběrem maxima z všech strategií vykreslených stejným druhem čáry, kde hledáme nejhorší variantu jakou může protihráč uškodit. Z tohoto předvýběru katastrofických scénářů, pak vybereme minimum, abychom riziko co nejvíce snížili. Pro Adama tak dostáváme předvýběr jako riziko4, riziko8 → 5 a riziko3, ze kterého jasně vychází jako mini- mální riziko8 → 5. Tedy Adam by nejprve volil strategii 8, následně by by pak s narůstající 𝛾 přešel ke strategii 5. Neboli hrál by miracle, a chtěl by aby Barbora hrála kooperaci, a posléze by hrál kooperaci. Stejně tak Barbora dostane strategie mezi nimiž mění. Barboře však před změnou vychází strategie volit miracle a nechat Adama hrát kooperaci. Konečně pak po změně strategie i Barbora dojde ke strategii kooperace kooperace. Nyní pozorujme, jak se změní vybrané strategie pokud změníme algoritmus vý- běru rizika. Tentokrát volíme algoritmus minmax, tedy přehodíme pořadí uspořá- dání. Přičemž myšlenka je taková, že si vybíráme minimálně škodlivé strategie, z nichž si pak protihráč volí takové aby maximalizoval náš postih. Adamovu úvahu nad riziky, pak můžeme zapsat následovně: Adamova volba𝑚𝑖𝑛𝑚𝑎𝑥 = 𝑚𝑎𝑥 ⎧⎪⎪⎨⎪⎪⎩ 𝑚𝑖𝑛{𝑟𝑖𝑧𝑖𝑘𝑜1, 𝑟𝑖𝑧𝑖𝑘𝑜2𝑟𝑖𝑧𝑖𝑘𝑜3} 𝑚𝑖𝑛{𝑟𝑖𝑧𝑖𝑘𝑜4, 𝑟𝑖𝑧𝑖𝑘𝑜5𝑟𝑖𝑧𝑖𝑘𝑜6} 𝑚𝑖𝑛{𝑟𝑖𝑧𝑖𝑘𝑜7, 𝑟𝑖𝑧𝑖𝑘𝑜8𝑟𝑖𝑧𝑖𝑘𝑜9} ⎫⎪⎪⎬⎪⎪⎭ . Tady pak pro Adama vychází přechod dvou strategií, z rizika7 k riziku5 a to v bodě jejich průniku. Pro Barboru nám tímto postupem výběru vyjdou stejné křivky se stejnými průsečíky jako u Adama, jen s rozdílem, že přechází od rizika3 k riziku5. Znovu zde tedy vzniká konsensus až po přechodu u přechodných rizik. Vidíme tedy, že pro vyhodnocení rizika můžeme provést několika způsoby, a vždy je třeba uvažovat nad tím, kterým směrem nás zvolený postup výběru vede. 46 Závěr V práci se věnuji převážně pochopení problematiky kvantového počtu. Je do detailu rozebrána reprezentace qubitu, i to proč si vybíráme Blochovu sféru jako množinu pro reprezentaci všech kvantových stavů. Prezentuji zde své vlastní odvození toho, z jakého důvodu Blochovu sféru zavádíme, a dokazuji že je tvořena reprezentanty jednotlivých tříd ekvivalence. Cíle pochopení a ozřejmění jsou tedy naplněny. Dále jsou zde spočteny finální stavy pro vězňovo dilema v závislosti na parametru en- taglovanosti. Což umožňuje sledovat strategie, ne jen z pohledu tabulek, ale i v jejich průběhu v závislosti na míře entaglovanosti hráčů. Je zde mnoho prostoru, pro zkoumání dalších možných strategii vězňova dilematu, i pro objasnění faktu, že pro každou kvantovou strategii existuje vhodná kvantová anti-strategie, která je vůči ní výherní. Toto jsou směry, kterými by se mohly vydávat další práce ve stejném tématickém okruhu. Navíc je zde postaven dobrý základ pro popis a tvorbu kvanto- vých algoritmů. Vidím tedy potenciál navázat na základní popis logických bran pro qubity a věnovat se rozboru například Shorova algoritmu pro prvočíselný rozklad. 47 Literatura [1] KOLMOGOROV, Andrej Nikolajevič a Sergej Vasil‘jevič FOMIN. Zá- klady teorie funkcí a funkcionální analýzy: [určeno [též] pro posl. vys. škol techn. a universit].[online] Praha: Státní nakladatelství technické literatury, 1975. Teoretická knižnice inženýra. Dostupné také z URL: . [2] Elgazzar, A.S.: Quantum prisoner’s dilemma in a restricted one-parameter stra- tegic space. Applied Mathematics and Computation. 370, (2020) Dostupné také z URL: https://doi.org/10.1016/j.amc.2019.124927 [3] Flitney, A. P., Abbott D.: An Introduction to quantum game theory, Fluctuation and Noise Letters, Vol. 02, No. 04 R175– R187 (2002) Dostupné také z URL: https://doi.org/10.1142/S0219477502000981 [4] Qiskit Introduction to Quantum Computing Otevřený webový seminář zaměřený na základy kvantového počtu. Dostupný z URL: . [5] de Lima Marquezino Franklin, Portugal R., Lavor C.: A Primer on Quantum Computing. Springer Publishing Company (2019) [6] Nielsen, M., Chuang, I.: Quantum Computation and Quantum Information: 10th Anniversary Edition. Cambridge: Cambridge University Press (2010) Do- stupné také z URL:10.1017/CBO9780511976667 49 http://www.digitalniknihovna.cz/mzk/uuid/uuid:38ebe6e0-9fa2-11e4-94a8-005056827e51 http://www.digitalniknihovna.cz/mzk/uuid/uuid:38ebe6e0-9fa2-11e4-94a8-005056827e51 https://doi.org/10.1016/j.amc.2019.124927 https://doi.org/10.1142/S0219477502000981 https://qiskit.org/textbook-beta/summer-school/introduction-to-quantum-computing-and-quantum-hardware-2020/ https://qiskit.org/textbook-beta/summer-school/introduction-to-quantum-computing-and-quantum-hardware-2020/ Úvod Matematický formalismus Zavedení qubitu Diracova notace Zavedení operací na qubitech 2-qubit a n-qubity Základy kvantového počtu Měření stavů Blochovsky podobné vektory Vizuální reprezentace Blochovy sféry Logické brány Brány na 1-qubitech Entaglment Kvantové hry Hry Kvantové vězňovo dilema Závěr Literatura