Algebraic Constructions of Graph-Based Nested Codes from Protographs

Christine A. Kelley Jorg¨ Kliewer Department of Mathematics Klipsch School of Electrical and Computer Engineering University of Nebraska-Lincoln New Mexico State University Lincoln, NE 68588, USA Las Cruces, NM 88003, USA Email: [email protected] Email: [email protected]

Abstract—Nested codes have been employed in a large number on a separation of channel and network coding for non-ergodic of communication applications as a specific case of superposition discrete-input fading channels. In these applications we require codes, for example to implement binning schemes in the presence the subcodes to be better in threshold and/or in error-floor than of noise, in joint network-channel coding, or in physical-layer secrecy. Whereas nested lattice codes have been proposed recently the global code. for continuous-input channels, in this paper we focus on the In this paper we focus on array-code type constructions [8], construction of nested linear codes for joint channel-network [9] and propose an algebraic design of nested linear codes coding problems based on algebraic protograph LDPC codes. In based on protograph LDPC codes [10], [11]. In particular, particular, over the past few years several constructions of codes in [12], [13] a lifting technique based on voltage graphs has have been proposed that are based on random lifts of suitably chosen base graphs. More recently, an algebraic analog of this been proposed which has been shown to provide a large girth approach was introduced using the theory of voltage graphs. In of the code graph and thus a good error-floor performance. this paper we illustrate how these methods can be used in the In contrast to previous approaches based on concatenated and construction of nested codes from algebraic lifts of graphs. random LDGM codes [5], [14] and also to constructions based on random LDPC codes we show that the advantage of the I. INTRODUCTION above algebraic constructions in the error floor regime also Nested codes have been widely used to implement binning carries over to the nested code setting. schemes based on coset codes in the presence of noise for II. PRELIMINARIES numerous scenarios, for example for the noisy Wyner-Ziv problem [1] and the dual Gel’fand-Pinsker problem [2]. In A. Nested codes particular, for the case with continuous-input channels, binning Consider M different information vectors i! of length K!, schemes based on nested lattice codes have been proposed ! =1,...,M,whichwewanttoencodejointlyinsuchaway in [3]. Recently, in [4] the authors consider discrete-input that each information vector is associated with a codeword channels and present compound LDGM/LDPC constructions from a different subcode. The overall codeword c is generated which are optimal under ML decoding. by multiplying the concatenation of all information vectors While nested codes in these contexts are related to joint with a generator G of the global code C according to source-channel coding problems, the class of algebraic nested G1 codes we will address in this paper are defined based on   a joint channel and network coding scenario. Such nested cT =[iT ,iT ...iT ] . =[iT ,iT ...iT ]G = 1 2 M  .  1 2 M codes have been originally proposed in [5] for the generalized   broadcast relay problem, where a relay node broadcasts N GM  T T T packets to several destination nodes, which already know some i1 G1 ⊕ i2 G2 ⊕···⊕iM GM , (1) of the packets apriori.Arelatedconceptwasusedin[6] where each of the subcodes C with generator G of rate R = in the context of two-way relaying. The idea is that instead ! ! ! K /N is associated with the corresponding information vector of information words, codewords of different subcodes C , ! ! i and ⊕ represents a bitwise XOR. The goal is now to find 1 ≤ ! ≤ N,arealgebraicallysuperimposedviaabitwise ! general systematic design strategies where the subcodes, any XOR. In contrast to nested codes for the joint source-channel combination of subcodes, and the global code C have good coding scenario described above, here each subcode and any threshold and/or error floor properties. arbitrary combination of the subcodes is intended to form a For the sake of simplicity we focus on M =2and the good channel code. In particular, this also holds for the linear binary case in the following. Our aim is to design an LDPC combination of all subcodes, the global code C.Ithasbeen code such that its generator matrix G satisfies (1), where H ∈ shown in [7] for a broadcast scenario with side information {0, 1}(N−K1−K2)×N represents a corresponding parity check that such a construction is able to outperform a scheme based matrix. If G is not rank deficient, the null space of H of T T This work has been supported in part by NSF grant CCF-0830666 and in dimension (N − K1 − K2) contains the codewords c1 ⊕ c2 = T T part by NSF grant EPS-0701892. i1 G1 ⊕ i2 G2. 1 Likewise, the columns of the parity check matrices H1, 2 i H2 associated with G1, G2 each form a for their null i 31 2 spaces of dimensions (N − K1) and (N − K2),respectively. i i 1 3 AnecessaryconditiontopreventG from having a rank 2 (13)(2) smaller than K1 + K2 is that H1, H2 cannot have more than 3 1 2 (N − K1 − K2) linear independent parity check equations 1 3 in common. Based on these considerations, we propose the (123) 2 following design strategy. First, randomly generate a matrix i=(1)(2)(3) 3 M ∈{0, 1}N×N of full rank N,accordingtoagivenrow Fig. 1. A permutation voltage graph G is shown on the left and its derived ˆ ˆ and column degree distribution. This matrix is then partitioned graph G on the right, where G serves as a protograph for G.Thedarkeredges correspond to the connections between the clouds of verticesincidentwith into three submatrices the nontrivial labeled edges. T (N×N) (N×K2) (N×K1) (N×(N−K1−K2)) Gα,calledthe(right) derived graph,isa|G|-degree lift of G M = 'M1 M2 M3 ( . (2) and has vertex set V × G and edge set E × G,whereif(u, v) Next, the individual parity check matrices for the nested is a positively oriented edge in G with voltage b,then(u, a) is α code are obtained as connected to (v,ab) in G .Alternatively,anotherconstruction takes the voltage group to be the symmetric group S on n (N×(N−K1−K2)) T n H =[M3 ] , elements and has α map the positively-oriented edges of G into − × × − − T H((N K1) N) = M N×K2 M (N (N K1 K2)) , Sn.Thisyieldsapermutation voltage graph.Thepermutation 1 ' 1 3 ( derived graph Gα is a degree n lift (instead of n!)withvertices − × × − − T H((N K2) N) = M N×K1 M (N (N K1 K2)) . V ×{1,...,n} and edges E ×{1,...,n}.Ifπ ∈ Sn is a 2 ' 2 3 ( permutation voltage on the edge e =(u, v) of G,thenthere α Thus, both H1 and H2 are guaranteed to have a null space is an edge from (u, i) to (v,π(i)) in G for i =1, 2,...,n. of dimensions (N − K1) and (N − K2),respectively,andH We will represent each vertex (v,i) and each edge (e, i) in has (N − K1 − K2) parity check equations that are satisfied the derived graph by vi and ei,respectively.Inbothcases,the by C1 and C2. labeled base graph (i.e. voltage graph) algebraically determines Proposition 1. The nested code property in (1) holds also if aspecificliftofthegraph.Fig.1showsapermutationvoltage graph G = K , with two nontrivial permutation voltages on M and thus one or more of the matrices H, H1,andH2 are 2 3 (row) rank deficient. For a rank deficit r of the check matrix its edges to the group S3,andthecorrespondingdegree3 H the rate loss for the global code C is given as ∆R ≤ r/N. permutation derived graph. Henceforth, derived (lifted) graphs will be denoted by Gˆ Proof: Denote the rank deficit for the matrices M , M 1 2 since the voltage assignment α should be clear from context. as r ≥ 0, r ≥ 0,respectively.ThismeansthatG has 1 2 1 In this paper we will focus on permutation voltage graphs for now a rank of at least K + r + r ,andG arankofat 1 1 2 designing nested codes. least K2 + r + r2,resp.,whichleadstoanoverallrankof at least K1 + K2 + r + r1 + r2 for the generator matrix G. III. NESTED CODES FROM PROTOGRAPHS Since both subcodes have at most N − K − K − r check 1 2 We now describe a simple method to construct nested equations in common the row rank of G must not be smaller codes from protographs in which the base Tanner graphs than K + K + r to ensure the nested code property which 1 2 corresponding to small parity-check matrices H ,H ,andH is satisfied for any r ≥ 0, r ≥ 0.BysettingR# + R# = 1 2 1 2 1 2 are lifted to obtain Tanner graphs with corresponding parity- (K + K + r)/N where R# and R# denote the new rates for 1 2 1 2 check matrices Hˆ , Hˆ ,andHˆ .Thesimplicityofourmethod the subcodes C and C ,aratelossof∆R ≤ r/N for the 1 2 1 2 is that it involves just one lifting of the base graph G code C is obtained. M corresponding to M. Note that an extension of the above design strategy to M> We start with a small bipartite base graph G with n left 2 can be obtained in a straightforward way by modifying the M vertices, denoted by the set L,andn right vertices, denoted partitioning and construction of M in (2). by the set R.ThematrixM is the of the B. Voltage graphs graph GM .Then left vertices are the variable nodes and the An algebraic construction of specific covering spaces for right nodes are the constraint nodes (parity-check nodes) of graphs was introduced by Gross and Tucker in the 1970s [15]. the base graph. We partition the set of right nodes R in GM For a graph G =(VG,EG),afunctionα called an ordinary into three disjoint subsets S1,S2 and T of sizes k1,k2 and voltage assignment,mapsthepositivelyorientededgesto n − k1 − k2,respectively,i.e.,S1 ∪ T ∪ S2 = R.Wedefine elements from a chosen finite group G,calledthevoltage the base graphs for the matrices M1,M2,andM3 as follows: group. Each edge in G has a positive and negative orientation, • Let G denote the induced subgraph of T in GM .Notethat and the negative orientation is assigned the inverse group G is a bipartite graph with n left vertices of L and (n − element. The base graph G is called an ordinary voltage graph. k1 − k2) vertices of T .Thecorrespondingparity-check The values of α on the edges are called voltages.Anewgraph matrix of G is M3.LiftingG by a degree m lift gives the ˆ Z∗ s t derived graph G with corresponding parity-check matrix elements from m that has as its (s, t)th element Ps,t = b a Hˆ for the code C.ThesizeofHˆ is m(n−k1 −k2)×mn. as follows: • Let G1 denote the induced subgraph of S2 ∪ T in GM . 2 −1 1 aa... ak Note that G1 is a bipartite graph with n left vertices of  baba2b...ak−1b  L and (n − k1) vertices of S2 ∪ T .Thecorresponding P = ...... parity-check matrix of G1 is the matrix H1.LiftingG1    bj−1 abj−1 a2bj−1 ... ak−1bj−1  by a degree m lift gives the derived graph Gˆ1 with cor- responding parity-check matrix Hˆ1 for the first subcode # C1.ThesizeofHˆ1 is m(n − k1) × mn. Let P be any j×j submatrix of P .LetGM be the complete • Similarly, let G2 denote the induced subgraph of S1 ∪ T bipartite graph Kj,j on j variable nodes {v0,v1,...,vj−1} and in GM .NotethatG2 is a bipartite graph with n left j check nodes {r0,r1,...,rj−1}.Letf(·) denote a function vertices of L and (n − k2) vertices of S1 ∪ T .The mapping the elements in {0, 1,...,m−1} to the set of permu- corresponding parity-check matrix of G2 is the matrix H2. tations in the symmetric group Sm,i.e.,setofpermutationson Lifting G2 by a degree m lift gives the derived graph Gˆ2 m elements. Specifically, we let f(x) denote the permutation with corresponding parity-check matrix Hˆ2 for the second that maps i (→ x+i mod m,fori =0, 1,...,m−1.Weassign # subcode C2.ThesizeofHˆ2 is m(n − k2) × mn. the permutation f(Ps,t) for the edge (rs,vt) in GM and lift the • The lifts of each of the three graphs G1, G2, G can be done graph along with their permutation labeled edges by a degree simultaneously by simply lifting the base graph GM by m lift. We choose three disjoint subsets S1,S2, and T of the adegreem lift in an appropriate way. set of check nodes {r0,r1,...,rj−1} and obtain the induced The blocklength of the lifted nested code is N = nm and graphs G1, G2,andG,asdescribedinSection3.Theresulting derived (lifted) graph GˆM also yields the lifted graphs Gˆ1, Gˆ2 the dimensions of the lifted subcodes are K1 ≥ k1m and and Gˆ and the corresponding parity-check matrices H1,H2, K2 ≥ k2m with equality if and only if Hˆ1 and Hˆ2 are not rank deficient. This construction approach can be extended and H of the nested code. In particular, the matrix M is the all- to nested codes having more than two component codes in a ones matrix of size j × j.Thecorrespondingincidencematrix ˆ straightforward way. M for the lifted graph GM is a matrix that is a j × j array of With the method outlined above, the design problem of shifted identity matrices, with the shifts corresponding tothe entries in the matrix P #.Forexample,ifthefirstj columns the nested codes reduces to finding a suitable assignment of # permutations (or, more generally, group elements) to the edges and j rows of P form the matrix P ,then of the base graph GM .Usingrandompermutationsisone I1 I I 2 ... I −1 avenue, however, we are interested in permutations that are a a aj  I I I 2 ... I −1  determined algebraically to obtain an algebraic construction. Mˆ T = b ab a b aj b ,  ......  In the following we focus on irregular constructions since − − − − −  Ibj 1 Iabj 1 Ia2bj 1 ... Iaj 1bj 1  by starting from a regular (dv,dc) code C with variable node degree dv and check node degree dc the corresponding where Ix denotes the m × m cyclically shifted subcodes will be regular (dv + c, dc) codes with c>0. to the left by x positions. In a more general array construction For the binary-input AWGN channel this typically leads to in [8], the shifts in the above construction are chosen randomly subcodes with larger thresholds [16] than the code C,which from the set {0, 1,...,m− 1}. is not desired. By using irregular constructions for the nested The base graph G may be viewed as a permutation code we can keep a certain fraction of degree-two variable M voltage graph, and its m-degree lift Gˆ as a permutation nodes in the code to improve the threshold, in particular for M derived graph, where the local voltage group consists of the the subcodes. permutations that map i (→ x+i mod m,fori =0,...,m−1, where x can take values in {0, 1,...,m− 1}. IV. LIFTED NESTED CODES USING COMMUTING PERMUTATIONS The constructed codes are quasi-cyclic and thus have an In our first construction we combine a variant of the encoding complexity of O(1) per symbol [17]. The codes have algebraic construction of LDPC codes presented in [9] with performance comparable to random LDPC codes for short to the lifting technique described in Section III to obtain a family moderate blocklengths. However, at large block lengths, the of quasi-cyclic nested codes. For an integer m,thesubsetof random codes are expected to outperform this construction as integers of the set {0, 1, 2,...,m− 1} that are co-prime to the distance and girth of these codes are limited. Specifically, Z∗ m forms a multiplicative group m.(Ifm is prime, then the whenever there is a K2,3 subgraph in the base graph, the girth set {0, 1,...,m− 1} form a Galois field and all the non-zero of the lifted nested codes is at most 12, and the distance is elements in this set form a multiplicative group.) Let a and limited by (j +1)! for a column weight j parity-check matrix b be two non-zero elements in this multiplicative group with [9], [13], [18]. These limitations motivate the use of non- multiplicative orders o(a)=k and o(b)=j,respectively. commuting voltages in the construction in the next section For j

We can observe from Fig. 2 that all subcodes perform better than the corresponding (overall) codes C.Further,thecodes obtained from the nonabelian group perform better in the error