9-Qubit Shorův kód
Nyní se zaměříme na 9-Qubit Shorův kód, což je kvantový kód pro opravu chyb získaný kombinací dvou kódů z předchozí sekce: 3-bitového opakovacího kódu pro Qubit, který umožňuje opravu jedné chyby typu bit-flip, a jeho modifikované verze, která umožňuje opravu jedné chyby typu phase-flip.
Popis kódu
9-Qubit Shorův kód je kód, který získáme zřetězením dvou kódů z předchozí sekce. To znamená, že nejprve aplikujeme jedno kódování, které zakóduje jeden Qubit do tří, a poté aplikujeme druhé kódování na každý ze tří Qubit použitých pro první kódování, čímž získáme celkem devět Qubit.
Přesněji řečeno, i když bychom v tomto konkrétním případě mohli aplikovat oba kódy v libovolném pořadí, zvolíme nejprve aplikaci modifikované verze 3-bitového opakovacího kódu (který detekuje chyby typu phase-flip) a poté zakódujeme každý z výsledných tří Qubit nezávisle pomocí původního 3-bitového opakovacího kódu (který detekuje chyby typu bit-flip). Zde je schéma Circuit tohoto kódování.
Jak obrázek naznačuje, budeme o devíti Qubit Shorova kódu přemýšlet jako o třech blocích po třech Qubit, kde každý blok je získán z druhého kroku kódování (což je obyčejný 3-bitový opakovací kód). Obyčejný 3-bitový opakovací kód, který se zde aplikuje třikrát nezávisle, se v tomto kontextu nazývá vnitřní kód, zatímco vnější kód je kód použitý pro první krok kódování, což je modifikovaná verze 3-bitového opakovacího kódu, která detekuje chyby typu phase-flip.
Kód můžeme alternativně specifikovat popisem toho, jak se zakódují dva stavy standardní báze pro náš původní Qubit.
Jakmile toto známe, můžeme pomocí linearity určit, jak se zakóduje libovolný stavový vektor Qubit.
Oprava chyb typu bit-flip a phase-flip
Chyby a Gate CNOT
Pro analýzu toho, jak chyby a ovlivňují kódování Qubit, a to jak pro 9-Qubit Shorův kód, tak pro další kódy, bude užitečné si všimnout několika jednoduchých vztahů mezi těmito chybami a Gate CNOT. Když začínáme analyzovat 9-Qubit Shorův kód, je to vhodný okamžik se u toho zastavit.
Následující schémata Circuit ilustrují tři základní vztahy mezi Gate a Gate CNOT. Konkrétně, aplikace Gate na cílový Qubit před Gate CNOT je ekvivalentní prohození pořadí a provedení Gate CNOT nejdříve, ale aplikace Gate na řídicí Qubit před Gate CNOT je ekvivalentní aplikaci Gate na oba Qubit po Gate CNOT. Nakonec, aplikace Gate na oba Qubit před Gate CNOT je ekvivalentní provedení Gate CNOT nejdříve a poté aplikaci Gate na řídicí Qubit. Tyto vztahy lze ověřit provedením příslušných maticových násobení nebo výpočtem účinku Circuit na stavy standardní báze.
Situace je podobná pro Gate , s tím rozdílem, že se role řídicího a cílového Qubit prohodí. Konkrétně máme tři vztahy znázorněné následujícími kvantovými Circuit.
Oprava chyb typu bit-flip
Nyní se podíváme na to, jak lze chyby detekovat a opravit pomocí 9-Qubit Shorova kódu, počínaje chybami typu bit-flip — které budeme pro stručnost obecně označovat jako chyby .
Pro detekci a opravu chyb můžeme jednoduše zpracovat každý ze tří bloků v kódování zvlášť. Každý blok je kódování Qubit pomocí 3-bitového opakovacího kódu, který chrání proti chybám — takže provedením syndromových měření a oprav chyb popsaných dříve pro každý blok můžeme detekovat a opravit až jednu chybu na blok. Zejména pokud je na devíti Qubit kódování nejvýše jedna chyba , tato chyba bude tímto postupem detekována a opravena.
Stručně řečeno, oprava chyb typu bit-flip je u tohoto kódu jednoduchá záležitost, díky tomu, že vnitřní kód opravuje chyby typu bit-flip.
Oprava chyb typu phase-flip
Dále se podíváme na chyby typu phase-flip, nebo pro stručnost chyby . Tentokrát není tak úplně jasné, co bychom měli dělat, protože vnější kód je ten, který detekuje chyby , ale vnitřní kód je jakoby „v cestě", což detekci a opravu těchto chyb mírně ztěžuje.
Předpokládejme, že chyba nastane na jednom z 9 Qubit Shorova kódu, například na tom, který je znázorněn v tomto diagramu.
Už jsme pozorovali, co se stane, když nastane chyba při použití 3-bitového opakovacího kódu — je to ekvivalentní chybě nastalé před kódováním. V kontextu 9-Qubit Shorova kódu to znamená, že chyba na kterémkoli ze tří Qubit v rámci bloku má vždy stejný efekt, který je ekvivalentní chybě nastalé na odpovídajícím Qubit před aplikací vnitřního kódu.
Například výše uvedený diagram Circuit je ekvivalentní následujícímu diagramu. To lze odvodit pomocí výše popsaných vztahů mezi a Gate CNOT, nebo jednoduše vyhodnocením Circuit na libovolný stav Qubit
To naznačuje jednu možnost pro detekci a opravu chyb , a to dekódovat vnitřní kód, čímž nám zbydou tři Qubit použité pro vnější kódování spolu se šesti inicializovanými pracovními Qubit. Poté můžeme zkontrolovat tyto tři Qubit vnějšího kódu na chyby a nakonec znovu zakódovat pomocí vnitřního kódu, abychom se vrátili k 9-Qubit kódování, které získáme ze Shorova kódu. Pokud detekujeme chybu , můžeme ji buď opravit před opětovným zakódováním vnitřním kódem, nebo ji můžeme opravit po opětovném zakódování aplikací Gate na kterýkoli z Qubit v daném bloku.
Zde je diagram Circuit, který zahrnuje kódovací Circuit a výše naznačenou chybu spolu s právě popsanými kroky (ale ne samotný krok opravy).
V tomto konkrétním příkladu je výsledek syndromového měření , což lokalizuje chybu jako nastalou na jednom z Qubit v prostředním bloku.
Jednou z výhod opravy chyb po kroku opětovného zakódování oproti opravě před ním je, že můžeme výše uvedený Circuit zjednodušit. Následující Circuit je ekvivalentní, ale vyžaduje o čtyři Gate CNOT méně.
Opět platí, že syndrom neindikuje, který Qubit byl zasažen chybou , ale spíše který blok zažil chybu , přičemž efekt je stejný bez ohledu na to, který Qubit v rámci bloku byl zasažen. Chybu pak můžeme opravit aplikací Gate na kterýkoli ze tří Qubit postiženého bloku.
Na okraj, zde vidíme příklad degenerace v kvantovém kódu pro opravu chyb, kdy jsme schopni opravit určité chyby (v tomto případě chyby ), aniž bychom je dokázali jednoznačně identifikovat.
Současné chyby typu bit-flip a phase-flip
Nyní jsme viděli, jak lze chyby i detekovat a opravit pomocí 9-Qubit Shorova kódu, a zejména jak lze detekovat a opravit nejvýše jednu chybu nebo nejvýše jednu chybu . Nyní předpokládejme, že nastanou jak chyba typu bit-flip, tak chyba typu phase-flip, případně na stejném Qubit. Jak se ukáže, v této situaci není třeba dělat nic odlišného od toho, co již bylo diskutováno — kód je schopen detekovat a opravit až jednu chybu a jednu chybu současně, bez dalších úprav.
Konkrétněji, chyby se detekují pomocí běžného syndromového měření 3-bitového opakovacího kódu, které se provádí zvlášť na každém ze tří bloků po třech Qubitech; a chyby se detekují postupem popsaným výše, který odpovídá dekódování vnitřního kódu, provedení syndromového měření pro modifikovaný 3-bitový opakovací kód pro fázové převrácení a následnému opětovnému zakódování. Tyto dva kroky detekce chyb — stejně jako odpovídající opravy — lze provádět zcela nezávisle na sobě a ve skutečnosti nezáleží na tom, v jakém pořadí se provedou.
Abys pochopil/a proč, podívej se na příklad znázorněný v následujícím Circuit diagramu, kde chyba i chyba zasáhly spodní Qubit prostředního bloku.
Nejprve si všimni, že pořadí chyb nehraje roli v tom smyslu, že prohození pozice chyb a dává ekvivalentní Circuit. Abychom byli přesní, a nekomutují, ale antikomutují:
To znamená, že následující Circuit je ekvivalentní tomu výše, až na globální fázový faktor
Nyní můžeme posunout chybu stejně jako předtím a získat další ekvivalentní Circuit.
V tuto chvíli je zřejmé, že pokud se nejprve provede postup pro detekci a opravu chyb , chyba bude opravena, načež lze provést postup pro detekci a opravu chyb , aby se chyba eliminovala stejně jako předtím.
Alternativně lze nejprve provést postup pro detekci a opravu chyb . Skutečnost, že tento postup funguje podle očekávání i v přítomnosti jedné nebo více chyb , vyplývá z toho, že Gate na kterémkoli z devíti Qubitů použitých pro kódování komutují se všemi Gate v našem zjednodušeném Circuit pro měření syndromu chyb . Toto syndromové měření tedy stále správně identifikuje, který blok byl zasažen chybou . Skutečnost, že chyba na libovolném bloku se opraví aplikací Gate na kterýkoli Qubit tohoto bloku, i když se současně vyskytla chyba , plyne ze stejného argumentu jako výše ohledně pořadí Gate a , které nám dávají ekvivalentní Circuit až na globální fázi.
Z toho plyne, že 9-Qubitový Shorův kód dokáže opravit chybu , chybu , nebo obojí, na kterémkoli z devíti Qubitů použitých pro tento kód. Ve skutečnosti dokážeme opravit i více chyb, včetně více chyb (pokud spadají do různých bloků) nebo více chyb (pokud je lichý počet v nejvýše jednom bloku) — ale v dalším průběhu této lekce bude nejdůležitější, že dokážeme opravit chybu , chybu , nebo obojí na jednom libovolném Qubitu.
Snížení chybovosti pro náhodné chyby
Než přejdeme k poslední části lekce, která se zabývá obecnými kvantovými chybami, pojďme se krátce podívat na výkonnost 9-Qubitového Shorova kódu v situaci, kdy se na Qubitech náhodně vyskytují chyby reprezentované Pauliho maticemi.
Abychom byli konkrétnější, uvažujme jednoduchý model šumu, kde se chyby vyskytují na Qubitech nezávisle, přičemž každý Qubit je zasažen chybou s pravděpodobností a mezi chybami na různých Qubitech neexistuje žádná korelace — podobně jako u binárního symetrického kanálu pro klasické bity. Mohli bychom přiřadit různé pravděpodobnosti výskytu chyb a , ale abychom to co nejvíce zjednodušili, budeme uvažovat nejhorší scénář pro 9-Qubitový Shorův kód, tedy že na každém zasaženém Qubitu dojde k chybě . Chyba je mimochodem ekvivalentní (až na irelevantní globální fázový faktor) současnému výskytu chyby a chyby na stejném Qubitu, protože To vysvětluje, proč jsme chyby dosud zdánlivě opomíjeli.
Předpokládejme nyní, že je Qubit v nějakém konkrétním stavu, který chceme chránit před chybami, a zvažujeme možnost použít 9-Qubitový Shorův kód. Přirozená otázka zní: „Měli bychom ho použít?"
Odpověď nemusí být nutně „ano". Pokud je příliš mnoho šumu, což v tomto kontextu znamená, že je příliš velké, použití Shorova kódu by ve skutečnosti mohlo věci zhoršit — stejně jako je 3-bitový opakovací kód horší než žádný kód, když je větší než jedna polovina. Ale pokud je dostatečně malé, pak odpověď zní „ano", kód bychom měli použít, protože sníží pravděpodobnost poškození zakódovaného stavu. Podívejme se proč a co pro tento kód znamená, že je příliš velké nebo dostatečně malé.
Shorův kód opravuje jakoukoli Pauliho chybu na jednom Qubitu, včetně chyby samozřejmě, ale neopravuje správně dvě nebo více chyb . Pro upřesnění předpokládáme, že používáme opravy chyb a popsané dříve v této sekci. (Samozřejmě, kdybychom předem věděli, že se musíme starat jen o chyby , přirozeně bychom zvolili opravy jinak — ale to by bylo podvádění modelu šumu a vždy bychom mohli model změnit výběrem jiných Pauliho chyb tak, aby tato nová volba oprav selhala, kdykoli jsou chybami zasaženy dva nebo více Qubitů.)
Kód tedy chrání , pokud je chybou zasažen nejvýše jeden z devíti Qubitů, což nastane s pravděpodobností
V opačném případě, s pravděpodobností
kód selže při ochraně
Konkrétně to v tomto kontextu znamená, že na náš Qubit (jako logický Qubit) bude aplikována neidentická Pauliho operace, až na globální fázi. Tedy pokud jsou chyby a detekovány a opraveny pro Shorův kód způsobem popsaným dříve v lekci, zůstane nám zakódování stavu, které je ekvivalentní, až na globální fázi, zakódování neidentické Pauliho operace aplikované na původní stav Stručněji řečeno, došlo k logické chybě. To může, ale nemusí mít vliv na původní stav — jinými slovy na logický Qubit, který jsme zakódovali pomocí devíti fyzických Qubitů — ale pro účely této analýzy považujeme tuto událost za selhání.
Na druhou stranu, kdybychom se neobtěžovali kód použít, náš jediný Qubit by utrpěl podobný osud (podléhání neidentické Pauliho operaci) s pravděpodobností Kód pomáhá, když je první pravděpodobnost menší než druhá:
Zde je graf, který pro velmi malé hodnoty ilustruje, že kód poskytuje výhodu, přičemž bod vyrovnání nastává přibližně při
Pokud je menší než tento bod vyrovnání, kód pomáhá; v bodě vyrovnání jsou pravděpodobnosti stejné, takže pokud kód použijeme, jen ztrácíme čas a 8 Qubitů navíc; a za bodem vyrovnání bychom tento kód rozhodně neměli používat, protože zvyšuje šanci na logickou chybu na
Tři a čtvrt procenta se nemusí zdát jako příliš dobrý bod vyrovnání, zvláště ve srovnání s což je analogický bod vyrovnání pro 3-bitový opakovací kód pro klasickou informaci.