Författare: Neereja Sundaresan Theodore J. Yoder Youngseok Kim Muyuan Li Edward H. Chen Grace Harper Ted Thorbeck Andrew W. Cross Antonio D. Córcoles Maika Takita Sammanfattning Kvantfelkorrigering erbjuder en lovande väg för att utföra kvantberäkningar med hög trohet. Även om fullständigt feltoleranta exekveringar av algoritmer fortfarande inte är realiserade, möjliggör de senaste förbättringarna inom styrselektronik och kvantmaskinvara allt mer avancerade demonstrationer av de nödvändiga operationerna för felkorrigering. Här utför vi kvantfelkorrigering på supraledande qubits kopplade i ett tung-hexagonalt nät. Vi kodar en logisk qubit med avstånd tre och utför flera rundor av feltoleranta syndrommätningar som möjliggör korrigering av eventuella enskilda fel i kretsen. Genom att använda realtidsåterkoppling återställer vi syndrom- och flagg-qubits villkorligt efter varje syndromextraktionscykel. Vi rapporterar dekoderberoende logiska fel, med ett genomsnittligt logiskt fel per syndrommätning i Z(X)-basen på ~0.040 (~0.088) respektive ~0.037 (~0.087) för matchande och maximal sannolikhetsdekoder, respektive, på läckage-postvaliderade data. Introduktion Resultaten av kvantberäkningar kan vara felaktiga i praktiken, på grund av brus i hårdvaran. För att eliminera de resulterande felen kan kvantfelkorrigeringskoder (QEC) användas för att koda kvantinformationen i skyddade, logiska frihetsgrader, och sedan genom att korrigera felen snabbare än de ackumuleras möjliggöra feltoleranta (FT) beräkningar. En komplett exekvering av QEC kommer troligen att kräva: förberedelse av logiska tillstånd; realisering av en universell uppsättning logiska grindar, vilket kan kräva förberedelse av magiska tillstånd; upprepade mätningar av syndrom; och avkodning av syndromen för att korrigera fel. Om det lyckas bör de resulterande logiska felfrekvenserna vara lägre än de underliggande fysiska felfrekvenserna och minska med ökande kodavstånd ner till försumbara värden. Valet av en QEC-kod kräver hänsyn till den underliggande hårdvaran och dess brus-egenskaper. För ett tung-hexagonalt nätverk [^1], [^2] av qubits är subsystem QEC-koder [^3] attraktiva eftersom de är väl lämpade för qubits med reducerad konnektivitet. Andra koder har visat sig lovande på grund av deras relativt höga tröskel för FT [^4] eller ett stort antal transversella logiska grindar [^5]. Även om deras rymd- och tidsåtgång kan utgöra ett betydande hinder för skalbarhet, finns det uppmuntrande metoder för att minska de mest kostsamma resurserna genom att utnyttja någon form av felmitigering [^6]. I avkodningsprocessen beror framgångsrik korrigering inte bara på prestandan hos kvantmaskinvaran, utan också på implementeringen av styrselektroniken som används för att förvärva och bearbeta den klassiska informationen som erhållits från syndrommätningar. I vårt fall kan initialisering av både syndrom- och flagg-qubits via realtidsåterkoppling mellan mätcykler hjälpa till att mildra fel. På avkodningsnivå, även om det finns vissa protokoll för att utföra QEC asynkront inom ett FT-formalism [^7], [^8], bör hastigheten med vilken fel-syndromen tas emot vara proportionell mot deras klassiska bearbetningstid för att undvika en ökande eftersläpning av syndromdata. Vissa protokoll, som att använda ett magiskt tillstånd för en logisk T-grind [^9], kräver också tillämpning av realtids-feed-forward. Således är den långsiktiga visionen av QEC inte inriktad på ett enda ultimativt mål utan bör ses som ett kontinuum av djupt sammankopplade uppgifter. Den experimentella vägen i utvecklingen av denna teknik kommer att omfatta demonstrationen av dessa uppgifter först isolerade och sedan deras gradvisa kombination senare, alltid samtidigt som deras associerade mått kontinuerligt förbättras. Vissa av dessa framsteg återspeglas i talrika senaste framsteg på kvantsystem över olika fysiska plattformar, som har demonstrerat eller approximerat flera aspekter av önskemålen för FT kvantdatorer. Särskilt har FT logisk tillståndsförberedelse demonstrerats på joner [^10], kärnspin i diamant [^11] och supraledande qubits [^12]. Upprepade cykler av syndromextraktion har visats i supraledande qubits i små feldetekterande koder [^13], [^14], inklusive partiell felkorrigering [^15] samt en universell (om än inte FT) uppsättning en-qubit-grindar [^16]. En FT-demonstration av en universell grinduppsättning på två logiska qubits har nyligen rapporterats i joner [^17]. Inom felkorrigeringens område har det nyligen funnits realiseringar av distance-3 surface code på supraledande qubits med avkodning [^18] och post-selektion [^19], samt en FT-implementering av ett dynamiskt skyddat kvantminne med hjälp av färgkoden [^20] och FT-tillståndsförberedelse, drift och mätning, inklusive dess stabilisatorer, av ett logiskt tillstånd i Bacon-Shor-koden i joner [^20], [^21]. Här kombinerar vi kapaciteten för realtidsåterkoppling på ett supraledande qubit-system med ett maximalt sannolikhetsavkodningsprotokoll som hittills utforskats experimentellt för att förbättra överlevnaden av logiska tillstånd. Vi demonstrerar dessa verktyg som en del av FT-driften av en subsystemskod [^22], den tung-hexagonala koden [^1], på en supraledande kvantdator. Avgörande för att göra vår implementering av denna kod feltolerant är flagg-qubits som, när de visar sig vara icke-noll, larmar avkodaren om kretsfel. Genom att villkorligt återställa flagg- och syndrom-qubits efter varje syndrommätningscykel skyddar vi vårt system mot fel som uppstår från brusasymmetrin som är inneboende i energirelaxationen. Vi utnyttjar vidare nyligen beskrivna avkodningsstrategier [^15] och utökar avkodningsidéerna för att inkludera maximala sannolikhetskoncept [^4], [^23], [^24]. Resultat Den tung-hexagonala koden och flerrundskretsar Den tung-hexagonala kod vi betraktar är en *n* = 9 qubit-kod som kodar *k* = 1 logisk qubit med avstånd *d* = 3 [^1], [^2]. Z- och X-gauge (se Fig. 1a) och stabilisatorgrupperna genereras av Stabilisatorgrupperna $\bar{S}$ är centren för respektive gauge-grupper $G$. Detta innebär att stabilisatorerna, som produkter av gauge-operatorer, kan härledas från mätningar av endast gauge-operatorerna. Logiska operatorer kan väljas som $X_L$ = $X_1X_2X_3$ och $Z_L$ = $Z_1Z_3Z_7$. Z (blå) och X (röd) gauge-operatorer (ekv. (1) och (2)) mappade på de 23 qubits som krävs med distance-3 heavy-hexagon-koden. Kod-qubits (Q1–Q9) visas i gult, syndrom-qubits (Q17, Q19, Q20, Q22) som används för Z-stabilisatorer i blått, och flagg-qubits och syndrom som används i X-stabilisatorer i vitt. Ordningen och riktningen som CX-grindar appliceras inom varje del (0 till 4) betecknas av de numrerade pilarna. Kretsschema för en syndrommätningsrunda, inklusive både X- och Z-stabilisatorer. Kretsschemat illustrerar tillåten parallellisering av grindoperationer: de inom gränserna som satts av schemaläggningsbarriärer (vertikala streckade grå linjer). Eftersom varaktigheten för varje två-qubit-grind skiljer sig, bestäms den slutliga grindplaneringen med en standard "så-sent-som-möjligt"-kretsöversättningspass; därefter läggs dynamisk avkoppling till datakubiter där tiden tillåter. Mät- och återställningsoperationer är isolerade från andra grindoperationer med barriärer för att tillåta enhetlig dynamisk avkoppling att läggas till inaktiva datakubiter. Avkodningsgrafer för tre rundor av ( ) Z och ( ) X stabilisatormätningar med kretsnivåbrus möjliggör korrigering av X- respektive Z-fel. De blå och röda noderna i graferna motsvarar skillnadssyndrom, medan de svarta noderna är gränsen. Kanter kodar olika sätt som fel kan uppstå i kretsen som beskrivs i texten. Noder är märkta med typen av stabilisatormätning (Z eller X), tillsammans med en indexering av stabilisatorn, och exponenter som betecknar rundan. Svarta kanter, som uppstår från Pauli Y-fel på kod-qubiter (och därmed bara är storlek 2), kopplar de två graferna i ( ) och ( ), men används inte i matchningsavkodaren. Storlek 4 hyperkanter, som inte används av matchning, men används i maximala sannolikhetsavkodaren. Färger är bara för tydlighet. Att översätta var och en i tiden med en runda ger också en giltig hyperkant (med viss variation vid tidsgränserna). Inte heller visas några av storlek 3 hyperkanterna. a b c d e c d f Här fokuserar vi på en specifik FT-krets, många av våra tekniker kan användas mer allmänt med olika koder och kretsar. Två delkretsar, visade i Fig. 1b, är konstruerade för att mäta X- och Z-gauge-operatorerna. Z-gauge-mätningskretsen förvärvar också användbar information genom att mäta flagg-qubits. Vi förbereder kodtillstånd i det logiska $|+\rangle$ (|$-\rangle$) tillståndet genom att först förbereda nio qubits i $|+\rangle$ ($|-\rangle$) tillståndet och mäta X-gauge (Z-gauge). Vi utför sedan *r* rundor av syndrommätning, där en runda består av en Z-gauge-mätning följt av en X-gauge-mätning (respektive X-gauge följt av Z-gauge). Slutligen läser vi ut alla nio kod-qubits i Z- (X-) basen. Vi utför samma experiment för initiala logiska tillstånd $|0\rangle$ och $|1\rangle$ också, genom att helt enkelt initialisera de nio qubits i $|0\rangle$ och $|1\rangle$ istället. Avkodningsalgoritmer I inställningen för FT kvantdatorer är en avkodare en algoritm som tar syndrommätningar från en felkorrigerande kod som indata och ger en korrigering till qubits eller mätdata som utdata. I detta avsnitt beskriver vi två avkodningsalgoritmer: perfekt matchningsavkodning och maximal sannolikhetsavkodning. Avkodnings-hypergrafen [^15] är en koncis beskrivning av informationen som samlats in av en FT-krets och gjorts tillgänglig för en avkodningsalgoritm. Den består av en uppsättning hörn, eller felkänsliga händelser, *V*, och en uppsättning hyperkanter *E*, som kodar korrelationerna mellan händelser orsakade av fel i kretsen. Figur 1c-f visar delar av avkodnings-hypergrafen för vårt experiment. Att konstruera en avkodnings-hypergraf för stabilisatorkretsar med Pauli-brus kan göras med standard Gottesman-Knill-simuleringar [^25] eller liknande Pauli-spårningstekniker [^26]. Först skapas en felkänslig händelse för varje mätning som är deterministisk i den felfria kretsen. En deterministisk mätning *M* är varje mätning vars utfall *m* ∈ {0, 1} kan förutsägas genom att addera modulo två mätresultaten från en uppsättning *F* tidigare mätningar. Det vill säga, för en felfri krets, $m = \sum_{f \in F} m_f \pmod 2$, där uppsättningen *F* kan hittas genom simulering av kretsen. Sätt värdet på den felkänsliga händelsen till $m - F_M \pmod 2$, vilket är noll (även kallat trivialt) i avsaknad av fel. Att observera en icke-noll (även kallat icke-trivial) felkänslig händelse antyder således att kretsen drabbades av minst ett fel. I våra kretsar är felkänsliga händelser antingen flagg-qubit-mätningar eller skillnaden mellan efterföljande mätningar av samma stabilisator (även ibland kallade skillnadssyndrom). Därefter läggs hyperkanter till genom att överväga kretsfel. Vår modell innehåller en felfrekvens *pC* för var och en av flera kretskomponenter Här skiljer vi identitetsoperationen id på qubits under en tid då andra qubits genomgår enhetsgrindar, från identitetsoperationen idm på qubits när andra genomgår mätning och återställning. Vi återställer qubits efter att de har mätts, medan vi initialiserar qubits som ännu inte har använts i experimentet. Slutligen är cx den kontrollerade-inte-grinden, h är Hadamard-grinden, och x, y, z är Pauli-grindar. (se Metoder "IBM_Peekskill och experimentella detaljer" för mer detaljer). Numeriska värden för *pC* anges i Metoder "IBM_Peekskill och experimentella detaljer". Vår felmodell är krets-depolariserande brus. För initialiserings- och återställningsfel appliceras en Pauli X med de respektive frekvenserna *p*init och *p*reset efter den ideala tillståndsförberedelsen. För mätfel appliceras en Pauli X med frekvensen $p_M$ före den ideala mätningen. En en-qubit enhetsgrind (två-qubit-grind) *C* drabbas med frekvensen *pC* av en av de tre (femton) icke-identitets en-qubit (två-qubit) Pauli-felen efter den ideala grinden. Det finns en lika stor chans att vilken som helst av de tre (femton) Pauli-felen inträffar. När ett enskilt fel inträffar i kretsen orsakar det att en delmängd av felkänsliga händelser blir icke-triviala. Denna uppsättning av felkänsliga händelser blir en hyperkant. Uppsättningen av alla hyperkanter är *E*. Två olika fel kan leda till samma hyperkant, så varje hyperkant kan ses som att den representerar en uppsättning fel, var och en av dem individuellt orsakar att händelserna i hyperkanten blir icke-triviala. Associerat med varje hyperkant finns en frekvens, som, vid första ordningens approximation, är summan av frekvenserna av felen i uppsättningen. Ett fel kan också leda till ett fel som, propagerat till slutet av kretsen, anti-pendlar med en eller flera av kodens logiska operatorer, vilket kräver en logisk korrigering. Vi antar för generalitet att koden har *k* logiska qubits och en bas av 2*k* logiska operatorer, men notera att *k*=1 för den tung-hexagonala koden som används i experimentet. Vi kan hålla reda på vilka logiska operatorer som anti-pendlar med felet med hjälp av en vektor från {0, 1}$^{2^k}$. Därför är varje hyperkant *h* också märkt med en av dessa vektorer $\gamma_h$, kallad en logisk etikett. Notera att om koden har ett avstånd på minst tre, har varje hyperkant en unik logisk etikett. Slutligen noterar vi att en avkodningsalgoritm kan välja att förenkla avkodnings-hypergrafen på olika sätt. Ett sätt som vi alltid använder här är processen av deflagging. Flaggmätningar från qubits 16, 18, 21, 23 ignoreras helt enkelt utan några korrigeringar applicerade. Om flagga 11 är icke-trivial och 12 trivial, applicera Z på 2. Om 12 är icke-trivial och 11 trivial, applicera Z på qubit 6. Om flagga 13 är icke-trivial och 14 trivial, applicera Z på qubit 4. Om 14 är icke-trivial och 13 trivial, applicera Z på qubit 8. Se ref. [^15] för detaljer om varför detta är tillräckligt för feltolerans. Detta innebär att istället för att inkludera felkänsliga händelser från flagg-qubit-mätningarna direkt, förbehandlar vi data genom att använda flagg-informationen för att applicera virtuella Pauli Z-korrigeringar och justera efterföljande felkänsliga händelser därefter. Hyperkanter för den deflagrade hypergrafen kan hittas genom stabilisatorsimulering som inkluderar Z-korrigeringarna. Låt *r* beteckna antalet rundor. Efter deflagging är storleken på mängden *V* för Z (resp. X-bas) experiment *|V|* = 6*r* + 2 (resp. 6*r* + 4), på grund av mätning av sex stabilisatorer per runda och två (resp. fyra) initiala felkänsliga stabilisatorer efter tillståndsförberedelse. Storleken på *E* är på liknande sätt *|E|* = 60*r* − 13 (resp. 60*r* − 1) för *r* > 0. Med hänsyn till X- och Z-fel separat kan problemet att hitta en minimalvikt-felkorrigering för surface code reduceras till att hitta en minimalvikt perfekt matchning i en graf [^4]. Matchningsavkodare fortsätter att studeras på grund av deras praktiska genomförbarhet [^27] och breda tillämpbarhet [^28], [^29]. I detta avsnitt beskriver vi matchningsavkodaren för vår distance-3 heavy-hexagon kod. Avkodningsgraferna, en för X-felen (Fig. 1c) och en för Z-felen (Fig. 1d), för minimalvikt perfekt matchning är faktiskt subgrafer av avkodnings-hypergrafen i föregående avsnitt. Låt oss fokusera här på grafen för att korrigera X-fel, eftersom Z-felsgrafen är analog. I detta fall behåller vi från avkodnings-hypergrafen noder *VZ* som motsvarar (skillnaden mellan efterföljande) Z-stabilisatormätningar och kanter (dvs. hyperkanter med storlek två) mellan dem. Dessutom skapas en gränsnod *b*, och storlek-ett hyperkanter av formen {*v*} med *v* ∈ *VZ*, representeras genom att inkludera kanter {*v*, *b*}. Alla kanter i X-felsgrafen ärver frekvenser och logiska etiketter från sina motsvarande hyperkanter (se Tabell 1 för X- och Z-felskantdata för ett 2-rundors experiment). En perfekt matchningsalgoritm tar en graf med viktade kanter och en jämnt stor mängd markerade noder, och returnerar en uppsättning kanter i grafen som kopplar alla markerade noder i par och har en minimal totalvikt bland alla sådana kantuppsättningar. I vårt fall är markerade noder de icke-triviala felkänsliga händelserna (om det finns ett udda antal, markeras även gränsnoden), och kantvikterna är antingen valda att alla vara ett (uniform metod) eller satta som $w_e = -\log(p_e)$, där *p*e är kantfrekvensen (analytisk metod). Det senare valet innebär att den totala vikten av en kantuppsättning är lika med log-sannolikheten för den uppsättningen, och minimalvikt perfekt matchning försöker maximera denna sannolikhet över kanterna i grafen. Givet en minimalvikt perfekt matchning kan man använda de logiska etiketterna på kanterna i matchningen för att besluta om en korrigering av det logiska tillståndet. Alternativt är X-fels (Z-fels) grafen för matchningsavkodaren sådan att varje kant kan associeras med en kod-qubit (eller en mätfelförlåtelse), så att inkludering av en kant i matchningen innebär att en X- (Z-) korrigering ska appliceras på den motsvarande qubitten. Maximal sannolikhetsavkodning (MLD) är en optimal, om än icke-skalbar, metod för att avkoda kvantfelkorrigerande koder. I dess ursprungliga utformning tillämpades MLD på fenomenologiska brusmodeller där fel inträffar precis innan syndrom mäts [^24], [^30]. Detta ignorerar naturligtvis det mer realistiska fallet där fel kan fortplantas genom syndrommätningskretsarna. Mer nyligen har MLD utvidgats för att inkludera kretsbrus [^23], [^31]. Här beskriver vi hur MLD korrigerar kretsbrus med hjälp av avkodnings-hypergrafen. MLD härleder den mest sannolika logiska korrigeringen givet en observation av de felkänsliga händelserna. Detta görs genom att beräkna sannolikhetsfördelningen Pr[β, γ], där β representerar felkänsliga händelser och γ representerar en logisk korrigering. Vi kan beräkna Pr[β, γ] genom att inkludera alla hyperkanter från avkodnings-hypergrafen, Fig. 1c-f, med början från nollfelsfördelningen, dvs. Pr[0$^{|V|}$, 0$^{2^k}$] = 1. Om hyperkanten *h* har frekvensen *ph* att inträffa, oberoende av alla andra hyperkanter, inkluderar vi *h* genom att utföra uppdateringen där $v_h$ är en binär vektorrepresentation av hyperkanten. Denna uppdatering bör appliceras en gång för varje hyperkant i *E*. När Pr[β, γ] har beräknats kan vi använda den för att härleda den bästa logiska korrigeringen. Om β* observeras i en körning av experimentet, indikerar hur mätningar av de logiska operatorerna bör korrigeras. För mer detaljer om specifika implementeringar av MLD, se Metoder "Maximal sannolikhetsimplementeringar". Experimentell realisering För denna demonstration använder vi ibm_peekskill v2.0.0, en 27-qubit IBM Quantum Falcon-processor [^32] vars kopplingskarta möjliggör en distance-3 heavy-hexagon-kod, se Fig. 1. Den totala tiden för qubitmätning och efterföljande villkorlig återställning i realtid, för varje runda, tar 768ns och är densamma för alla qubits. Alla syndrommätningar och återställningar sker samtidigt för förbättrad prestanda. En enkel Xπ-Xπ dynamisk avkopplingssekvens läggs till alla kod-qubits under deras respektive viloperioder. Qubitläckage är en betydande anledning till att den Pauli-depolariserande felmodellen som antas av avkodardesignen kan vara felaktig. I vissa fall kan vi upptäcka om en qubit har läckt ut ur beräkningsunderrummet vid tidpunkten för dess mätning (se Metoder "Post-selektionsmetod" för mer information om post-selektionsmetoden och begränsningar). Med detta kan vi post-selektivt välja körningar av experimentet när läckage inte har upptäckts, liknande ref. [^18]. I Fig. 2a initialiserar vi det logiska tillståndet $|0\rangle$ ($|1\rangle$), och applicerar *r* syndrommätningsrundor, där en runda inkluderar både X- och Z-stabilisatorer (total tid på cirka 5,3 μs per runda, Fig. 1b). Med hjälp av analytisk perfekt matchningsavkodning på hela datamängden (500 000 skott per körning), extraherar vi de logiska felen i Fig. 2a, röda (blå) trianglar. Detaljer om optimerade parametrar som används i analytisk perfekt matchningsavkodning finns i Metoder "IBM_Peekskill och experimentella detaljer". Genom att anpassa hela sönderfallskurvorna (ekv. (14)) upp till 10 rundor, extraherar vi logiskt fel per runda utan post-selektion i Fig. 2b på 0.059(2) (0.058(3)) för $|0\rangle$ ($|1\rangle$) och 0.113(5) (0.107(4)) för $|+\rangle$ ($|-\rangle$). Logiskt fel kontra antal syndrommätningsrundor *r*, där en runda inkluderar både en Z- och en X-stabilisatormätning. Blå trianglar åt höger (röda trianglar) markerar logiska fel erhållna från användning av matchande analytisk avkodning på rå experimentell data för $|0\rangle$ ($|1\rangle$) tillstånd. Ljusblå kvadrater (ljusröda cirklar) markerar de för $|+\rangle$ ($|-\rangle$) med samma avkodningsmetod men med hjälp av läckage-postvaliderade experimentella data. Felstaplar anger samplingfel för varje körning (500 000 skott för rå data, variabelt antal skott för postvaliderad). Streckade linjer visar anpassningar av felfrekvensen per runda plottade i ( ). Tillämpning av samma avkodningsmetod på läckage-postvaliderad data visar en betydande minskning av det totala felet för alla fyra logiska tillstånd. Se Metoder "Post-selektionsmetod" för detaljer om post-selektion. Anpassade avvisningsfrekvenser per runda för $|0\rangle$, $|1\rangle$, $|+\rangle$, $|-\rangle$ är 4,91%, 4,64%, 4,37%, och 4,89%, respektive. Felstaplar anger en standardavvikelse för den anpassade frekvensen. , Med hjälp av postvaliderad data jämför vi logiskt fel erhållet med de fyra avkodarna: matchning uniform (rosa cirklar), matchning analytisk (gröna cirklar), matchning analytisk med mjuk information (grå cirklar), och maximal sannolikhet (blå cirklar). (Se Fig. 6 för $|0\rangle$ och $|1\rangle$). Streckade anpassade frekvenser presenteras i ( ), ( ). Felstaplar anger samplingfel. , Jämförelse av anpassad felfrekvens per runda för alla fyra logiska tillstånd med matchning uniform (rosa), matchning analytisk (grön), matchning analytisk med mjuk information (grå), och maximal sannolikhet (blå) avkodare på läckage-postvaliderad data. Felstaplar representerar en standardavvikelse för den anpassade frekvensen. a b b c d e f e f Tillämpning av samma avkodningsmetod på läckage-postvaliderad data minskar logiska fel i Fig. 2a, och leder till anpassade felfrekvenser på 0.041(1) (0.044(4)) för $|0\rangle$ ($|1\rangle$) och 0.088(3) (0.085(3)) för $|+\rangle$ ($|-\rangle$) som visas i Fig. 2b. Avvisningsfrekvenser per runda från post-selektion för $|0\rangle$, $|1\rangle$, $|+\rangle$, och $|-\rangle$ är 4,91%, 4,64%, 4,37%, och 4,89%, respektive. Se Metoder "Post-selektionsmetod" för detaljer. I Fig. 2c-f jämför vi det logiska felet för varje runda och extraherat logiskt fel per runda erhållet från de postvaliderade datamängderna med de tre avkodarna som beskrivits tidigare i avsnittet "Avkodningsalgoritmer". Vi inkluderar också en version av den analytiska avkodaren som utnyttjar mjuk information [^33], som beskrivs i Metoder "Mjuk informationsavkodning". Vi observerar (se Fig. 2e, f) en konsekvent förbättring i avkodning när vi går från matchning uniform (rosa), till matchning analytisk (grön), till matchning analytisk med mjuk information, till maximal sannolikhet (grå), även om detta är mycket mindre signifikant för X-basens logiska tillstånd. En kvantitativ jämförelse mellan de tre avkodarna för alla fyra logiska tillstånd vid *r* = 2 rundor finns i Metoder "Logiskt fel vid *r* = 2 rundor". Det finns minst tre skäl till varför X-basens tillstånd presterar sämre än Z-basens. Den första är den naturliga asymmetrin i kretsarna. Den större djup som krävs för att mäta Z-stabilisatorer leder till mer tid