Qiskit Paulice
qiskit-paulice je balíček pro vkládání hardwarově efektivních Pauliho kontrol do libovolných Cliffordových obvodů na libovolné konektivitě qubitů pomocí časoprostorových stabilizátorových kódů. Tyto kontroly lze použít k detekci logických chyb během provádění obvodu. Postselekce pouze vzorků bez detekovaných chyb může zlepšit věrnost stavů vzorkovaných kvantovým procesorem za cenu několika pomocných qubitů a zvýšení režie vzorkování. Tato metoda se hodí zejména pro hardware blízké budoucnosti, protože má mnohem mírnější režii v qubitech a hradlech než odolné kvantové počítání, a přitom má lepší režii vzorkování než metody potlačení chyb, například ZNE nebo PEC [1].
Přestože lze časoprostorové Pauliho kontroly použít k implementaci samostatných rutin detekce chyb, jsou relevantní také v kontextu potlačení chyb a oprav chyb. Detekce chyb může doplnit techniky potlačení chyb, jako je pravděpodobnostní rušení chyb (PEC), tím, že zachytí část šumu ovlivňujícího hradla a měření, čímž se sníží dopad invertovaného šumového kanálu a tím i režie vzorkování. Lze je také chápat jako raný krok k praktické odolnosti proti chybám, protože implementace stabilizátorových kódů na ochranu datových qubitů před logickými chybami je základním konceptem tradiční opravy chyb. Protože tato metoda poskytuje přístup ke kvantovému stavu v jednotlivých shotech, lze ji použít v postupech založených na vzorkování i na očekávaných hodnotách.
Začínáme
Jednoduchý průvodce, který ti pomůže rychle začít s tímto balíčkem, najdeš v rychlém startu.
Příklady použití
Tato technika byla použita ke zlepšení věrnosti vzorků z obvodů dominovaných Cliffordovými hradly s využitím 97 fyzických qubitů ke kódování 2415 logických provazujících hradel na 70 logických qubitech [2].
Technická diskuse
Hledání dobrých množin časoprostorových Pauliho kontrol
Množina časoprostorových Pauliho kontrol je „dobrá“, pokud je každá kontrola platná, má nízkou váhu a je efektivní.
Kontrola se skládá z několika řízených Pauliho rotací, , umístěných na některé dráty obvodu, : . Pro danou kontrolu leží řídicí qubity na jediném pomocném qubitu a rotace probíhají na drátech jediného cílového qubitu. U Cliffordových obvodů je kontrola platná, pokud je její zpětně propagovaný součin stabilizátorem stavu připraveného ideálním obvodem: , kde je zpětný propagátor z na začátek obvodu a je množina všech stabilizátorů obvodu.
Kontrola má nízkou váhu, pokud k její implementaci stačí málo provazujících hradel. Algoritmus výběru kontrol upřednostňuje kontroly s nízkou váhou, které poskytují nejefektivnější detekci chyb.
Kontrola je efektivní, pokud zachytí mnohem více chyb, než sama zavede. Pauliho kontrola se skládá z několika provazujících hradel, a proto do výpočtu vnáší další hradlový šum. Je důležité zajistit, aby každá další kontrola přinesla další schopnost detekce chyb. Efektivitu množiny kontrol lze aproximovat složením Pauliho chyb, které kontroly odhalí, do postselektovaného šumového kanálu a výpočtem jeho dopadu. Minimalizace režie vzorkování při implementaci odhaleného inverzního šumového kanálu je solidní heuristika pro výběr dobrých kontrol, protože naznačuje, kolik chyb kontroly nedokážou detekovat. Pomalejším, ale realističtějším přístupem je provést Monte Carlo vzorkování ze zašuměného stavu a empiricky spočítat logickou chybovost postselektovaného rozdělení. Oba tyto přístupy jsou dostupné jako vestavěné nákladové funkce ve funkci qiskit_paulice.add_pauli_checks.
Postselekce vzorků na základě dat syndromu
V tomto balíčku je kontrola implementována pomocí provazujících hradel mezi jedním pomocným qubitem a jedním cílovým qubitem. Každý pomocný qubit začíná v , takže stabilizuje jeho vstupní stav. Dopředná propagace od začátku pomocného qubitu celým obvodem s kontrolami vede na Pauliho operátor na výstupu, který může mít vyšší váhu a zasahovat do obvodu s užitečným zatížením. Indexy qubitů, na kterých má tento výstupní operátor neidentitní členy, se nazývají nosič kontroly a kontrola projde, pokud bity, , v nosiči kontroly mají sudou paritu: . Vzorek se ponechá, pokud každá kontrola dá pro svou paritní kontrolu hodnotu .
Vlastnosti softwaru
-
Automatické vytvoření modelu šumu z dat benchmarku backendu
-
Hledání kontrol akcelerované v Rustu
-
3 vestavěné algoritmy pro hledání kontrol
-
Podpora dopingu hradly RZ
-
Podpora kombinace detekce chyb s potlačením chyb
Známé problémy
-
Šum při nečinnosti není poskytován přes
NoiseModel.get_backenda při výběru kontrol se ignoruje -
Přestože je mnoho stochastických kroků algoritmu řiditelných pomocí náhodného seedu, některé funkce mají náhodnost, kterou seedem řídit nelze. Konkrétně následující hodnoty argumentů
add_pauli_checkszpůsobí nedeterministický výběr kontrol:cost="LER",method="genetic"amethod="windowed_genetic". Pro deterministické chování použijadd_pauli_checks(..., cost="gamma", method="windowed"), což jsou výchozí hodnoty.
Budoucí práce
-
Zpracování šumu při nečinnosti při výběru kontrol
-
Řiditelná náhodnost pro nákladovou funkci logické chybovosti a genetické vyhledávací algoritmy
Přispívání
Zdrojový kód je dostupný na GitHubu.
Vývojářská příručka se nachází v souboru CONTRIBUTING.md v kořenovém adresáři repozitáře tohoto projektu. Účastí se zavazuješ dodržovat kodex chování Qiskitu.
Citace tohoto balíčku
Pokud tento balíček používáš ve svém výzkumu, použij soubor CITATION.bib v repozitáři tohoto projektu a cituj příslušné reference.
Licence
Zásady zastarávání
Řídíme se sémantickým verzováním. Občas můžeme provést změny narušující zpětnou kompatibilitu, abychom zlepšili uživatelský zážitek. Pokud to bude možné, ponecháme staré rozhraní a označíme je jako zastaralé, dokud může koexistovat s novými. Každé podstatné vylepšení, změna narušující kompatibilitu nebo zastarání bude zdokumentováno v poznámkách k vydání.
Reference
-
Simon Martiel, Ali Javadi-Abhari, Low-overhead error detection with spacetime codes, arXiv:2504.15725 [quant-ph].
-
Simon Martiel, et al., Sampling hard circuits with verifiably high fidelity, arXiv:2607.25941 [quant-ph].