Tekijät: Sergey Bravyi Andrew W. Cross Jay M. Gambetta Dmitri Maslov Patrick Rall Theodore J. Yoder Tiivistelmä Fyysisten virheiden kertyminen , , estää suurten algoritmien suorittamisen nykyisissä kvanttitietokoneissa. Kvanttivirheenkorjaus lupaa ratkaisun koodaamalla loogista kubittia suurempaan määrään fyysisiä kubitteja siten, että fyysiset virheet vaimennetaan riittävästi, jotta haluttu laskenta voidaan suorittaa siedettävällä tarkkuudella. Kvanttivirheenkorjaus tulee käytännössä toteutettavaksi, kun fyysisten virheiden määrä on alle kynnysarvon, joka riippuu kvanttikoodin, oiremittauspiirin ja dekoodausalgoritmin valinnasta . Esittelemme päästä päähän -kvanttivirheenkorjausprotokollan, joka toteuttaa vikasietoisen muistin matalatiheyksisten pariteettitarkistuskoodien (low-density parity-check codes, LDPC) perheeseen perustuen . Lähestymistapamme saavuttaa 0,7 %:n virhekynnysarvon standardille piiripohjaiselle kohinamallille, mikä vastaa pintakoodia , , , , joka oli 20 vuoden ajan johtava koodi virhekynnyksen osalta. Oiremittaussykli -pituiselle koodille perheessämme vaatii apukubittia ja syvyyden 8 piirin CNOT-porteilla, kubitin alustuksilla ja mittauksilla. Vaadittu kubittiyhteys on asteluvun 6 graafi, joka koostuu kahdesta reunasti erillisestä tasografista. Erityisesti osoitamme, että 12 loogista kubittia voidaan säilyttää lähes 1 miljoonan oiresyklin ajan käyttäen yhteensä 288 fyysistä kubittia, olettaen 0,1 %:n fyysisten virheiden määrä, kun taas pintakoodi vaatisi lähes 3 000 fyysistä kubittia vastaavan suorituskyvyn saavuttamiseksi. Löydöksemme tuovat matalan ylikuormituksen vikasietoisen kvanttimuistin demonstraatiot lähelle termiiniltä kvanttiprosessoreita. 1 2 3 4 k n 5 6 7 8 9 10 n n Pääosa Kvanttitietokoneet ovat herättäneet huomiota kykynsä ansiosta tarjota asymptoottisesti nopeampia ratkaisuja joukkoon laskennallisia ongelmia verrattuna parhaisiin tunnettuihin klassisiin algoritmeihin . Uskotaan, että toimiva skaalautuva kvanttitietokone voi auttaa ratkaisemaan laskennallisia ongelmia esimerkiksi tieteellisessä löytämisessä, materiaalitutkimuksessa, kemiassa ja lääkesuunnittelussa , , , . 5 11 12 13 14 Suurin este kvanttitietokoneen rakentamiselle on kvanttitiedon hauraus, joka johtuu erilaisista kohinan lähteistä, jotka vaikuttavat siihen. Koska kvanttitietokoneen eristäminen ulkoisista vaikutuksista ja sen ohjaaminen halutun laskennan tuottamiseksi ovat ristiriidassa keskenään, kohina vaikuttaa väistämättömältä. Kohinan lähteitä ovat kubittien, käytettyjen materiaalien, ohjauslaitteiden, tilanvalmistelu- ja mittausvirheet sekä erilaiset ulkoiset tekijät paikallisista ihmisen aiheuttamista, kuten harhautuneista sähkömagneettisista kentistä, aina maailmankaikkeudelle ominaisiin, kuten kosmisiin säteisiin. Katso yhteenveto ref. . Vaikka jotkin kohinan lähteet voidaan poistaa paremmalla ohjauksella , materiaaleilla ja suojauksella , , , useita muita lähteitä on vaikea, jos lainkaan mahdollista, poistaa. Viimeksi mainittuihin voivat kuulua spontaani ja stimuloitu emissio loukuissa olevissa ioneissa , ja vuorovaikutus kylvyn kanssa (Purcellin efekti) suprajohdekonfiguraatioissa – kattaen molemmat johtavat kvanttiteknologiat. Siksi virheenkorjauksesta tulee keskeinen vaatimus toimivan skaalautuvan kvanttitietokoneen rakentamiseksi. 15 16 17 18 19 20 1 2 3 Kvanttivikasietoisuuden mahdollisuus on vakiintunut . Yhden loogisen kubitin koodaaminen yli monien fyysisten kubittien mahdollistaa virheiden diagnosoinnin ja korjaamisen mittaamalla toistuvasti pariteettitarkistusoperaattoreiden oireita. Virheenkorjaus on kuitenkin hyödyllistä vain, jos laitteiston virhetaso on tietyn kynnysarvon alapuolella, joka riippuu tietystä virheenkorjausprotokollasta. Ensimmäiset kvanttivirheenkorjausehdotukset, kuten konkatenaatiokoodit , , , keskittyivät virheenvaimennuksen teoreettisen mahdollisuuden osoittamiseen. Kun kvanttivirheenkorjauksen ymmärrys ja kvanttiteknologioiden kyvyt kehittyivät, painopiste siirtyi käytännöllisten kvanttivirheenkorjausprotokollien löytämiseen. Tämä johti pintakoodin , , , kehittämiseen, joka tarjoaa korkean virhekynnyksen lähellä 1 %, nopeita dekoodausalgoritmeja ja yhteensopivuutta olemassa olevien kvanttiprosessorien kanssa, jotka perustuvat kaksiulotteiseen (2D) neliöpisteisen verkon kubittiyhteyteen. Pieniä esimerkkejä pintakoodista yhdellä loogisella kubitilla on jo demonstroitu kokeellisesti useiden ryhmien toimesta , , , , . Pintakoodin skaalaaminen 100 tai useampaan loogiseen kubittiin olisi kuitenkin kohtuuttoman kallista sen huonon koodaustehokkuuden vuoksi. Tämä on herättänyt kiinnostusta yleisempiin kvanttikoodeihin, jotka tunnetaan matalatiheyksisinä pariteettitarkistuskoodeina (LDPC) . Viimeaikainen edistys LDPC-koodien tutkimuksessa viittaa siihen, että ne voivat saavuttaa kvanttivikasietoisuuden paljon suuremmalla koodaustehokkuudella . Tässä keskitymme LDPC-koodien tutkimukseen, koska tavoitteenamme on löytää kvanttivirheenkorjauskoodeja ja -protokollia, jotka ovat sekä tehokkaita että mahdollisesti demonstroivia käytännössä kvanttitietokoneteknologioiden rajoitukset huomioon ottaen. 4 21 22 23 7 8 9 10 24 25 26 27 28 6 29 Kvanttivirheenkorjauskoodi on LDPC-tyyppinen, jos koodin jokainen tarkistusoperaattori vaikuttaa vain muutamaan kubittiin ja jokainen kubitti osallistuu vain muutamaan tarkistukseen. Useita LDPC-koodien muunnelmia on ehdotettu äskettäin, mukaan lukien hyperboliset pintakoodit , , , hypergraafitulo , tasapainotetut tulokoodit , kahden lohkon koodit, jotka perustuvat äärellisiin ryhmiin , , , ja kvantti-Tanner-koodit , . Jälkimmäisten on osoitettu , olevan asymptoottisesti "hyviä" siinä mielessä, että ne tarjoavat vakion koodausnopeuden ja lineaarisen etäisyyden: parametrin, joka kvantifioi korjattavien virheiden määrän. Sitä vastoin pintakoodilla on asymptoottisesti nolla koodausnopeus ja vain neliöjuuri etäisyys. Pintakoodin korvaaminen korkeanopeuksisella, korkeaetäisyydellisellä LDPC-koodilla voisi olla merkittäviä käytännön seurauksia. Ensinnäkin vikasietoisuusylikuormitus (fyysisten ja loogisten kubittien suhde) voisi pienentyä huomattavasti. Toiseksi korkeaetäisyydelliset koodit osoittavat erittäin jyrkän laskun loogisessa virhetasossa: kun fyysinen virhetodennäköisyys ylittää kynnysarvon, koodin saavuttama virheenvaimennuksen määrä voi kasvaa useita kertaluokkia jopa pienellä fyysisen virhetason vähennyksellä. Tämä ominaisuus tekee korkeaetäisyydellisistä LDPC-koodeista houkuttelevia lähialueen demonstraatioihin, jotka toimivat todennäköisesti kynnyksen lähellä. Kuitenkin uskottiin aiemmin, että pintakoodin ylittäminen realistisilla kohinamalleilla, mukaan lukien muisti-, portti- ja tilanvalmistelu- ja mittausvirheet, saattaa vaatia hyvin suuria LDPC-koodeja, joissa on yli 10 000 fyysistä kubittia . 30 31 32 33 34 35 36 37 38 39 40 39 40 31 Tässä esittelemme useita konkreettisia esimerkkejä korkeanopeuksisista LDPC-koodeista, joissa on muutama sata fyysistä kubittia, varustettuna matalan syvyyden oiremittauspiirillä, tehokkaalla dekoodausalgoritmilla ja vikasietoisella protokollalla yksittäisten loogisten kubittien käsittelemiseksi. Nämä koodit osoittavat virhekynnyksen lähellä 0,7 %, osoittavat erinomaista suorituskykyä kynnyksen lähellä olevalla alueella ja tarjoavat 10-kertaisen koodausylikuormituksen vähennyksen verrattuna pintakoodiin. Laitteistovaatimukset virheenkorjausprotokolliemme toteuttamiseksi ovat suhteellisen vähäiset, sillä jokainen fyysinen kubitti on kytketty kaksikubittisilla porteilla vain kuuteen muuhun kubittiin. Vaikka kubittiyhteysgraafi ei ole paikallisesti upotettavissa 2D-ruudukkoon, se voidaan hajottaa kahteen tasografiin. Kuten alla esitämme, tällainen kubittiyhteys sopii hyvin arkkitehtuureihin, jotka perustuvat suprajohdekubitteihin. Koodimme ovat yleistys MacKay et al.:n ehdottamista polkupyöräkoodeista , joita tutkittiin tarkemmin ref.s , , . Nimesimme koodimme bivariaalisiksi polkupyöräkoodeiksi (BB), koska ne perustuvat bivariaalisiin polynomeihin, kuten Methods-osiossa kuvataan yksityiskohtaisesti. . Nämä ovat Calderbank–Shor–Steane (CSS) -tyyppisiä stabilisaattorikoodeja , , jotka voidaan kuvata kuuden kubitin tarkistusoperaattorikokoelmalla, joka koostuu Paulin ja -operaattoreista. Yleisesti ottaen BB-koodi on samankaltainen kuin kaksiulotteinen toroidikoodi . Erityisesti BB-koodin fyysiset kubitit voidaan sijoittaa kaksiulotteiselle ruudukolle jaksollisilla reunaehdoilla siten, että kaikki tarkistusoperaattorit saadaan yhdestä X- ja Z-tarkistusparista, soveltamalla ruudukon vaaka- ja pystysuuntaisia siirtoja. Kuitenkin, toisin kuin toroidikoodin plaquette- ja vertex-stabilisaattorit, BB-koodien tarkistusoperaattorit eivät ole geometrisesti paikallisia. Lisäksi jokainen tarkistus vaikuttaa kuuteen kubittiin neljän sijaan. Kuvaamme koodin Tanner-graafilla siten, että jokainen :n solmu edustaa joko datakubittia tai tarkistusoperaattoria. Tarkistussolmu ja datansolmu yhdistetään reunalla, jos :s tarkistusoperaattori vaikuttaa epätriviaalisti :nteen datakubittiin (soveltamalla Pauli tai ). Katso Kuvio esimerkkejä pintakoodin ja BB-koodien Tanner-graafeista. Minkä tahansa BB-koodin Tanner-graafilla on asteluku kuusi ja graafin paksuus kaksi, mikä tarkoittaa, että se voidaan hajottaa kahteen reunasti erilliseen tasografiin ( ). Paksuus-2-kubittiyhteys sopii hyvin suprajohdekubiteille, joita kytketään mikroaaltoresonaattoreilla. Esimerkiksi kaksi tasokerrosta kytkimiä ja niiden ohjauslinjoja voidaan kiinnittää sirun ylä- ja alapuolelle, joka isännöi kubitteja, ja kaksi puolta yhdistää. 41 35 36 42 Methods 43 44 X Z 7 G G i j i j X Z 1a,b 29 Methods , Pintakoodin Tanner-graafi vertailun vuoksi. , BB-koodin Tanner-graafi parametreilla [[144, 12, 12]], upotettuna torukseen. Jokainen Tanner-graafin reuna yhdistää datan ja tarkistuksen solmun. Datan kubitit, jotka liittyvät rekistereihin ( ) ja ( ), näytetään sinisinä ja oransseina ympyröinä. Jokaisella solmulla on kuusi reunaa, mukaan lukien neljä lyhyen kantaman reunaa (osoittaa pohjoiseen, etelään, itään ja länteen) ja kaksi pitkän kantaman reunaa. Näytämme vain muutamia pitkän kantaman reunoja ruuhkautumisen välttämiseksi. Katkoviivat ja kiinteät reunat osoittavat kahta tasaista aligraafia, jotka kattavat Tanner-graafin, katso . , Luonnos Tanner-graafin laajennuksesta ja -mittaukseen ref.n mukaisesti, joka liittyy pintakoodiin. Oiremittaukseen liittyvä apukubitti voidaan yhdistää pintakoodiin, mikä mahdollistaa lataus-tallennusoperaatiot kaikille loogisille kubiteille kvanttiteleportaation ja joidenkin loogisten unitaaristen operaatioiden avulla. Tämä laajennettu Tanner-graafi on myös toteutettavissa paksuus-2-arkkitehtuurissa - ja -reunojen kautta ( ). a b q L q R Methods c 50 A B Methods BB-koodi parametreilla [[ , , ]] koodaa loogista kubittia datakubittiin, tarjoten koodietäisyyden , mikä tarkoittaa, että jokainen looginen virhe kattaa vähintään datakubittia. Jaamme datakubittia rekistereihin ( ) ja ( ), joiden koko on /2. Jokainen tarkistus vaikuttaa kolmeen kubittiin ( ):stä ja kolmeen kubittiin ( ):stä. Koodi luottaa aputarkistuskubittiin virheoireiden mittaamiseksi. Jaamme tarkistuskubittia rekistereihin ( ) ja ( ), joiden koko on /2, jotka keräävät - ja -tyypin oireita. Yhteensä koodaus vaatii 2 fyysistä kubittia. Nettokoodausnopeus on siten = /(2 ). Esimerkiksi standardi pintakoodiarkkitehtuuri koodaa = 1 loogisen kubitin = 2 datakubittiin -etäisyyden koodille ja käyttää − 1 tarkistuskubittia oiremittauksiin. Nettokoodausnopeus on ≈ 1/(2 2), mikä nopeasti muuttuu epäkäytännölliseksi, kun on pakko valita suuri koodietäisyys, koska esimerkiksi fyysiset virheet ovat lähellä kynnysarvoa. Sitä vastoin BB-koodeilla on koodausnopeus ≫ 1/ 2, katso taulukko koodiesimerkkejä varten. Tietojemme mukaan kaikki taulukossa näytetyt koodit ovat uusia. Etäisyyden 12 koodi [[144, 12, 12]] voi olla lupaavin lähialueen demonstraatioille, koska se yhdistää suuren etäisyyden ja korkean nettokoodausnopeuden = 1/24. Vertailun vuoksi etäisyyden 11 pintakoodilla on nettokoodausnopeus = 1/241. Alla osoitamme, että etäisyyden 12 BB-koodi ylittää etäisyyden 11 pintakoodin kokeellisesti relevantilla virhetasojen alueella. n k d k n d d n q L q R n q L q R n n q X q Z n X Z n r k n k n d d n r d r d 1 1 r r Virheiden kertymisen estämiseksi on pystyttävä mittaamaan virheoireitä riittävän usein. Tämä toteutetaan oiremittauspiirillä, joka yhdistää datakubitit kunkin tarkistusoperaattorin tukialueella vastaavan apukubitin kanssa sarjalla CNOT-portteja. Tämän jälkeen tarkistuskubitteja mitataan, paljastaen virheoireiden arvon. Oiremittauspiirin toteuttamiseen kuluva aika on verrannollinen sen syvyyteen: porttikerrosten lukumäärään, jotka koostuvat päällekkäisyyttä vailla olevista CNOT-porteista. Koska uusia virheitä ilmenee jatkuvasti oiremittauspiirin suorituksen aikana, sen syvyys tulisi minimoida. Täysi oiremittaussykli BB-koodille kuvataan Kuviossa . Oiretehtävä vaatii vain seitsemän CNOT-kerrosta koodin pituudesta riippumatta. Tarkistuskubittien alustus ja mittaus tapahtuvat oiretehtävän alussa ja lopussa vastaavasti (ks. yksityiskohtia varten). Piiri kunnioittaa taustalla olevan koodin syklisen siirtosymmetrian. 2 Methods Täysi oiremittaussykli, joka perustuu seitsemään CNOT-kerrokseen. Tarjoamme paikallisen näkymän piiristä, joka sisältää vain yhden datakubitin kustakin rekisteristä ( ) ja ( ). Piiri on symmetrinen Tanner-graafin vaaka- ja pystysuunta q L q R