Přeskočit na hlavní obsah
Tento projekt je v betě. Našel jsi chybu? Otevřít issue na GitHubu. Máš otázku nebo nápad? Zeptej se v Discussions — rádi si poslechneme tvou zpětnou vazbu!
Jaká je kvalita překladu na této stránce?

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​

Quantum circuit cartoon

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í, PP, umístěných na některé dráty obvodu, ww: {(P1,w1),...,(Pk,wk)}\{(P_1,w_1), ..., (P_k,w_k)\}. 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: ∏iB(Pi,wi)∈S\prod_{i}B(P_i,w_i) \in S, kde B(P,w)B(P,w) je zpětný propagátor PP z ww na začátek obvodu a SS 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 ∣0⟩|0\rangle, takže ZancZ_\text{anc} stabilizuje jeho vstupní stav. Dopředná propagace ZancZ_\text{anc} 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, bb, v nosiči kontroly mají sudou paritu: ⨁i=1bi=0\bigoplus_{i=1} b_i = 0. Vzorek se ponechá, pokud každá kontrola dá pro svou paritní kontrolu hodnotu 00.

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_backend a 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_checks způsobí nedeterministický výběr kontrol: cost="LER", method="genetic" a method="windowed_genetic". Pro deterministické chování použij add_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​

Apache License 2.0

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​

  1. Simon Martiel, Ali Javadi-Abhari, Low-overhead error detection with spacetime codes, arXiv:2504.15725 [quant-ph].

  2. Simon Martiel, et al., Sampling hard circuits with verifiably high fidelity, arXiv:2607.25941 [quant-ph].