Autoren: Sergey Bravyi Andrew W. Cross Jay M. Gambetta Dmitri Maslov Patrick Rall Theodore J. Yoder Zusammenfassung Die Anhäufung physikalischer Fehler , , verhindert die Ausführung von groß angelegten Algorithmen in aktuellen Quantencomputern. Quantenfehlerkorrektur verspricht eine Lösung, indem logische Qubits auf eine größere Anzahl physikalische Qubits kodiert werden, sodass die physikalischen Fehler ausreichend unterdrückt werden, um eine gewünschte Berechnung mit tolerierbarer Genauigkeit ausführen zu können. Die Quantenfehlerkorrektur wird praktisch realisierbar, sobald die Fehlerrate physikalischer Qubits unter einem Schwellenwert liegt, der von der Wahl des Quantencodes, der Syndrommessschaltung und des Dekodierungsalgorithmus abhängt . Wir präsentieren ein End-to-End-Protokoll zur Quantenfehlerkorrektur, das einen fehlertoleranten Speicher auf Basis einer Familie von Low-Density-Parity-Check-Codes (LDPC) implementiert . Unser Ansatz erreicht einen Fehlerschwellenwert von 0,7 % für das Standard-Schaltungsrauschmodell, vergleichbar mit dem Surface-Code , , , , der 20 Jahre lang der führende Code in Bezug auf den Fehlerschwellenwert war. Der Syndrommesszyklus für einen Code der Länge in unserer Familie erfordert Ancilla-Qubits und eine Schaltung der Tiefe 8 mit CNOT-Gattern, Qubit-Initialisierungen und Messungen. Die erforderliche Qubit-Konnektivität ist ein Graph vom Grad 6, der aus zwei kantendisjunkten planaren Teilgraphen besteht. Insbesondere zeigen wir, dass 12 logische Qubits für fast 1 Million Syndromzyklen mit insgesamt 288 physikalischen Qubits erhalten bleiben können, vorausgesetzt einer physikalischen Fehlerrate von 0,1 %, während der Surface-Code fast 3.000 physikalische Qubits benötigen würde, um eine solche Leistung zu erzielen. Unsere Ergebnisse bringen Demonstrationen eines fehlertoleranten Quantenspeichers mit geringem Overhead in Reichweite von Quantenprozessoren der nahen Zukunft. 1 2 3 4 k n 5 6 7 8 9 10 n n Hauptteil Quantencomputing hat Aufmerksamkeit erregt aufgrund seiner Fähigkeit, asymptotisch schnellere Lösungen für eine Reihe von Berechnungsproblemen im Vergleich zu den besten bekannten klassischen Algorithmen anzubieten . Es wird angenommen, dass ein funktionierender skalierbarer Quantencomputer bei der Lösung von Berechnungsproblemen in Bereichen wie wissenschaftliche Entdeckung, Materialforschung, Chemie und Medikamentenentwicklung helfen kann, um nur einige zu nennen , , , . 5 11 12 13 14 Das Haupthindernis beim Bau eines Quantencomputers ist die Fragilität von Quanteninformationen, die auf verschiedene Rauschquellen zurückzuführen ist, die sie beeinflussen. Da die Isolierung eines Quantencomputers von externen Effekten und seine Steuerung zur Induzierung einer gewünschten Berechnung im Widerspruch zueinander stehen, scheint Rauschen unvermeidlich zu sein. Zu den Rauschquellen gehören Unvollkommenheiten in Qubits, verwendeten Materialien, Steuergeräten, Zustandspräparation und Messfehlern sowie eine Vielzahl externer Faktoren, die von lokalen künstlichen Einflüssen wie streuenden elektromagnetischen Feldern bis hin zu universellen Faktoren wie kosmischer Strahlung reichen. Siehe Ref. für eine Zusammenfassung. Während einige Rauschquellen mit besserer Steuerung , Materialien und Abschirmung , , eliminiert werden können, scheinen mehrere andere Quellen, wenn überhaupt, nur schwer zu entfernen zu sein. Letztere können spontane und stimulierte Emissionen in eingeschlossenen Ionen , sowie die Wechselwirkung mit dem Bad (Purcell-Effekt) in supraleitenden Schaltungen umfassen – beides führende Quantentechnologien. Daher wird Fehlerkorrektur zu einer Schlüsselanforderung für den Bau eines funktionierenden skalierbaren Quantencomputers. 15 16 17 18 19 20 1 2 3 Die Möglichkeit der Quantenfehlertoleranz ist gut etabliert . Die redundante Kodierung eines logischen Qubits in viele physikalische Qubits ermöglicht die Diagnose und Korrektur von Fehlern durch wiederholtes Messen von Syndromen von Paritätsprüfoperatoren. Fehlerkorrektur ist jedoch nur dann vorteilhaft, wenn die Hardware-Fehlerrate unter einem bestimmten Schwellenwert liegt, der von einem bestimmten Fehlerkorrekturprotokoll abhängt. Die ersten Vorschläge für die Quantenfehlerkorrektur, wie z. B. verkettete Codes , , , konzentrierten sich auf die Demonstration der theoretischen Möglichkeit der Fehlerunterdrückung. Mit zunehmendem Verständnis der Quantenfehlerkorrektur und der Fähigkeiten von Quantentechnologien verlagerte sich der Fokus auf die Suche nach praktischen Quantenfehlerkorrekturprotokollen. Dies führte zur Entwicklung des Surface-Codes , , , , der einen hohen Fehlerschwellenwert nahe 1 % bietet, schnelle Dekodierungsalgorithmen und Kompatibilität mit bestehenden Quantenprozessoren, die auf zweidimensionalen (2D) quadratischen Gitter-Qubit-Konnektivität angewiesen sind. Kleine Beispiele des Surface-Codes mit einem einzigen logischen Qubit wurden bereits experimentell von mehreren Gruppen demonstriert , , , , . Die Skalierung des Surface-Codes auf 100 oder mehr logische Qubits wäre jedoch aufgrund seiner geringen Kodierungseffizienz unerschwinglich teuer. Dies weckte Interesse an allgemeineren Quantencodes, den sogenannten Low-Density-Parity-Check (LDPC)-Codes . Jüngste Fortschritte in der Untersuchung von LDPC-Codes deuten darauf hin, dass sie Quantenfehlertoleranz mit einer wesentlich höheren Kodierungseffizienz erreichen können . Hier konzentrieren wir uns auf die Untersuchung von LDPC-Codes, da unser Ziel darin besteht, Quantenfehlerkorrekturcodes und -protokolle zu finden, die sowohl effizient als auch praktisch demonstrierbar sind, angesichts der Einschränkungen von Quantencomputertechnologien. 4 21 22 23 7 8 9 10 24 25 26 27 28 6 29 Ein Quantenfehlerkorrekturcode ist vom LDPC-Typ, wenn jeder Prüfoperator des Codes nur auf wenige Qubits wirkt und jedes Qubit an nur wenigen Prüfungen beteiligt ist. Mehrere Varianten von LDPC-Codes wurden kürzlich vorgeschlagen, darunter hyperbolische Surface Codes , , , Hypergraph-Produkt , Balancierte Produktcodes , Zwei-Block-Codes basierend auf endlichen Gruppen , , , und Quanten-Tanner-Codes , . Letztere wurden als asymptotisch „gut“ gezeigt , im Sinne eines konstanten Kodierungsrates und einer linearen Distanz: ein Parameter, der die Anzahl der korrigierbaren Fehler quantifiziert. Im Gegensatz dazu hat der Surface-Code eine asymptotisch Null-Kodierungsrate und nur eine Distanz der Quadratwurzel. Der Ersatz des Surface-Codes durch einen LDPC-Code mit hoher Rate und hoher Distanz könnte erhebliche praktische Auswirkungen haben. Erstens könnte der Overhead für Fehlertoleranz (das Verhältnis zwischen der Anzahl physikalischer und logischer Qubits) deutlich reduziert werden. Zweitens zeigen Codes mit hoher Distanz eine sehr starke Abnahme der logischen Fehlerrate: Wenn die physikalische Fehlerrate den Schwellenwert überschreitet, kann die vom Code erreichte Fehlerunterdrückung um Größenordnungen zunehmen, selbst bei einer kleinen Reduzierung der physikalischen Fehlerrate. Diese Eigenschaft macht LDPC-Codes mit hoher Distanz attraktiv für Demonstrationen in der nahen Zukunft, die wahrscheinlich im Bereich nahe dem Schwellenwert operieren. Es wurde jedoch zuvor angenommen, dass die Übererfüllung des Surface-Codes für realistische Rauschmodelle, einschließlich Speicher-, Gate- und Zustandspräparations- und Messfehlern, sehr große LDPC-Codes mit mehr als 10.000 physikalischen Qubits erfordern könnte . 30 31 32 33 34 35 36 37 38 39 40 39 40 31 Hier präsentieren wir mehrere konkrete Beispiele für LDPC-Codes mit hoher Rate und wenigen hundert physikalischen Qubits, ausgestattet mit einer Syndrommessschaltung mit geringer Tiefe, einem effizienten Dekodierungsalgorithmus und einem fehlertoleranten Protokoll zur Adressierung einzelner logischer Qubits. Diese Codes zeigen einen Fehlerschwellenwert nahe 0,7 %, eine hervorragende Leistung im Bereich nahe dem Schwellenwert und bieten eine 10-fache Reduzierung des Kodierungs-Overheads im Vergleich zum Surface-Code. Die Hardwareanforderungen für die Realisierung unserer Fehlerkorrekturprotokolle sind relativ mild, da jedes physikalische Qubit durch Zwei-Qubit-Gatter mit nur sechs anderen Qubits gekoppelt ist. Obwohl der Qubit-Konnektivitätsgraph nicht lokal in ein 2D-Gitter eingebettet werden kann, kann er in zwei planare Teilgraphen vom Grad 3 zerlegt werden. Wie wir unten erörtern, ist eine solche Qubit-Konnektivität gut geeignet für Architekturen, die auf supraleitenden Qubits basieren. Unsere Codes sind eine Verallgemeinerung von Bicycle-Codes, die von MacKay et al. vorgeschlagen wurden und in refs. , , tiefer untersucht wurden. Wir nannten unsere Codes bivariate Bicycle (BB), weil sie auf bivariaten Polynomen basieren, wie in den detailliert beschrieben. Dies sind Stabilisatorcodes vom Calderbank–Shor–Steane (CSS)-Typ , , die durch eine Sammlung von Sechs-Qubit-Prüfoperatoren (Stabilisatoren) aus den Pauli-Operatoren und beschrieben werden können. Auf hoher Ebene ähnelt ein BB-Code dem zweidimensionalen Toric-Code . Insbesondere können physikalische Qubits eines BB-Codes auf einem zweidimensionalen Gitter mit periodischen Randbedingungen angeordnet werden, sodass alle Prüfoperatoren aus einem einzigen Paar von - und -Prüfungen durch Anwendung horizontaler und vertikaler Verschiebungen des Gitters gewonnen werden. Im Gegensatz zu den Plaquette- und Vertex-Stabilisatoren, die den Toric-Code beschreiben, sind die Prüfoperatoren von BB-Codes jedoch nicht geometrisch lokal. Darüber hinaus wirkt jede Prüfung auf sechs Qubits statt auf vier Qubits. Wir werden den Code durch einen Tanner-Graphen beschreiben, sodass jeder Knoten von entweder ein Datenqubit oder ein Prüfoperator ist. Ein Prüfknoten und ein Datenknoten sind durch eine Kante verbunden, wenn der -te Prüfoperator nicht-trivial auf den -ten Datenqubit wirkt (durch Anwendung von Pauli oder ). Siehe Abb. für Beispiel-Tanner-Graphen von Surface- und BB-Codes. Der Tanner-Graph jedes BB-Codes hat den Knotengrad sechs und eine Graphendicke von zwei, was bedeutet, dass er in zwei kantendisjunkte planare Teilgraphen zerlegt werden kann ( ). Eine Konnektivität von Qubits mit Dicke 2 eignet sich gut für supraleitende Qubits, die durch Mikrowellenresonatoren gekoppelt sind. Zum Beispiel können zwei planare Schichten von Kopplern und ihre Steuerleitungen an die Ober- und Unterseite des Qubits enthaltenden Chips angebracht und die beiden Seiten miteinander verbunden werden. 41 35 36 42 Methoden 43 44 X Z 7 X Z G G i j i j X Z 1a,b 29 Methoden , Tanner-Graph eines Surface-Codes zum Vergleich. , Tanner-Graph eines BB-Codes mit Parametern [] auf einem Torus eingebettet. Jede Kante des Tanner-Graphen verbindet einen Daten- und einen Prüfknoten. Die Datenqubits, die den Registern ( ) und ( ) zugeordnet sind, werden durch blaue und orange Kreise dargestellt. Jeder Knoten hat sechs anliegende Kanten, darunter vier Kurzstreckenkanten (nach oben, unten, links und rechts zeigend) und zwei Langstreckenkanten. Wir zeigen nur wenige Langstreckenkanten, um Unübersichtlichkeit zu vermeiden. Gestrichelte und durchgezogene Kanten zeigen zwei planare Teilgraphen, die den Tanner-Graphen überspannen, siehe die . , Skizze einer Tanner-Graphen-Erweiterung zur Messung von und nach Ref. , die an einen Surface-Code angeschlossen wird. Das Ancilla, das der -Messung entspricht, kann an einen Surface-Code angeschlossen werden, was Lade-Speicher-Operationen für alle logischen Qubits mittels Quantenteleportation und einigen logischen Einheiten ermöglicht. Dieser erweiterte Tanner-Graph hat auch eine Implementierung in einer Architektur der Dicke 2 durch die - und -Kanten ( ). a b q L q R Methoden c 50 A B Methoden Ein BB-Code mit Parametern [[ , , ]] kodiert logische Qubits in Daten-Qubits, die eine Code-Distanz bieten, was bedeutet, dass jeder logische Fehler mindestens Daten-Qubits umfasst. Wir teilen Daten-Qubits in die Register ( ) und ( ) mit jeweils /2 Qubits auf. Jede Prüfung wirkt auf drei Qubits aus ( ) und drei Qubits aus ( ). Der Code verwendet Ancilla-Prüf-Qubits zur Messung des Fehler-Syndroms. Wir teilen Prüf-Qubits in die Register ( ) und ( ) mit jeweils /2 Qubits auf, die die Syndrome vom Typ und sammeln. Insgesamt basiert die Kodierung auf 2 physikalischen Qubits. Die Netto-Kodierungsrate ist daher = /(2 ). Beispielsweise kodiert die Standardarchitektur des Surface-Codes = 1 logisches Qubit in = 2 Daten-Qubits für einen Code der Distanz und verwendet − 1 Prüf-Qubits für Syndrommessungen. Die Netto-Kodierungsrate beträgt ≈ 1/(2 2), was schnell unpraktisch wird, da man gezwungen ist, eine große Code-Distanz zu wählen, z. B. weil die physikalischen Fehler nahe dem Schwellenwert liegen. Im Gegensatz dazu haben BB-Codes eine Kodierungsrate ≫ 1/ 2, siehe Tabelle für Code-Beispiele. Soweit wir wissen, sind alle in Tabelle gezeigten Codes neu. Der Code der Distanz 12 [] ist möglicherweise am vielversprechendsten für Demonstrationen in der nahen Zukunft, da er eine große Distanz und eine hohe Netto-Kodierungsrate = 1/24 kombiniert. Zum Vergleich hat der Surface-Code der Distanz 11 eine Netto-Kodierungsrate von = 1/241. Nachfolgend zeigen wir, dass der BB-Code der Distanz 12 den Surface-Code der Distanz 11 für den experimentell relevanten Bereich von Fehlerraten übertrifft. 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 Um die Anhäufung von Fehlern zu verhindern, muss die Fehlersyndrommessung häufig genug möglich sein. Dies geschieht durch eine Syndrommessschaltung, die Daten-Qubits im Träger jedes Prüfoperators mit dem jeweiligen Ancilla-Qubit durch eine Sequenz von CNOT-Gattern koppelt. Die Prüf-Qubits werden dann gemessen, was den Wert des Fehler-Syndroms offenbart. Die Zeit, die zum Implementieren der Syndrommessschaltung benötigt wird, ist proportional zu ihrer Tiefe: der Anzahl der Gatterschichten, die aus nicht überlappenden CNOTs bestehen. Da während der Ausführung der Syndrommessschaltung weiterhin neue Fehler auftreten, sollte ihre Tiefe minimiert werden. Der vollständige Zyklus der Syndrommessung für einen BB-Code ist in Abb. dargestellt. Der Syndromzyklus erfordert nur sieben Schichten von CNOTs, unabhängig von der Codierungslänge. Die Prüf-Qubits werden zu Beginn und am Ende des Syndromzyklus initialisiert und gemessen (siehe die für Details). Die Schaltung respektiert die zyklische Verschiebungssymmetrie des zugrundeliegenden Codes. 2 Methoden Vollständiger Zyklus von Syndrommessungen, der auf sieben Schichten von CNOTs basiert. Wir bieten eine lokale Ansicht der Schaltung, die nur ein Daten-Qubit aus jedem Register ( ) und ( ) enthält. Die Schaltung ist symmetrisch bezüglich horizontaler und vertikaler Verschiebungen des Tanner-Graphen. Jedes Daten-Qubit ist über CNOTs mit drei *X-*Prüf- und drei *Z-*Prüf-Qubits verbunden: siehe die für weitere Details. q L q R Methoden Das vollständige Fehlerkorrekturprotokoll führt c ≫ 1 Syndrommesszyklen durch und ruft dann einen Dekodierer auf: einen klassischen Algorithmus, der als Eingabe die gemessenen Syndrome nimmt und eine Vermutung über den endgültigen Fehler auf den Daten-Qubits ausgibt. Die Fehlerkorrektur ist erfolgreich, wenn die vermutete und die tatsächliche Fehler übereinstimmen modulo einem Produkt von Prüfoperatoren. In diesem Fall haben die beiden Fehler die gleiche Wirkung auf jeden kodierten (logischen) Zustand. Das Anwenden der Umkehrung des vermuteten Fehlers bringt die Daten-Qubits also in den ursprünglichen logischen Zustand zurück. Andernfalls, wenn die vermutete und die tatsächliche Fehler durch einen nicht-trivialen logischen Operator abweichen, schlägt die Fehlerkorrektur fehl und führt zu einem logischen Fehler. Unsere numerischen Experimente basieren auf dem Belief Propagation mit einem Ordered Statistics Decoder (BP-OSD), der von Panteleev und Kalachev vorgeschlagen wurde . Die Originalarbeit beschrieb BP-OSD im Kontext eines Spielzeug-Rauschmodells nur mit Speicherfehlern. Hier zeigen wir, wie BP-OSD auf das schaltungsbasierte Rauschmodell erweitert werden kann, siehe die für Details. Unser Ansatz folgt eng den Refs. , , , . N 36 36 Ergänzende Informationen 45 46 47 48 Eine verrauschte Version der