Sparse Quantum Codes from Quantum Circuits Steve Flammia QEC 2014 15 December 2014 ETH Zürich Joint work with D Bacon, A W Harrow, and J Shi arxiv:1411.3334
Quantum Error Correction Quantum error correction allows us to deal with the inevitable presence of noise in a quantum computation Most quantum codes are stabilizer codes . Ex: n=4 code that detects any single-qubit Pauli error 4 qubits: Stabilizers: Logical qubits: X = X X S X = X X X = X I L 1 L 2 I I X X X I Z = Z I S Z = Z Z Z = Z Z L 1 L 2 Z I I I Z Z
Subsystem Codes Use excess logical qubits as “gauge’’, and correct errors only up to transformations on this gauge space. Subsystem codes can be sparser , implying simpler syndrome measurements, higher thresholds (sometimes) S X = G 1 X G 2 4 qubits: X S Z = G 1 Z G 2 Z Gauge: Logical: X = X I I X L X = X X G 1 G 2 X = X I I X I I Z = Z Z I I L Z = Z I G 1 G 2 Z = I I Z Z Z I
The Structure of Subsystem Codes Code is defined by a set of gauge generators Elementary errors E j Center Z( G ) of the gauge group is the stabilizer group Logical Gauge (for a choice of signs) generators generators X L , Z L X G , Z G Logical operators commute Stabilizer with G and permute the code generators space (normalizer N( G )) S j * diagram not to scale Bare logical operators act set of n -qubit Pauli operators trivially on the gauge qubits; dressed ones act nontrivially Poulin 2005
Sparse Codes A code family is called [ n , k , d ] if it encodes k logical qubits into n physical qubits and can detect any Pauli error of weight < d . A code with a given set of gauge generators is called s -sparse if: every gauge generator has weight ≤ s every physical qubit is acted on nontrivially by ≤ s gauge generators. ex: row- and column-sparse parity-check matrix A code is called just sparse if s = O(1), independent of n
The Importance of Sparse Codes Only at most s qubits need to be measured at a time, instead of O( n ) ==> higher thresholds, parallelized architectures, simpler decoding algorithms, FTQC with low overhead Ex: topological codes; LDPC codes toric code, color codes, hypergraph product codes, … A major challenge is to find sparse quantum codes that perform well, e.g. with k , d = O( n ) and fast decoders Gallager 1962, MacKay & Neal 1995, Kitaev 2003, Dennis et al . 2001, Raussendorf & Harrington 2007, Tillich & Zémor 2009, Kovalev & Pryadko 2013, Bravyi & Hastings 2013, Gottesman 2013, …
Main Result Theorem 1. Given any [ n 0 , k 0 , d 0 ] quantum stabilizer code with stabilizer gen- erators of weight w 1 , . . . , w n 0 − k 0 , there is an associated [ n, k, d ] quantum subsys- tem code whose gauge generators have weight O (1) and where k = k 0 , d = d 0 , and n = O ( n 0 + P i w i ) . This mapping is constructive given the stabilizer gen- erators of the base code. A systematic way to convert any stabilizer code into a sparse subsystem code with the same k and d parameters The price is an increase in the number of physical qubits equal to the sum of the original generator weights The proof is hard , but the construction itself is quite simple
From Codes to Circuits to Codes Again… ZZ Begin with a stabilizer 00 0 code of your choice 11 1 Write a quantum circuit for time measuring the stabilizers of this code. data input h 0 | | 0 i postselected ancilla measurement preparation
From Codes to Circuits to Codes Again… ZZ Begin with a stabilizer 00 0 code of your choice 11 1 Write a quantum circuit for measuring the stabilizers of this code. Turn the circuit elements into input/output qubits h 0 | | 0 i
From Codes to Circuits to Codes Again… ZZ Begin with a stabilizer 00 0 code of your choice 11 1 Write a quantum circuit for measuring the stabilizers of this code. Turn the circuit elements into input/output qubits h 0 | | 0 i Add gauge generators via Pauli circuit identities . X X | X I
From Codes to Circuits to Codes Again… ZZ Begin with a stabilizer 00 0 code of your choice 11 1 Write a quantum circuit for measuring the stabilizers of this code. Turn the circuit elements into input/output qubits h 0 | | 0 i Add gauge generators via Pauli circuit identities . I I | X X
From Codes to Circuits to Codes Again… ZZ Begin with a stabilizer 00 0 code of your choice 11 1 Write a quantum circuit for measuring the stabilizers of this code. Turn the circuit elements into input/output qubits h 0 | | 0 i Add gauge generators via Pauli circuit identities . Z Z | I I
From Codes to Circuits to Codes Again… ZZ Begin with a stabilizer 00 0 code of your choice 11 1 Write a quantum circuit for measuring the stabilizers of this code. Turn the circuit elements into input/output qubits h 0 | | 0 i Add gauge generators via Pauli circuit identities . Z I | Z Z
From Codes to Circuits to Codes Again… Begin with a stabilizer Circuit element Gauge generators code of your choice Write a quantum circuit for XX, ZZ I measuring the stabilizers ZX, XZ H of this code. Y X, ZZ Turn the circuit elements P into input/output qubits XX X I , I I XX , ZZ I I , Z I ZZ Add gauge generators via Pauli circuit identities h 0 | Z This defines the code | 0 i Z Bravyi 2011 does something similar with “generalized Bacon-Shor” codes
Properties of this Construction Circuits as linear operators preserving the code space V = h 0 | | 0 i V = | 00 i h 00 | + | 11 i h 11 | � � C = span {| 00 i , | 11 i } V is a good circuit General condition: V is good iff V † V = Π C
Properties of this Construction E Circuits as linear operators X X preserving the code space V = Gauge equivalence of E errors: h 0 | | 0 i V E = ± V GE X X Apply gauge operators…
Properties of this Construction Circuits as linear operators preserving the code space Gauge equivalence of errors: h 0 | | 0 i V E = ± V GE Squeegee lemma: using gauge operations, we can localize errors to the initial data qubits
Stabilizer and Logical Operators Spackling : like squeegee, X X X but you leave a residue X X X Spackling of logical operators gives the new h 0 | | 0 i X logical operators Spackling of stabilizers on X X X Z Z Z X X X I I I L X = L Z = the inputs and ancillas are I X I I I I the new stabilizers Z Z Z Z Z I Everything else is gauge or S = Z Z Z S a = Z I I I I I Z Z Z detectable error …what about distance? *even/odd effect means that circuits wires must have odd length
Code Distance and Fault Tolerance For most syndrome-measurement circuits, the new code is uninteresting If we use a fault-tolerant circuit then we preserve the code distance Fault tolerance : for every error pattern E , either V E = 0 or there exists E’ on inputs s.t. V E’ = V E and | E’ | ≤ | E | Strange constraints: Circuit must be Cli ff ord (so no majority vote) No classical feedback or post-processing allowed However, we only need to detect errors
Fault-Tolerant Gadgets Use modified Shor/ 9 > > > = DiVincenzo cat states data block > > > ; Build a cat, and postselect 9 …not fault tolerant h + | | + i > > > = cat h 0 | | 0 i Redeem this idea by block > > > ; h 0 | | 0 i coupling to expanders 9 h 0 | | 0 i > constant-degree > > = parity h 0 | | 0 i expanders exist with block > > > h 0 | | 0 i ; sufficient edge expansion to make this fault tolerant
Wake Up! Theorem 1. Given any [ n 0 , k 0 , d 0 ] quantum stabilizer code with stabilizer gen- erators of weight w 1 , . . . , w n 0 − k 0 , there is an associated [ n, k, d ] quantum subsys- tem code whose gauge generators have weight O (1) and where k = k 0 , d = d 0 , and n = O ( n 0 + P i w i ) . This mapping is constructive given the stabilizer gen- erators of the base code. Created sparse subsystem codes with the same k and d parameters as the base code Used fault-tolerant circuits in a new way, via expanders Extra ancillas are required according to the circuit size
Almost “Good” Sparse Subsystem Codes Start with an [ n 0 ,1, d 0 ] random stabilizer code (so that d 0 =O( n 0 ) with high probability) Concatenate this m times to get an [ n m ,1,d m ] code 0 0 Sum over the stabilizer weights gives n = n O(m) 0 ____ Apply Theorem 1 with m =O( √ log n ) Sparse subsystem codes exist with ____ d = O( n 1 - ε ) and ε = O(1/ √ log n). Best previous distance for sparse codes was ______ d = O( √ n log n ) by Freedman, Meyer, Luo 2002 *Thank you Sergei Bravyi!
Local Subsystem Codes Without Strings Take the circuit construction from the previous result Using SWAP gates and wires, spread the circuit over the vertices of a cubic lattice in D dimensions Let n = L D be the total number of qubits Local subsystem codes exist with ____ d = O( L D -1- ε ) and ε = O(1/ √ log n).
Compared to Known Bounds Local subsystem codes in D dimensions d ≤ O( L D -1 ) Our code: d = Ω ( L D -1- ε ) Best known local stabilizer codes: d =O( L D /2 ) Local commuting projector codes kd 2/( D -1) ≤ O( n ) Our codes: kd 2/( D -1) = Ω ( n ) (use the hypergraph product codes and Thm 1) ____ * ε = O(1/ √ log n) Bravyi & Terhal 2009; Bravyi, Poulin, Terhal 2010; Tillich & Zémor 2009
Recommend
More recommend