Pseudocodeword-based Decoding of Quantum Stabilizer Codes
aa r X i v : . [ c s . I T ] M a y Pseudocodeword-based Decodingof Quantum Stabilizer Codes
July X. Li and Pascal O. Vontobel
Department of Information Engineering, The Chinese University of Hong Kong, Hong KongEmail: {july.x.li, pascal.vontobel}@ieee.org
Abstract —It has been shown that graph-cover pseudocode-words can be used to characterize the behavior of sum-productalgorithm (SPA) decoding of classical codes. In this paper,we leverage and adapt these results to analyze SPA decodingof quantum stabilizer codes. We use the obtained insights toformulate modifications to the SPA that overcome some of itsweaknesses.
I. I
NTRODUCTION
Graph covers have been shown to be a useful tool foranalyzing sum-product algorithm (SPA) decoding of classicalcodes [1]. The task of analyzing the behavior of SPA decodingfor quantum stabilizer codes is more challenging, especiallybecause the degeneracy of quantum stabilizer codes needs tobe taken into account. Despite these challenges, being able tounderstand and improve the behavior of the SPA is highlydesirable, since it has been observed that the performanceof the SPA is far from satisfactory when decoding quantumstabilizer codes of high degeneracy (see, e.g., the discussionof simulation results of various massage-passing iterativedecoding algorithms and LP decoders in [2]–[4]).In this paper, in a first step, we use graph-cover pseu-docodewords to analyze the behavior of SPA. In particular,we can show that the decoding ability of the SPA is limitedby the minimum distance of the normalizer label code, whichis a serious problem for quantum LDPC codes, e.g., the toriccodes [5] and MacKay’s bicycle codes [6], where the minimumdistance of the normalizer label code is no larger than the rowweight of its parity-check matrix due to the self-orthogonalityof the stabilizer label code.In a second step, we use the obtained insights to formulatemodifications to the SPA that overcome some of its weak-nesses. Taking advantage of the degeneracy of the quantumstabilizer code, the performance of the decoder is then limitedby the minimum distance of the quantum stabilizer code d instead of the minimum distance of the normalizer label code d N . For notational details, see Section II-A.This paper is organized as follows. In Section II, we reviewsome basic notations including the stabilizer formalism andthe standard SPA for quantum stabilizer codes. In Section III,we analyze the performance of SPA for quantum stabilizercodes and give some other theoretical results about degeneratedecoders of quantum stabilizer codes. In Section IV, wepropose, first, some methods to improve the performance ofthe SPA for general quantum stabilizer codes and, second, Supported in part by RGC GRF grant 2150965. a pseudocodeword-based decoder for quantum cycle codes.Finally, we show some simulation results in Section V.II. B
ASICS
A. Quantum Stabilizer Formalism
We refer the readers to [7], [8] for a detailed introduc-tion to quantum stabilizer codes, some recent developmentsof quantum error-correction codes, and more details of thenotations. Moreover, see [3] for the use of pseudocodewordsin the context of quantum stabilizer codes. Due to the pagelimitations, we only introduce the essential notations whichare used throughout the paper.Consider an J n, k, d K quantum stabilizer code C of length n ,dimension k , and minimum distance d . The quantum stabilizercode C may be characterized using the equivalent binary rep-resentation of its stabilizer, namely its binary stabilizer labelcode B , which is self-orthogonal under the symplectic innerproduct to guarantee the commutativity of the generators of thestabilizer. The binary representation of a Pauli operator on n qubits is a length- n binary vector v = [ v , ..., v n ] ∈ (cid:0) F (cid:1) n ,where each v i is obtained by mapping I , X , Y , and Z onto F as follows I [0 , , X [1 , , Y [1 , , and Z [0 , , and the weights of them are defined to be, respectively, wt([0 , , and wt([1 , , , , . In this paper, we make the following assumptions: • the normalizer label code N is the dual code of B under the symplectic inner product (note that the self-orthogonality of B implies that B ⊆ N ); • both B and N are binary linear codes of length n andof dimension n − k and n + k , respectively; • the weight of v is wt( v ) , P i wt( v i ) ; • d , min v ∈N \B wt( v ) and t , (cid:4) d − (cid:5) ; • d N , min v ∈N wt( v ) and t N , (cid:4) d N − (cid:5) .A quantum stabilizer code C is called a quantum cycle codeif its normalizer label code N is a cycle code, which meansthat the number of ’s per column of the parity-check matrix H describing N is two. For example, the toric codes are quantumcycle codes (see, e.g., [5], [9]).The quantum channel that we use in this paper is thequantum depolarizing channel (QDCh). Similar to the binarysymmetric channel (BSC), the action of a QDCh with depolar-izing probability p is such that it acts independently on eachubit: a qubit is either unchanged with probability − p , or af-fected by a unitary operator X , Y , or Z , each with probability p/ . Since we are decoding with respect to binary normalizerlabel codes, decoding is based on approximating the QDCh bytwo independent BSCs with crossover probability p/ , i.e.,the probability for having a bit-flip and a phase-flip is p/ independently for each qubit. Definition 1.
Given a syndrome s ∈ F n − k , let s t ( s ) be the mapping giving a coset representative of the coset of N corresponding to the syndrome s . Note that if e is thebinary representation of the actual error, then H e T = s T and e ∈ t ( s ) + N .A non-degenerate decoder D ND outputs a vector based onthe syndrome s ; an error vector v leads to a decoding error for D ND if v = D ND ( v H T ) . A degenerate decoder D D outputs acoset of B based on the syndrome s ; an error vector v leads toa decoding error for D D if v / ∈ D D ( v H T ) . The blockwise ML(non-)degenerate decoders D MLND , D ML ∗ D , and D MLD are definedto be, respectively, D MLND ( s ) , arg min v ∈ t ( s )+ N wt( v ) , D ML ∗ D ( s ) , D MLND ( s ) + B , D MLD ( s ) , arg max ℓ + B : ℓ ∈ t ( s )+ N p ( ℓ + B| s ) , where p ( ℓ + B| s ) is the probability of the coset ℓ + B basedon the syndrome s . (cid:4) For the simulations in this paper, there is a decoding errorif the output vector is not in the same coset of B as the actualerror or the output coset is not the same coset of B as thecoset of the actual error. B. SPA decoding, graph covers, and pseudocodewords
SPA decoding of a quantum stabilizer code C consists ofthe following steps: 1) running the SPA on a factor graphrepresenting a coset of the normalizer label code N , wherethe coset is defined by the syndrome s that is obtained fromsuitable quantum measurements; 2) outputting a vector v ,3) finding the coset of B containing v . (For further details,see, e.g., [2, Section IV].) In this paper, the factor graphsare normal factor graphs, where variables are associated withedges.It was shown in [10] that fixed points of the SPA correspondto stationary points of the Bethe free energy function. Asdiscussed in [1], for LDPC codes this means that the beliefsobtained at a fixed point of the SPA induce a pseudocodeword ω . For example, if we consider a binary linear code, then the i th component of ω is ω i , b i (1) assuming the belief ofthe i th variable is [ b i (0) , b i (1)] . The paper [1] also introducedthe symbolwise graph-cover decoder, a decoder that findsthe pseudocodeword with minimal Bethe free energy, or,equivalently, the pseudocodoword with the most pre-images inall M -covers of the base normal factor graph (after properlydiscounting for a channel-output-dependent term), when M goes to infinity. For general codes, symbolwise graph-coverdecoding is an approximation of the true behavior of SPA decoding. However, for cycle codes it was shown in [11]that SPA decoding is equivalent to symbolwise graph-coverdecoding. Note that, although symbolwise graph-cover decod-ing is based on M -covers where M goes to infinity, in manyinstances the study of pseudocodewords induced by codewordsin M -covers for small M gives already many insights into thesuboptimality of SPA decoding (see, e.g., the upcoming Fig. 2that shows an M -cover for M = 2 ).III. T HEORETICAL A NALYSIS
In this section we characterize the performance of the non-degenerate and degenerate decoders defined in Definition 1.In particular, in Theorems 2 and 3 we prove that the mini-mum weight of errors that the non-degenerate and degeneratedecoders fail to decode are t N + 1 and t + 1 , respectively.Moreover, in Theorems 4 and 5, we show two types ofdecoding errors limiting the performance of SPA decoding ofquantum cycle codes. Theorem 2.
The minimum weight of errors leading to decod-ing errors for D MLND is t N + 1 .Proof. See Appendix A.
Theorem 3.
The minimum weights of errors leading to de-coding errors for D MLD and D ML ∗ D both are t + 1 .Proof. See Appendix B.
Theorem 4.
The minimum weight of errors that the SPA failsto decode for a toric code is . For a J L , , L K toric codewith L ≥ , the number of such weight- errors is L .Proof. For a J L , , L K toric code C with L < , it cannotcorrect some weight-2 errors because of its minimum distance.For a J L , , L K toric code C with L ≥ , there are two typesof weight- errors that cannot be corrected using SPA decodingas shown in Fig. 1. (Here and for other similar figures we usethe drawing conventions listed in Table I; moreover, edgeswith components close to are not drawn). For both cases,we obtain an SPA pseudocodeword ω = [ ω, ω, ω, ω ] , for some ω ∈ (0 , . When the SPA decoder makes hard decisions basedon ω , it outputs either [0 , , , or [1 , , , and hence fails tomatch the syndrome. The minimum weight of errors resultingin decoding failures for toric codes is , since weight- errorscan be corrected. If we count the number of such weight- errors, there are in each length- cycle and L in total.For a quantum cycle code with even d N , the minimumweight of errors that the SPA fails to decode is no larger than d N / because of similar problems as in Fig. 1. Theorem 5.
The minimum weight of errors that the SPA failsto decode for a toric code is no larger than d N .Proof. We want to show that there exist errors of weight d N that the SPA fails to decode. Since the minimum weight ofvectors in the normalizer label code N is d N , there existsa cycle of length d N in N and we assume that the erroris a path of length d N starting from any check involvedABLE I: Drawing conventions for figures. empty vertex s i = 0 for syndrome bit associated with i -th parity checkfilled vertex s i = 1 for syndrome bit associated with i -th parity checkblack edge channel introduced no error at that locationred edge channel introduced an error at that location
111 1 111 1
Fig. 1: Rescaled pseudocodewords of a toric code.......
12 1212 12 12 1212 Fig. 2: Pseudocodewords (blue or red) of a toric code. (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25) (26)
Fig. 3: A rescaled pseudocodeword of a toric code, wherecomponent ˜ ω i and index ( i ) are shown next to the i th edge.in that cycle. Fig. 2 is a -cover of the relevant part of atoric code. We claim that the SPA cannot decode the above-mentioned error. The reason is as follows. There are twovalid configurations in the 2-cover, where the red one can beprojected down as a codeword with a valid syndrome, whilethe blue one cannot. The components of the pseudocodewordsresulting from these valid configurations are shown next to thecorresponding edges in Fig. 2. The SPA pseudocodeword is alinear combination of such pseudocodewords, e.g., a rescaledSPA pseudocodeword in Fig. 3, and the SPA decoder fails tooutput a vector with a valid syndrome no matter how to scalesuch SPA pseudocodeword.More generally, for quantum cycle codes, the SPA failsto decode errors of minimum weight no larger than d N forsimilar reasons. IV. P SEUDOCODEWORD - BASED D ECODING
If we want to improve the performance of SPA of quantumstabilizer cycle codes, or, more generally, quantum stabilizercodes, the first task is to address the problem mentioned in theproof of Theorem 4 by breaking the symmetry of the SPA toavoid ending up with pseudocodewords like the ones in Fig. 1.
A. Reweighted SPA Decoding
Our first approach is to use the reweighted SPA decod-ing proposed in [12], which reweights message calculations.However, instead of uniformly reweighing the messages, werandomly select weights from a certain interval. We callthe resulting algorithm randomly reweighted SPA (RR-SPA).Empirically, this method can improve the performance of SPAdecoding of the toric codes, but there is not much improvementfor MacKay’s bicycle codes.
B. Initial-message-reweighted SPA of Quantum StabilizerCodes
In order to introduce our second approach, we recall thatthe SPA is based on the log-likelihood ratios (LLRs) γ i , log (cid:16) Pr( E i =0)Pr( E i =1) (cid:17) and the syndrome s . Our second approachis called initial-message-reweighted SPA (IMR-SPA) and de-scribed in Algorithm 1. The IMR-SPA also runs the SPA,however, with the reweighted LLRs, i.e., γ i is replaced by α i γ i , where α i is a weighting factor randomly generatedfrom some interval. Empirically, it is observed that the RR-SPA and the IMR-SPA have similar performance for the toriccodes. From an analysis point of view, the IMR-SPA may bepreferable compared to the RR-SPA and other approaches likerandom perturbation [13], because after suitable adapations,we can apply the Bethe free energy framework [1], [10], [11]to analyze the IMR-SPA.We briefly explain why the IMR-SPA helps to improve theperformance of SPA decoding of quantum stabilizer codes.Namely, assume that we know, for analysis purposes, theactual error vector ˜ e . For SPA decoding, using the LLR vector γ with the syndrome s is equivalent to using the LLR vector ˜ γ , where ˜ γ i , ( − ˜ e i γ i , with the syndrome . SPA decodingsucceeds when it converges to the all-zero vector based on theLLR vector ˜ γ and the syndrome . The IMR-SPA changesthe LLR vector for the standard SPA from ˜ γ i to be α i ˜ γ i andhence may move some ˜ γ from the “bad” region to the “good”region in which the SPA converges to the all-zero vector. C. Pseudocodeword-based Decoder of Quantum Cycle Codes
For quantum cycle codes, the IMR-SPA decoding canimprove the minimum weight of errors leading to decodingfailures beyond d N / , but it is still limited by the prob-lems mentioned in Theorem 5. Therefore, we propose apseudocodeword-based decoder abbreviated as SPA+PCWD,which is described in Algorithm 2, to further improve theperformance of SPA decoding for quantum cycle codes. WhenSPA decoding fails to output a vector with valid syndrome,we hope to make use of the SPA pseudocodeword to obtainone with valid syndrome. There are two difficulties in this lgorithm 1 Initial-message-reweighted SPA (IMR-SPA)
Input: the syndrome s , the maximum number of SPA itera-tions, and the reweighting range [ a, b ] . Output: v + B . Use SPA to obtain an output vector v . if H v T = s T (equivalently v ∈ t ( s ) + N ) then Output v + B . else while H v T = s T do For the i th variable, randomly generate a weightingfactor α i ∈ [ a, b ] and reweight the LLR to the SPAfrom γ i to be α i γ i . Use SPA to obtain an output vector v .{Set the max. number of trial times if necessary.} end while Output v + B . end if task: 1) the components contributed by codewords from graphcovers without a valid syndrome need to be removed; 2) thecomponents contributed by codewords from graph covers witha valid syndrome are mixed together and need to be separated.The main idea of the decoder is to first decompose thepseudocodeword ω into a set of paths and then output avector v with a valid syndrome, where the support of v isdetermined by a collection of paths. The paths are obtained bystarting from an unsatisfied check s i and by always followingthe edge with the largest possible component of ω for thenext step without repetition until reaching an unsatisfied check s i ′ , where the weight of the path is defined as the minimumcomponent of ω on that path. The contribution of that pathfrom the pseudocodeword is then subtracted and the pathis included in the set of candidate paths. We use a simpleexample to explain the procedure of Algorithm 2. Example 6.
Consider a J L , , L K toric code of L = 9 and p = 0 . . We obtain an SPA pseudocodeword ω after 100iterations. The rescaled pseudocodeword ˜ ω , ω / . isshown in Fig. 3, where edges with component ˜ ω i < . areomitted. First, by Algorithm 3 we can obtain a set of paths P ,e.g., P = { , , , } and P = { , , , } with ˆ ω i = 2 and S i = { , } for i = 1 , . Then, Algorithm 2 picks anarbitrary path P i ∗ since their costs are the same and outputs v + B , where the support of v is determined by P i ∗ .V. S IMULATION R ESULTS
Fig. 4 shows some simulation results of SPA+LPPCWDdecoding of toric codes described in Algorithm 2, wherewe use at most 100 iterations of SPA to obtain SPA pseu-docodewords. According to the simulation results in [4], theperformance of the original SPA gets worse as the code blocklength of toric codes increases. As shown in Fig. 4, theperformance of the SPA+LPPCWD improves as the code blocklength of toric codes increases and the SPA+LPPCWD hassimilar performance as the neural belief-propagation decoder
Algorithm 2
Pseudocodeword-based decoder (SPA+PCWD)for quantum cycle codes
Input: the syndrome s and the max. number of SPA iterations. Output: v + B . Use SPA to find an output vector v and obtain an SPApseudocodeword ω . if H v T = s T then Return v + B . else Obtain P = { P i } , { S i } , and ˆ ω by Algorithm 3. v ← . J ← { j | s j = 0 } {The index set of unsatisfied checks.} while J 6 = ∅ and P = ∅ do i ← arg min j : P j ∈ P (1 − ˆ ω j ) · | P j | . {Minimize cost.} v j ← ∀ j ∈ P i . {Update v w.r.t. P i .} J ← J \ S i . {Update unsatisfied checks.} P ← (cid:8) P j ∈ P (cid:12)(cid:12) S j ⊆ J , P j ⊆ { ℓ | v ℓ = 0 } (cid:9) .{Update the set of available paths.} end while {A modification of this algorithm with the above whileloop replaced by an LP with cost for each path P i as λ i , (1 − ˆ ω i ) · | P i | is referred as SPA+LPPCWD.} end ifAlgorithm 3 Pseudocodeword decomposition (PCWD) forquantum cycle codes
Input: a pseudocodeword ω and the syndrome s . Output:
A set of paths P = { P i } , a set of corresponding endchecks S = { S i } , and a weight vector ˆ ω . J ← { j | s j = 0 } , P ← ∅ , and S ← ∅ . while J 6 = ∅ do Start from each s j , j ∈ J , and follow the edge with thelargest possible component of ω at each step withoutrepetition until reaching s j ′ , j ′ ∈ J , to obtain a path P j with weight ¯ ω j ← min ℓ ∈ P j ω ℓ and S j ← { j, j ′ } . i ← arg min j : P j ∈ P (1 − ¯ ω j ) ·| P j | . {Find min. cost one.} ω ℓ ← ω ℓ − ¯ ω i ∀ ℓ ∈ P i . {Subtract P i ’s contribution.} P ← P ∪ { P i } , S ← S ∪ { S i } , and ˆ ω i ← ¯ ω i if i = i ′ .{Include P i in P if P i is a path.} J ← J \{ j ∈ J | ¯ ω j = 0 } . {Remove isolated checks.} end while in [4] and the Markov chain Monte Carlo algorithm in [14].Fig. 5 shows the weight distribution of the decoding errorsof SPA+PCWD decoding of toric codes, where the minimumweight of errors increases as the block length increases. Wealso observed that the IMR-SPA and the RR-SPA have similarperformance as the SPA+PCWD for toric codes with L < ,but unfortunately they are limited by some weight- errors for L ≥ .Fig. 6 shows some simulation results of the IMR-SPA ofa J , K MacKay’s bicycle code with the total row weight − − − − − − − − − depolarizing probability p w o r d e rr o rr a t e ( W E R ) L = 3 L = 5 L = 7 L = 9 L = 11 Fig. 4: Simulation results of SPA+LPPCWD for toric codes. − − depolarizing probability p w e i gh t d i s t r i bu ti ono f d ec od i ng e rr o r s L = 3 avg L = 3 min L = 5 avg L = 5 min L = 7 avg L = 7 min L = 9 avg L = 9 min L = 11 avg L = 11 min Fig. 5: Weight distribution of decoding errors of SPA+PCWDfor toric codes (solid: average, dashed: minimum). for N . The maximum number of iterations of SPA is 100and the maximum number of IMR trials is 10. The IMR-SPAachieves lower WER at around p = 10 − compared with thethe neural belief-propagation decoder [4] for MacKay’s bicyclecodes with the same parameters.A PPENDIX AP ROOF OF T HEOREM N containsat most one vector of weight less than or equal to t N and thereexists some coset of N containing two vectors of weights lessthan or equal to t N + 1 , one of which is a decoding error.Let the set of decoding errors and the minimum weightof decoding errors for D BA be E BA , F n \ (cid:0) ∪ s D BA ( s ) (cid:1) and − − − − − − − − depolarizing probability p w o r d e rr o rr a t e ( W E R ) SPAIMR-SPA
Fig. 6: Simulation results for SPA and IMR-SPA decoding ofa J , K MacKay’s bicycle code. d BA , min v ∈E BA wt( v ) . We show that d MLND ≥ t N + 1 and d MLND ≤ t N + 1 . • ( d MLND ≥ t N + 1 ) For any syndrome s ∈ F n − k , thereis at most one v ∈ t ( s ) + N such that wt( v ) ≤ t N ,otherwise suppose there are v , v ∈ t ( s ) + N suchthat wt( v ) , wt( v ) ≤ t N and then v + v ∈ N with wt( v + v ) ≤ t N < d N . A contradiction arises.Hence for all the vectors with weight no more than t N ,they must have distinct syndromes and they are all in ∪ s D MLND ( s ) and not in E MLND , which implies d MLND ≥ t N +1 . • ( d MLND ≤ t N + 1 ) Since d N = min v ∈N wt( v ) , there exists v ∈ N such that wt( v ) = d N . There exist v , v ∈ F n such that v + v = v , wt( v ) = t N + 1 , and wt( v ) = d N − wt( v ) ≤ d N − ( t N + 1) ≤ t N + 1 .Then v , v ∈ t ( s ) + N for some s and at most oneof them can be in D MLND ( s ) . Hence v i ∈ E MLND for some i and d MLND ≤ wt( v i ) ≤ t N + 1 .A PPENDIX BP ROOF OF T HEOREM D BA be E BA , F n \ (cid:0) ∪ s D BA ( s ) (cid:1) and d BA , min v ∈E BA wt( v ) . We first show that d ML ∗ D , d MLD ≤ t + 1 and then d ML ∗ D ≥ t + 1 . • ( d ML ∗ D , d MLD ≤ t + 1 ) Since d , min v ∈N \B wt( v ) , thereexists v ∈ N \B such that wt( v ) = d . There exist v , v ∈ F n such that v + v = v , wt( v ) = t + 1 ,and wt( v ) = d − wt( v ) ≤ d N − ( t + 1) ≤ t + 1 . Thenwe have v ∈ t ( s ) + ℓ + B and v ∈ t ( s ) + ℓ + B ,for some s and ℓ = ℓ ∈ N . Then at most one of themcan be in D ML ∗ D ( s ) or D MLD ( s ) . Hence v i ∈ E ML ∗ D and v i ∈ E MLD for some i , i and d ML ∗ D ≤ wt( v i ) ≤ t N +1 and d MLD ≤ wt( v i ) ≤ t N + 1 . ( d ML ∗ D ≥ t + 1 ) For any syndrome s ∈ F n − k , there is atmost one coset of B in t ( s ) + N containing vectors ofweights smaller or equal to t , otherwise suppose there are v , v ∈ t ( s ) + N with wt( v ) , wt( v ) ≤ t such that v ∈ t ( s ) + ℓ + B and v ∈ t ( s ) + ℓ + B for ℓ = ℓ ∈N , and then v + v ∈ N \B with wt( v + v ) ≤ t < d .A contradiction arises. Hence all vectors of weight nolarger than t are in ∪ s D ML ∗ D ( s ) and not in E MLD , whichimplies d ML ∗ D ≥ t + 1 .The main contribution of the probabilities of cosets comesfrom the vectors with minimum weights as p → . Hence d MLD ≥ d ML ∗ D ≥ t + 1 which implies d MLD = t + 1 .R EFERENCES[1] P. O. Vontobel, “Counting in graph covers: A combinatorial characteri-zation of the Bethe entropy function,”
IEEE Trans. Inf. Theory , vol. 59,no. 9, pp. 6018–6048, 2013.[2] Z. Babar, P. Botsinis, D. Alanis, S. X. Ng, and L. Hanzo, “Fifteen yearsof quantum LDPC coding and improved decoding strategies,”
IEEEAccess , vol. 3, pp. 2492–2519, 2015.[3] J. X. Li and P. O. Vontobel, “LP decoding of quantum stabilizer codes,”in
Proc. IEEE 2018 Int. Symp. Inf. Theory , Vail, Colorado, USA, June17–22 2018, pp. 1306–1310.[4] Y.-H. Liu and D. Poulin, “Neural belief-propagation decoders forquantum error-correcting codes,” arXiv preprint arXiv:1811.07835 ,2018.[5] J.-P. Tillich and G. Zémor, “Quantum LDPC codes with positive rate andminimum distance proportional to the square root of the blocklength,”
IEEE Trans. Inf. Theory , vol. 60, no. 2, pp. 1193–1202, 2014.[6] D. J. MacKay, G. Mitchison, and P. L. McFadden, “Sparse-graph codesfor quantum error correction,”
IEEE Trans. Inf. Theory , vol. 50, no. 10,pp. 2315–2330, 2004.[7] M. A. Nielsen and I. L. Chuang,
Quantum Computation and QuantumInformation . UK: Cambridge University Press, 2010.[8] D. A. Lidar and T. A. Brun,
Quantum Error Correction . CambridgeUniversity Press, 2013.[9] J. X. Li and P. O. Vontobel, “Factor-graph representations of stabilizerquantum codes,” in
Proc. 54th Allerton Conf. on Communication,Control, and Computing , Allerton House, Monticello, IL, USA, Sep. 28–30 2016, pp. 1046–1053.[10] J. S. Yedidia, W. T. Freeman, and Y. Weiss, “Constructing free-energyapproximations and generalized belief propagation algorithms,”
IEEETrans. Inf. Theory , vol. 51, no. 7, pp. 2282–2312, Jul. 2005.[11] H. D. Pfister and P. O. Vontobel, “On the relevance of graph covers andzeta functions for the analysis of SPA decoding of cycle codes,” in
Proc.IEEE 2013 Int. Symp. Inf. Theory , Istanbul, Turkey, July 7–12 2013, pp.3000–3004.[12] H. Wymeersch, F. Penna, and V. Savi´c, “Uniformly reweighted beliefpropagation: A factor graph approach,” in
Proc. IEEE Int. Symp. Inf.Theory , Saint-Petersburg, Russia, July, 31 – August, 5 2011, pp. 2000–2004.[13] D. Poulin and Y. Chung, “On the iterative decoding of sparse quantumcodes,”
Quantum Information and Computation , vol. 8, no. 10, pp. 987–1000, 2008.[14] A. Hutter, J. R. Wootton, and D. Loss, “Efficient Markov chain MonteCarlo algorithm for the surface code,”