1 Untainted Puncturing for Irregular Low-Density Parity-Check Codes David Elkouss, Jesus Martinez-Mateo, and Vicente Martin Abstract—Puncturingisawell-knowncodingtechniquewidely II. UNTAINTEDPUNCTURING used for constructing rate-compatible codes. In this paper, we consider the problem of puncturing low-density parity-check A. Notation and Definitions codes and propose a new algorithm for intentional puncturing. Error correcting codes can be represented by bipartite The algorithm is based on the puncturing of untainted symbols, 3 graphs linking symbol nodes with check nodes. Let1 N(z) i.e. nodes with no punctured symbols within their neighboring 1 set.Itisshownthatthealgorithmproposedhereperformsbetter denote the neighborhoodof a node z, that is, the set of nodes 0 than previous proposals for a range of coding rates and short adjacenttoz.Thedegreeofanodeisdefinedasthecardinality 2 proportions of punctured symbols. of its neighborhood.This concept can be extended to include n a Index Terms—low-density parity-check codes, intentional all the nodesreachable from z by traversing a maximumof k J puncturing, short-length codes. edges, we call this set of nodes Nk(z) the neighborhood of 9 depth k of z. 2 LetP standforthesetofpuncturedsymbols,v ∈P belongs I. INTRODUCTION to the set of 1-step extended recoverable symbols (v ∈ R ) 1 ] T Low-density parity-check (LDPC) codes are considered if ∃c ∈ N(v) such that ∀w ∈ N(c)\{v},w ∈/ P. For n > 1 we recursively define the sets of k-step extended recoverable I fixed-ratechannelcodessincetheyincorporateafixedamount s. ofredundantinformation[1]. However,thereexistsomewell- symbols Rk. We say that a punctured symbol v 6∈R1∪...∪ c R belongs to the set of k-step extended recoverable (v ∈ known techniques for adapting the coding rate of a linear k−1 [ code, one of them is puncturing. A linear code is punctured Rk) symbols if ∃c ∈ N(v) and ∃w ∈ N(c)\{v} such that 3 w ∈ R and ∀w′ ∈ N(c)\{v,w},w′ ∈ P ⇒ w′ ∈ R ∪ by deleting a set of symbols in a codeword. k−1 1 v ...∪R . When puncturing a code, we must differentiate between k−1 9 The graph subjacent to N2k(v), v ∈R , is assumed to be 4 random and intentional puncturing. In the former, punctured k tree-like. Let u be a node in N2k(v). We denote by N t(u) 1 symbolsarerandomlychosen,whereasinthelatter,thecodeis ↓ 6 analyzedto selectthe set ofsymbolsto puncture.The asymp- the neighborhoodof uof deptht restrictedto the descendants . of u in this tree. Note that N (u)=N 1(u). We can prune it 3 totic performanceof randomand intentionalpuncturedLDPC ↓ ↓ 0 codeswasanalyzedin[2],[3],andpuncturingthresholdswere by eliminating the connection of any symbol w ∈ Rl with a 1 also identified in [4]. Some other methods delved into the check c∈N↓(w) if maxw′∈N↓(c){m|w′ ∈Rm}>l−1. We 1 call this graph T the extended recovery tree of v. code structure to identify good puncturing patterns [5], [6], v : v or examined its graph construction [7], [8] to facilitate its We consider in this letter the sum-product decoding algo- i rithm. The algorithm exchanges messages representing prob- X puncturing [9]–[12]. abilities or the log-likelihood ratio (LLR) of probabilities. Theobjectivespursuedwhenswitchingfromrandompunc- r Themessagesareiterativelyexchangedfromsymboltocheck a turing can lead to differentsolutions. In particular,algorithms nodesandfromcheckto symbolnodes.Ifthe decodinggraph that focus in covering a wide range of coding rates do not is tree-like then, for uniform sources and output symmetric offer the best performance for small puncturing proportions channels, sum-product decoding is equivalent to maximum a and vice-versa. Several algorithms find puncturing patterns posteriori decoding and the decoder minimizes the decoding that allow to cover a wide range of rates [5], [6], [13]–[15]. error [16]. However, when working with short length codes, but also in Let us analyze the effect of puncturing on the messages otherscenarios,theensembleofpuncturedsymbolsdetermines exchanged in the sum-product algorithm. For every v ∈ P the decoding performance. In this work, we describe an thedecodingalgorithmhasnoinformationonthevaluethat v algorithm that we call untainted. Its main focus is optimizing takes. In consequence, for binary input channels it can take the decoding of moderately punctured codes. both values (one and zero) with probability one half. On Therestofthispaperis organizedasfollows.InSectionII, the LLR version of the sum-product algorithm the outgoing we introduce the notation, some puncturing properties and messages from symbol v on iteration one are equal to zero. the untainted algorithm. In Section III, we present simulation A check c ∈ N(v) in the neighborhood of a punctured results over several channels, and compare them with the symbol v is called a survived check node if ∃w ∈N (c)|w ∈ results in previous studies [5], [6]. Conclusions are presented ↓ R , and a dead check node otherwise. The message that a in Section IV. k−1 dead check node c sends to v is a zero LLR. A punctured Theauthors arewiththeFacultad deInforma´tica, Universidad Polite´cnica deMadrid,Spain(e-mail:{delkouss, jmartinez, vicente}@fi.upm.es). 1Wefollow anotation similartothatinHaetal.[5] 2 symbol is recovered when it receives a message from a further,ǫcanberecursivelydefinedforanysymbolandcheck survived check node. It follows from the previous definitions in the tree from its children erasure probabilities: that a symbol in R is recovered after k decoding iterations. k We define the extended recovery error probability of a ǫv =ǫ(v0) ǫc (2) punctured symbol Pe(v) as the decoding error probability of c∈YN↓(v) v ∈ R after k iterations on T . Assuming that a codeword k v ǫ =1− (1−ǫ ). (3) is sent through a binary input memoryless output symmetric c v channeltheprobabilityoferrorisindependentofthecodeword v∈YN↓(c) sent [16]. Then P (v) is the probabilitythat v takes the value Now, taking into account that there are no punctured sym- e one conditional to sending the all zero codeword. bols within the leave nodes by the definition of the extended Theseconcepts,areextendedinthesensethattheygeneral- recoverytree,itholdsthat ǫ(v0) <1fortheleafsymbolsofthe izethedefinitionsintroducedbyHaetal.in[5].Thedifference tree spanning from check z. It follows by induction that: 1) betweenbothsetsofdefinitionsisthateverypuncturedsymbol ∀v,c ∈ N↓2k−2l−1(z),ǫv,ǫc < 1; which implies that ǫz < 1, is connected to only one survived check node in the (non- and 2) if we attach a check node z with ǫz < 1 to a symbol extended) recovery tree in [5] and, in consequence, the (non- x then ǫv1 > ǫv2. Finally, the recovery error probability of a extended)recoveryerrorprobabilityisgivenbytheprobability symbol node v is Pe(v) = ǫv/2, which completes the proof. that the message sent by the survived node is wrong. Theorem 2: The recovery error probability of v and v 1 2 over the trees T ,T defined exactly as in Th. 1 and v1 v2 B. Properties of the extended recovery error probability sent through any binary input symmetric output memoryless Ha considered the exact recovery errorprobability overthe channel C, verify: (non-extended) recovery tree for the binary erasure channel (BEC), the additive white Gaussian noise (AWGN) channel Pe(v1)≥Pe(v2). (4) andthe binarysymmetricchannel(BSC). Thiserrorprobabil- Proof:Fora precisecharacterizationof P in the general e ity is a monotoneincreasingfunctionon the numberof nodes setting,weneedtotrackamessagedensityinsteadofascalar. in the recovery tree. The algorithm in [5] was developed to Theinitialdensityfunctionofanon-recoveredpuncturednode exploit this non-intuitive property. takes the formof the Dirac delta function D(y)=δ(y), since Thesinglesurvivedchecknodeassumptioncapturesthetree a punctured node transmits a zero LLR with probability one. structure when a high proportion of symbols are punctured. LettheremainingnodesinT ,T haveinitialdensitiesgiven v1 v2 However, for a low proportion of punctured symbols there by P (y), the initial LLR density associated with channel C. 0 can be more than one survived check node. We now show NowconsiderasecondscenarioforT .Weassociateevery v2 that having more than one survived check node is a desirable leaf node in N2k−2l−1(z) with samples from D(y), which ↓ property. More precisely, adding a survived check node in is equivalent to puncturing these nodes. If we puncture the an extended recovery tree can not increase Pe(v). We first leavenodes,theirparentchecknodesdonotbecomesurvived prove a stronger claim on the BEC, i.e. adding a survived check nodes and the symbols w ∈ N2k−2l−3(z)|w ∈ P are ↓ check node decreases Pe(v). Then, we prove the propertyfor not recovered. It follows by induction that z remains a dead generalsymmetricchannels.Theideabehindthegeneralproof checknode,i.e.associatingtheleaveswithD(y)isequivalent is that we can reduce the numberof survived check nodes by to eliminating the edge joining z to x. In consequence, the addingnoisetothesymbolnodesunderasurvivedchecknode. density of messages reaching the root node v in the second 2 Then,giventhatthesum-productalgorithmontreelikegraphs scenariois identicalto the densityof messagesreaching v in 1 with uniform priors is equivalent to a maximum a posteriori the first scenario. estimation,thedecodingonthenoisiertreecannotreducethe The (binary output) degenerate channel D, with initial decoding error probability. density D(y), transforms any input into a one or a zero with Theorem 1: Let l,k ∈ N and 0 ≤ l < k. Now consider equal probability, i.e. p (1|x) = p (0|x) = 0.5. Let Q D D the subgraph of a check node z of depth 2k−2l −1 such represent the concatenated channel of C with D: that max {m|w∈R } = k −l. Let T ,T be the w∈N(z) m v1 v2 extended recovery trees associated with punctured symbols p (y′|x) = p (y′|y)p (y|x) Q D C v ,v ∈ R . Let both trees be identical except for some 1 2 k yX∈Y x ∈ N2l(v ) that is linked with z. Then the recovery 2 = 0.5 p (y|x)=p (y′|x). (5) error probability of v and v sent through a BEC(α), with C D 1 2 0<α<1, verify: yX∈Y In other words, D can be regarded as the concatenation of C with itself, and the samples from D(y) are stochastically P (v )>P (v ). (1) e 1 e 2 degraded samples of P (y) [17]. 0 Proof: The initial erasure probability of a symbol v is: Following the argumentin [18, Th. 5], Eq. (5) implies that P (v )≥P (v ). The assertion follows from the fact that the e 1 e 2 1 if v ∈P estimateofbothv andv aremaximumlikelihoodestimates. ǫ(0) = 1 2 v (cid:26) α otherwise 3 C. Untainted Puncturing Algorithm Description R=0.6 We introducethe conceptof untainted,to proposea simple 1100--11 π=010% methodthatchoosessymbolssuchthatallthechecknodesofa selectedsymbolaresurvivednodes.Thisrestrictionguarantees 1100--22 that more than one survived check node is associated with every punctured symbol. ER ER 1100--33 Definition 1: A symbol node v is said to be untainted if FF there are no punctured symbols within N2(v). 1100--44 LetX∞bethesetofuntaintedsymbolnodes.Initially,when Unpunctured therearenopuncturedsymbols, X consistsof everysymbol Prop. in [5] ∞ 1100--55 Prop. in [6] node. R=0.5 R=0.5 R=0.6 Untainted π=05% π=010% π=05% {Initialize} X∞ ={1,...,n}, p=1. 1100--66 00..66 00..88 11 11..22 11..44 11..66 11..88 22 while X 6=∅ do ∞ SSNNRR EE//NN ((ddBB)) bb 00 {Step 1.– Look for candidates} Make the set of candidates Ω, which is a subset of X∞, Fig. 1. FER over the AWGN as a function of the signal-to-noise ratio such that u∈Ω if |N2(u)|≤|N2(v)| for any v ∈X . (SNR). Two LDPC codes with coding rates R0 = 0.5 and R0 = 0.6, and ∞ twodifferentproportionsofpuncturedsymbols,π=5%andπ=10%were {Step 2.– Select for puncturing} used. Pick a symbol node v(p) from Ω (pick one randomly if there exist more that one symbols in Ω). {Step 3.– Update the set of untainted symbols} X =X \N2(v) 10-1 ∞ ∞ p=p+1 end while 10-2 The algorithm obtains a set of puncturable symbol nodes ER 10-3 consisting in the symbols selected in the second step. It F concludes when X∞ = ∅, i.e. there is no untainted symbols. 10-4 The range of values for p, the number of punctured symbols, can be found empirically by simulations (see Table I). 10-5 R=0.6 R=0.5 Note that for codes with an almost regular check node R=0.6 π=05% π=010% R=0.5 π=010% π=05% degree distribution, the searching criterion in Step 1 can be 10-6 simplified: instead of looking for a symbol with the smallest 0.28 0.32 0.36 0.4 0.44 ε neighboringsetofdepth2,thealgorithmcanlookforsymbols with the lowest degree. Fig.2. FERovertheBECwithcrossover probability εfordifferent inten- tional puncturing strategies. Two LDPC codes with coding rates R0 = 0.5 III. SIMULATIONRESULTS andR0=0.6,andtwodifferentproportionsofpuncturedsymbols,π=5% andπ=10%wereused.SeeinsetinFig.1forsymbolsandline-styles. The untaintedalgorithm ensures that the extendedrecovery tree of a puncturedsymbolhas more than one survived check node. In this section, we construct codes to show that the codingrates, channelsand puncturingproportionsconsidered. untainted algorithm yields a better performance in terms of For a FER of 10−3 the strongest improvementsappear in the the frame error rate (FER). We have constructed 104 bit- BSC for a mother code of rate R0 = 0.3 punctured a 10%, long irregular LDPC codes of different coding rates for the in the BEC for a mother code of rate R0 = 0.6 punctured a BEC, the BSC andthe AWGN channels.The polynomialsfor 5% and in the AWGN for a mother code of rate R0 = 0.6 the BSC with rates (0.5,0.6,0.7,0.8) have been drawn from punctured a 10% respectively. [19].Theremaininggeneratingpolynomials,aswellasallthe Table I shows pmin and pmax, the minimum and maximum matrices used can be checked in [20]. valuesofp,respectively,after5·103 algorithmruns.Sizesare Figs. 1, 2 and 3 compare the performance of intentional computed for both the untainted algorithm and the algorithm puncturedcodesusingtheuntaintedalgorithmwiththosein[5] in [5]. The values are computed for the same codes used andin[6]fordifferentproportionsofpuncturedsymbolsπ.All in Fig. 3 and two additional codes of rates 0.7 and 0.8. codes are decoded with 200 iterations using the sum-product The table shows that the untainted algorithm can puncture a algorithm [16] over the graph of the mother (non-punctured) smaller numberof symbols compared to [5]. This behavior is code. consistentwiththeadditionalnumberofsurvivedchecknodes As in Ha et al. [5] we used three random seeds for required by the untainted algorithm. the simulations of each intentional puncturing algorithm, the results in the figures show the intermediate performer. IV. CONCLUSIONS TheuntaintedpuncturedLDPCcodesoutperformthecodes We proved that having more than one survived check node puncturedfollowingthealgorithmsin[5]andin[6]forallthe in the extended recovery tree is a desirable property. The 4 R =0.6 π=010% 1100--11 R =0.5 R =0.4 π=010% π=010% 1100--22 ER ER 1100--33 FF 1100--44 R =0.3 Unpunctured π=010% Prop. in [5] 1100--55 R =0.3 Prop. in [6] R =0.6 R =0.5 R =0.4 π=05% π=05% π=05% π=05% Untainted 1100--66 00..0044 00..0055 00..0066 00..0077 00..0088 00..0099 00..11 00..1111 00..1122 00..1133 00..1144 00..1155 00..1166 00..1177 εε Fig.3. FERoverthe BSCwithcrossover aprobability εforseveral LDPCcodes withcoding rates R0 =0.3,R0 =0.4,R0 =0.5andR0 =0.6,and twodifferent proportions ofpuncturedsymbols, π=5%andπ=10%. TABLEI NUMBEROFPUNCTUREDSYMBOLS [4] H.Pishro-NikandF.Fekri,“ResultsonPuncturedLow-DensityParity- Check Codes and Improved Iterative Decoding Techniques,” IEEE Codingrate(mothercode) Trans.Inf.Theory,vol.53,no.2,pp.599–614,Feb.2007. 0.3 0.4 0.5 0.6 0.7 0.8 [5] J. Ha, J. Kim, D. Klinc, and S. W. McLaughlin, “Rate-compatible Ref.[5] pmin 4628 4031 3439 2866 2258 1581 punctured low-density parity-check codes with short block lengths,” pmax 4753 4139 3552 2983 2353 1657 IEEETrans.Inf.Theory,vol.52,no.2,pp.728–738, Feb.2006. [6] B. N. Vellambi and F. Fekri, “Finite-Length Rate-Compatible LDPC Untainted pmin 2603 2286 1909 1587 1212 851 Codes: A Novel Puncturing Scheme,” IEEE Trans. Commun., vol. 57, pmax 2686 2374 1987 1655 1273 901 no.2,pp.297–301,Feb.2009. [7] X.-Y. Hu, E. Eleftheriou, and D. Arnold, “Regular and irregular pro- gressive edge-growth tanner graphs,” IEEETrans.Inf.Theory, vol. 51, untainted algorithm is a method that chooses symbols such no.1,pp.386–398,jan.2005. [8] S.Bandi,V.Tralli,A.Conti,andM.Nonato,“Ongirthconditioningfor that all the check nodes of a selected symbol are survived low-density parity-check codes,”IEEETrans.Commun.,vol.59,no.2, check nodes. Furthermore, the algorithm can be implemented pp.357–362,Feb.2011. with a low computational cost. [9] M. Yazdani and A. Banihashemi, “On construction of rate-compatible low-densityparity-checkcodes,”IEEECommun.Lett.,vol.8,no.3,pp. Simulation results show that the performance of the un- 159–161,Mar.2004. tainted algorithm in terms of the FER is better than the [10] T.TianandC.R.Jones,“Construction ofrate-compatible LDPCcodes best intentional puncturing algorithms in the literature for a utilizing information shortening and parity puncturing,” EURASIP J. Wirel.Commun.Netw.,vol.2005,no.5,pp.789–795,Oct.2005. range of coding rates, channels and puncturing proportions. [11] J.Kim,A.Ramamoorthy,andS.Mclaughlin,“Thedesignofefficiently- The drawback of using this algorithm is a reduction in the encodablerate-compatibleLDPCcodes,”IEEETrans.Commun.,vol.57, maximum achievable rate since the proportion of puncturable no.2,pp.365–375,Feb.2009. [12] C. Shi and A. Ramamoorthy, “Design and analysis of E2RC codes,” symbols is limited by the untainted criterion. IEEEJ.Sel.A.Commun.,vol.27,no.6,pp.889–898, Aug.2009. [13] J.Ha,D.Klinc,J.Kwon,andS.W.McLaughlin,“LayeredBPDecoding ACKNOWLEDGMENT for Rate-Compatible Punctured LDPC Codes,” IEEE Commun. Lett., vol.11,no.5,pp.440–442, May2007. This work has been partially supported by the project [14] Hyo Yol Park, Jae Won Kang, Kwang Soon Kim, and QuantumInformationTechnologiesinMadrid(QUITEMAD), KeumChanWhang,“EfficientPuncturingMethodforRate-Compatible Low-Density Parity-Check Codes,” IEEE Trans. Wirel. Commun., Project P2009/ESP-1594, Comunidad Auto´noma de Madrid. vol.6,no.11,pp.3914–3919, Nov.2007. The authors would like to thank the assistance and compu- [15] M. El-Khamy, J. Hou, and N. Bhushan, “Design of Rate-Compatible tation resources provided by Centro de Supercomputacio´n y Structured LDPC Codes for Hybrid ARQ Applications,” IEEE J. Sel. Visualizacio´n de Madrid2 (CeSViMa). AreasCommun.,vol.27,no.6,pp.965–973, Aug.2009. [16] T. Richardson and R. Urbanke, “The capacity of low-density parity- checkcodesundermessage-passingdecoding,”IEEETrans.Inf.Theory, REFERENCES vol.47,no.2,pp.599–618, Feb.2001. [17] T.M.CoverandJ.A.Thomas,ElementsofInformationTheory. Wiley- [1] N. Bonello, Sheng Chen, and L. Hanzo, “Low-Density Parity-Check Interscience, 1991. Codes and Their Rateless Relatives,” IEEE Commun. Surv. Tutor., [18] T. Richardson, M. Shokrollahi, and R. Urbanke, “Design of capacity- vol.13,no.1,pp.3–26,2011. approachingirregularlow-densityparity-checkcodes,” IEEETrans.Inf. [2] J. Ha, J. Kim, and S. W. McLaughlin, “Rate-compatible puncturing Theory,vol.47,no.2,pp.619–637, Feb.2001. of low-density parity-check codes,” IEEE Trans. Inf. Theory, vol. 50, [19] J. Martinez-Mateo, D. Elkouss, and V. Martin, “Blind reconciliation,” no.11,pp.2824–2836, Nov.2004. Quantuminformationandcomputation,vol.12,no.9&10,pp.791–812, [3] C.-H. Hsu and A. Anastasopoulos, “Capacity Achieving LDPC Codes 2012. ThroughPuncturing,”IEEETrans.Inf.Theory,vol.54,no.10,pp.4698– [20] Generating polynomials and matrices used in this paper. [Online]. 4706,Oct.2008. Available: http://gcc.ls.fi.upm.es/en/codes.html 2http://www.cesvima.upm.es