This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/LSP.2017.2688410, IEEE Signal Processing Letters 1
Explicit APM-LDPC Codes with Girth 6, 8 and 10 Mohammad Gholami and Masoumeh Alinia
Abstract— Recently, some attentions have been focused on a class of low-density parity-check codes from affine permutation matrices, called APM-LDPC codes, which have some advantages rather than QC-LDPC codes in the minimum-distance, cycle distribution and error-rate performance. In this paper, first, some novel explicit constructions for exponent matrices of conventional APM-LDPC codes with girths 6, 8 and 10 are investigated and for each given exponent matrix E corresponding to an APM-LDPC code with girth 2g, 3 ≤ g ≤ 5, a lower bound Q = Q(E, g) is obtained, such that APM-LDPC codes with exponent matrix E have girth at least 2g, for each (prime) APM-size m ≥ Q. Then, regarding to reduce the lowerbound, an improved bound IQ is obtained which is significantly better than some lower-bounds reported for QC-LDPC codes with explicit constructions. Simulation results show that the constructed APM-LDPC codes outperform QC-LDPC codes with the same girth.
Keywords: APM-LDPC codes, explicit constructions, girth. I. I NTRODUCTION Low-density parity-check (LDPC) codes are a class of attractable linear codes which, based on methods of constructions, can be divided into two categories: random constructions [15], [16] and algebraic constructions [2]-[14], [17][19]. Among the algebraic methods, some explicit techniques have been proposed for construction of exponent matrices of a class of QC-LDPC codes with girths at most 12 [2], [3], [8], [11], [19], leading to much simpler implementations and no computer search is required. One of the most important advantages of these deterministic methods over semi-random codes, is that the former can be more easily used as a good starting point or a basic module to construct other types of binary LDPC codes [6], while the girth is guaranteed to be not decreased [8]. Recently, some affine permutation matrices (APM) have been used to generate a class of LDPC codes, called APMLDPC codes [22], [23], [12], which are not QC in general. Although, QC-LDPC codes have advantages over other types of LDPC codes in hardware implementations of encoding and decoding, APM-LDPC codes have some benefits in minimumdistance, cycle distribution and error-rate performance. In fact, unlike (Type-I) conventional QC-LDPC codes, i.e. with no zero blocks in their parity-check matrices, APM-LDPC codes [12] with the same base matrix can achieve the minimum distance and the girth greater than the upper-bounds reported for QC-LDPC codes [18]. Moreover, APM-LDPC codes have remarkably fewer cycle multiplicities compared to QC-LDPC Corresponding author: M. Gholami is with the Department of Mathematical Sciences, Shahrekord University, P.O. Box 115, Shahrekord, IRAN, and the School of Mathematics, Institute for Research in Fundamental Sciences (IPM), P.O. Box 19395-5746, Tehran, Iran e-mail:
[email protected],
[email protected]. M. Alinia is Ph.D Student of Department of Mathematics, Shahrekord University, P.O. Box 115, Shahrekord, IRAN e-mail: m.
[email protected]
codes with the same base matrix and the same length, which consequently improves the error-rate performance. In [12], an algorithm based on a computer-search has been proposed to generate some APM-LDPC codes with different girths and lengths. In fact, for each J × L, J < L, base matrix B and positive integers m, g, g ≥ 3, some (J, L) APM-LDPC codes having base matrix B, girth at least 2g and APM-size m have been constructed by finding two J × L slope-matrix S on Zm and J × L shift matrix A on Z∗m which they can be briefly shown by a J × L exponent matrix E on Zm × Z∗m , where Zm is the ring of integers modulus of m and Z∗m is the set of elements in Zm coprime relative to m. In this paper, we first propose some novel explicit constructions for exponent matrices of APM-LDPC codes with girth 6, 8 and 10 having low computational complexity. As a result, some APM-LDPC codes with flexible rate and lengths and girth at least 6, 8, 10 can be constructed explicitly. Then, for each constructed exponent matrix of an APM-LDPC code with girth 2g, 3 ≤ g ≤ 5, some lower-bounds can be derived such that APM-LDPC codes with the same exponent matrix have girth at least 2g, for each APM-size not less than the associated lower-bounds. In continue, a method is proposed to improve these lower-bounds and they are compared with the lowerbounds of some explicitly QC-LDPC codes. Simulation results show that the constructed codes outperform PEG, random-like, and some QC-LDPC codes in [2], [3], [5], [9]. II. P RELIMINARIES For positive integer m, let Zm = {0, 1, · · · , m − 1} be the ring of integers modulus of m and Z∗m = {a ∈ Zm | gcd(a, m) = 1} be the set of elements in Zm which are prime relative to m. Now, for each (s, a) ∈ Zm × Z∗m , define s,a affine permutation matrix (APM) Im , or briefly I s,a when m is known, to be the m × m binary matrix (pi,j )1≤i,j≤m in which pi,j = 1 if and only if i − 1 = a(j − 1) + s mod m. In fact, in I s,a , the position of 1 in the first column is s + 1 and each column has shifted down within a rather than the previous column. Now, for a given J × L fully-one matrix B, let E = (ei,j )1≤i≤J,1≤j≤L be a J × L array on Zm × Z∗m , i.e. each ei,j is a pair (si,j , ai,j ) belongs to Zm × Z∗m . The (J, L) APM-LDPC code with base matrix B, APM-size m and exponent matrix E can be defined as the LDPC code with the following parity-check matrix. s ,a I 1,1 1,1 I s1,2 ,a1,2 · · · I s1,L ,a1,L I s2,1 ,a2,1 I s2,2 ,a2,2 · · · I s2,L ,a2,L Hm,E = (1) .. .. .. .. . . . . sJ,1 ,aJ,1 sJ,2 ,aJ,2 sJ,L ,aJ,L I I ··· I Especially, if ai,j = 1 for each 1 ≤ i ≤ J, 1 ≤ j ≤ L, then Hm,E in (1) can be considered as the parity-check matrix of a
1070-9908 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/LSP.2017.2688410, IEEE Signal Processing Letters 2
QC-LDPC code with circulant permutation matrix (CPM) size m. In this paper, each entry ei,j in E may be greater than m, however, for simplicity of the notations, all such components in Hm,E are reduced in modulus of m. The following theorem gives a necessary and sufficient condition for an APM-LDPC code with the parity-check matrix Hm,E to have a 2l−cycle in its Tanner graph. Theorem 1: ([12]) There is a 2l-cycle in TG(Hm,E ), if and only if there exists a chain (i0 , j0 ); (i1 , j1 ); · · · ; (il−1 , jl−1 ); (il , jl )∏= (i0 , j0 ), ik ̸= ik+1 and jk ̸= jk+1 , such that for l−1 ph = k=h aik+1 ,jk a−1 ik ,jk mod m, 0 ≤ h ≤ l − 1, pl = p0 , ∑l−1 and A = k=0 (pk sik ,jk − pk+1 sik+1 ,jk ) mod m. one of the following relations holds: 1) p0 = 1 and A = 0. 2) gcd(p0 − 1, m)|A. Cycles, especially short cycles, in the Tanner graph of an LDPC code degrade the performance of LDPC decoders. Therefore, the design of LDPC codes with large girth is of great interest. Here, we give some matrices E explicitly such that APM-LDPC codes with the exponent matrix E have girth at-least 6, 8 and 10, for enough large APM-sizes. In fact, for each g = 3, 4, 5, an exponent matrix E is constructed with lower-bound Q(E, g), such that g(Hm,E ) ≥ 2g for each (prime) m ≥ Q(E, g). Throughout the paper, for integer x > 0, we accept the notation P(x) to be the first prime not less than x, for example P(31) = 31 and P(60) = 61. III. E XPLICIT C ONSTRUCTIONS OF APM-LDPC C ODES WITH G IRTH AT- LEAST 6, 8, 10 First, we have the following lemma which is useful in the next theorems. Lemma 3.1: For two distinct integers a, b with ab ≥ 0, we have a ̸= b mod m, for each m ≥ max(|a|, |b|) + 1. Proof. If a = b mod m, then m|a − b, so m ≤ |a − b| ≤ max(|a|, |b|), because a and b have the same sign, which is impossible. Before giving the constructions by some theorems, we noticed that according to Lemma 3.1, to verify non-existence the desired cycles in Hm,E for all primes m ≥ Q(E, g), we prove that p0 = 1 and A ̸= 0 for m = +∞, i.e. all equations are computed in the integer ring instead of the ring of integers in modulus of m. Then, the lower bound Q(E, g) can be found as the first integer greater than the maximum absolute value of the (left & right) sides of the equations used. In order to construct APM-LDPC codes with girth 6, we start by the following theorem. Theorem 2: For each 1 ≤ i ≤ J, 1 ≤ j ≤ L, J ≤ L, define si,j = j − 1 and ai,j = ij. Then, for each prime m ≥ Q(E, 6) = P(L + 1), we have g(Hm,E ) ≥ 6. Proof. First, it is noticed that to have gcd(ai,j , m) = 1, we must set m ≥ L + 1. Now, by Theorem 1, the existence of a 4-cycle in TG(Hm,E ) corresponds to a chain (i0 , j0 ), (i1 , j1 ), 1 ≤ i0 ̸= i1 ≤ J, 1 ≤ j0 ̸= j1 ≤ L, such that for p0 = −1 −1 ai1 ,j0 a−1 i0 ,j0 ai0 ,j1 ai1 ,j1 , p1 = ai0 ,j1 ai1 ,j1 and A = p0 (si0 ,j0 − si0 ,j1 ) + p1 (si1 ,j1 − si1 ,j0 ), one of the conditions (1) or (2) holds. By substituting the given hypothesis, we have p0 = 1,
Code Explicit APM Explicit QC [14]
N6 1104 1840
N8 23000 26036
N10 313076 323564
TABLE I
i0 i−1 1
p1 = and A = (j1 − j0 )(i0 i−1 1 − 1). However, A ̸= 0 mod m, since otherwise, i0 = i1 mod m or j1 = j0 mod m which is impossible, because 0 < |j1 − j0 | < L < m and 0 < |i1 − i0 | < J < m and this completes the proof. It is noticed that, although, for each exponent matrix E constructed in this paper, the lower-bound Q(E, g) is strict, i.e. for each prime m ≥ Q(E, g), the APM-LDPC code with the exponent matrix E has girth 2g, g = 3, 4, 5, for each m ≥ Q(E, g), it is possible to attain girth 2g, for some m < Q(E, g). Then, we use m∗ (E, g) to denote the smallest APMsize of such APM-LDPC codes with girth 2g. Example 3.2: According to Theorem 1, the following matrix can be considered as the exponent matrix of (5, 6)regular APM-LDPC codes with girth 6, for each APM-size m ≥ Q(E, 6) = 7 (m is prime). E=
(0, 1) (0, 2) (0, 3) (0, 4) (0, 5)
(1, 2) (1, 4) (1, 6) (1, 8) (1, 10)
(2, 3) (2, 6) (2, 9) (2, 12) (2, 15)
(3, 4) (3, 8) (3, 12) (3, 16) (3, 20)
(4, 5) (4, 10) (4, 15) (4, 20) (4, 25)
(5, 6) (5, 12) (5, 18) (5, 24) (5, 30)
.
Moreover, for APM-size 23, we have g(Hm,E ) = 6. Using a backtracking algorithm to counting the cycles in a simple undirected graph [21], Table I has provided a cycle-multiplicities comparison between the APM-LDPC code with the given exponent matrix and a girth-6 QC-LDPC code in [14] (with CPM size 23 and exponent matrix (ei,j )1≤i≤5,1≤j≤6 , eij = (i − 1)(j − 1)). Results show that the constructed APM-LDPC code has fewer cycles of length 2i, 3 ≤ i ≤ 5, denoted by N2i , rather than the mentioned QC-LDPC code with the same length and girth. Now, for the case of girth 8, the following theorem gives some necessary conditions to avoid 4-cycles and 6-cycles. In fact, the main idea for this construction is based on the greatest common divisor (GCD) algorithm, recently proposed in [3]. Theorem 3: For each 1 ≤ i ≤ J and 1 ≤ j ≤ L, let ai,j = ij and si,j = i(j − 1)ti , where 0 ≤ t1 < t2 < · · · < tJ ti2 −ti0 are selected arbitrary such that gcd(ti −t ≥ L, for i0 ,ti2 −ti1 ) 2 each 1 ≤ i0 < i1 < i2 ≤ J. Then, for each prime m ≥ Q(E, 8) = P(J(L − 1)(tJ − t1 )), we have g(Hm,E ) ≥ 8. Proof. Similar to the proof of Theorem 2, to claim no 4-cycle, we have p0 = 1, p1 = i0 i−1 1 . Moreover, A = i0 (j1 − j0 )(ti1 − ti0 ) which is not zero, because i0 ̸= 0, j1 ̸= j0 and ti1 ̸= ti0 . On the other hand, corresponding to a 6-cycle, we have −1 −1 −1 p2 = ai0 ,j2 a−1 i2 ,j2 = i0 i2 , p1 = ai2 ,j1 ai1 ,j1 p2 = i0 i1 , p0 = −1 ai1 ,j0 ai0 ,j0 p1 p2 = 1 and A = p0 (si0 ,j0 − si0 ,j2 ) + p1 (si1 ,j1 − si1 ,j0 ) + p2 (si2 ,j2 − si2 ,j1 ) = i0 (ti0 (j0 − j2 ) + ti1 (j1 − j0 ) + ti2 (j2 − j1 )) = i0 ((ti1 − ti0 )(j2 − j0 ) + (ti1 − ti2 )(j1 − j2 )) which is zero if (ti2 −ti0 )(j2 −j0 ) = (ti2 −ti1 )(j1 −j0 ). Now, by division two side of the last relation by gcd(ti2 − ti0 , ti2 − ti2 −ti0 |j1 − j0 which is impossible, ti1 ), we have gcd(ti −t i ,ti −ti ) t
2
−t
0
2
1
i2 i0 because gcd(ti −t ≥ L > |j1 − j0 | > 0. Now, the i0 ,ti2 −ti1 ) 2 proof is completed, since m is a prime greater than the hand of
1070-9908 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/LSP.2017.2688410, IEEE Signal Processing Letters 3
J 3 4 5 5 5 6 6 ≥3
L L≥4 L≥5 L mod 6 = 0, 2, 3, 5 L mod 6 = 1, 3 L mod 6 = 2, 4 L mod 6 = 1, 3 L mod 12 = 2, 8, 11 ≥4
{t1 , · · · , tJ } {0, 1, L} {0, 1, L, L + 1} {0, 1, L + 2, 2L + 1, 2L + 2} {0, 2, L, 2L + 1, 2L + 2} {0, 1, L, L + 1, 2L + 3} {0, 2, L, L + 4, 2L + 2, 2L + 4} {0, 1, L, L + 3, 2L + 2, 2L + 3} {fL (0), fL (1), · · · , fL (J − 1)}
Code Explicit APM QC [4]
J
3
4
5 6
L 4 5 6 7 8 5 6 7 8 6 6 7 8 7 8
m 13 19 31 37 59 29 37 53 67 71 67 67 113 67 137
Q 37 61 97 127 173 97 149 193 257 353 401 487 631 653 809
Q′ [2] 13 21 31 43 57 25 36 49 64 71 91 97 127 109 134
IQ 13 19 31 37 59 29 37 53 67 71 79 97 113 103 137
FOR
L ≤ 8.
the above equalities which are at most max{i0 (ti2 − ti1 )(j1 − j0 ) : 1 ≤ i0 < i1 < i2 ≤ J, 1 ≤ j0 ̸= j1 ≤ L} = J(L − 1)(tJ − t1 ) < Q(E, 8). Example 3.3: For J = 5, L = 6 and t = {t1 , t2 , t3 , t4 , t5 } = {0, 5, 9, 14, 16}, the following exponent matrix given by Theorem 3 corresponds to APM-LDPC codes with girth 8 for each (prime) APM-size m ≥ P(400) = 401. (0, 1) (0, 2) (0, 3) (0, 4) (0, 5) (0, 6)
(0, 2) (0, 3) (0, 4) (0, 5)
(10, 4) (27, 6) (56, 8) (80, 10)
(20, 6) (54, 9) (112, 12) (160, 15)
(30, 8) (81, 12) (168, 16) (240, 20)
(40, 10) (108, 15) (224, 20) (320, 25)
(50, 12) (135, 18) (280, 24) (400, 30)
N14 24030 35689
TABLE IV
{t1 , t2 , · · · , tJ } {0, 1, 4} {0, 2, 5} {0, 1, 6} {0, 3, 7} {0, 1, 8} {0, 1, 5, 6} {0, 1, 6, 7} {0, 1, 7, 8} {0, 1, 8, 9} {0, 1, 8, 9, 14} {0, 5, 9, 14, 16} {0, 2, 7, 11, 16} {0, 1, 10, 11, 18} {0, 2, 7, 11, 16, 18} {0, 1, 8, 11, 18, 19}
TABLE III S OME {t1 , . . . , tJ } SATISFIED IN T HEOREM 3
N12 5251 7476
i0 i−1 1
TABLE II ∗
N10 623 1246
Moreover, for m = 89, the (5, 6)-regular APM-LDPC code with the given exponent matrix has girth 8 and 34977 cycles of length 8 which is less than the number of 8-cycles in the explicit (5, 6)-regular QC-LDPC in [2] (with N8 = 35778). The GCDG8 algorithm in [3] can be used to generate some proper sets {t1 , . . . , tJ } holding in Theorem 3. Using GCDG8, Table II has provided some explicit constructions for such ∑k proper sets from [2], [3] in which fL (x) = i=0 xi Li , where xk xk−1 · · · x0 is the binary representation of x. However, in order to improve the lower bounds, some proper randomly constructed {t1 , . . . , tJ } are given in Table III, for 3 ≤ J ≤ 6 and L ≤ 8. Setting J = 3 in Eq. 1 and employing the approach similar to the method in [19], here, we present an explicit method to generate (3, L) APM-LDPC codes with girth at least 10. Theorem 4: Let r ≥ 2 be an integer and c1 , . . . , cL be some distinct integers satisfying in e|cj0 − cj1 | ̸= f |cj2 − cj3 |, for each 1 ≤ j0 < j1 ≤ L, 1 ≤ j2 < j3 ≤ L, (j0 , j1 ) ̸= (j2 , j3 ), and for each two integers e, f with 1 ≤ e < f < r2 . Define ai,j = ij and si,j = iri−1 cj , for 1 ≤ i ≤ 3 and 1 ≤ j ≤ L. Then, for each (prime) m ≥ Q(E, 10) = P(2(r2 − 1) max{cγ − cν : 1 ≤ γ, ν ≤ L}), we have g(Hm,E ) ≥ 10. Proof. Like the previous, to claim no 4-cycle, we have p0 = 1,
p1 = and A = i0 (ri0 −1 − ri1 −1 )(cj1 − cj0 ) which is not zero, because i0 ̸= i1 , j0 ̸= j1 and cj0 ̸= cj1 . On the −1 other hand, for 6-cycle, we have p2 = ai0 ,j2 a−1 i2 ,j2 = i0 i2 , −1 −1 −1 p1 = ai2 ,j1 ai1 ,j1 p2 = i0 i1 , p0 = ai1 ,j0 ai0 ,j0 p1 p2 = 1 and A = p0 (si0 ,j0 −si0 ,j2 )+p1 (si1 ,j1 −si1 ,j0 )+p2 (si2 ,j2 −si2 ,j1 ) = i0 (ri0 −1 (cj0 − cj2 ) + ri1 −1 (cj1 − cj0 ) + ri2 −1 (cj2 − cj1 )), for some distinct 1 ≤ i0 , i1 , i2 ≤ 3. Without loss of generality, let (i0 , i1 , i2 ) = (1, 2, 3), so A = (r − 1)(cj2 − cj0 + r(cj2 − cj1 )) is non-zero if |cj2 − cj0 | ̸= r|cj2 − cj1 | which is hold according to the assumption. Finally, according to a 8-cycle, we have p0 = 1 and A = i0 (cj0 (ri0 −1 − ri1 −1 ) + cj1 (ri1 −1 − ri2 −1 ) + cj2 (ri2 −1 − ri3 −1 ) + cj3 (ri3 −1 − ri0 −1 )) = 0, for some 1 ≤ i0 ̸= i1 ̸= i2 ̸= i3 ≤ 3. Hence, for some 0 ≤ k ≤ 1, ik = ik+2 . Without loss of generality, let i0 = i2 . Now, if i1 = i3 , then we have (cj1 − cj0 ) + (cj3 − cj2 ) = 0 which is impossible and if i1 ̸= i3 , then we have (ri1 −1 − ri0 −1 )(cj1 − cj0 )+(ri3 −1 −ri0 −1 )(cj3 −cj0 ) = 0, which is not held and this completes the first part of the proof. Now, to verify Q(E, 10), we noticed that the left hand of the above equations is bounded above by 2(r2 − 1) max{cγ − cν : 1 ≤ γ, ν ≤ L} and this completes the proof. Example 3.4: In Theorem 4, let r = 2 and c = (c1 , c2 , c3 , c4 ) = (0, 1, 9, 14). So, for each (prime) APM-size m ≥ P(84) = 89, the exponent matrix of some (3, 4)-regular APM-LDPC codes with girth 10 can be considered as follows. ( ) E=
(0, 1) (0, 2) (0, 3)
(1, 2) (4, 4) (12, 6)
(9, 3) (36, 6) (108, 9)
(
′
On the other hand, the matrix E =
(14, 4) (56, 8) (168, 12)
.
0 0 0
0 17 2
0 1 11
0 14 6
) is
considered in [4] as the exponent matrix of some (3, 4)-regular QC-LDPC codes with girth 10, for each CPM-size m ≥ 37. Here, to have a reasonable comparison, a cycle-multiplicities comparison between the APM-LDPC code with parity-check matrix H89,E and the QC-LDPC code with exponent matrix E ′ and CPM-size 89 (instead of CPM-size 37) is given in Table IV. As the outputs show, the constructed APM-LDPC code has fewer cycles of length 2i, 5 ≤ i ≤ 7, rather than the QC-LDPC code in [4] of the same length and girth. Here, for the given parameters r, L, an L-length set {c1 , . . . , cL } ⊆ Z≥0 is called proper, if it is hold in the condition of Theorem 4. Using Algorithm 3.5, some proper {c1 , . . . , cL } with the corresponding lower-bound Q = Q(E, 10) and APM-size m∗ = m∗ (E, 10), are given in Table V, for r = 2 and 4 ≤ L ≤ 9. Algorithm 3.5: 1) Let c1 = 0. 2) for k from 1 to L − 1 do Let c1 , · · · , ck , c1 < c2 < · · · < ck , be chosen inductively. Choose ck+1 as the an integer greater than ck , such that {c1 , · · · , ck+1 } is a proper set. Although, a computer-search is needed to generate proper sets {c1 , · · · , cL } in Algorithm 3.5, it can be seen that the
1070-9908 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/LSP.2017.2688410, IEEE Signal Processing Letters 4 −2
−1
−1
10
10
APM(g6;2627) APM(g6;2257) QC(g6;2627)[5] QC(g6;2257)[5] It=10,R=0.83
−2
10
10 Proposed PEG Rand it=50;R=0.4
−3
10
−2
10
−3
−3
10
10
Length=535
−4
−4
10
BER
BER
BER
10
−4
10
Length=920
−5
10
−5
−5
APM(g10;905);unmasked QC(g12;905);unmasked[9] APM(g8;1467);masked QC(g8;1467);masked[3] QC(g8;1467);masked[2] It=50,R=0.4
10
10
−6
10
−6
10
−7
−7
10
Fig. 1. L 4 5 6 7 8 9
−6
10
3.5
4
4.5
5
10
−7
1
2
3
4
10
Eb/N0 (dB)
Eb/No (dB)
1
1.5
2 Eb/No (dB)
(a)
(b)
(c)
2.5
3
Some constructed APM-LDPC codes with different girths against PEG, random-like and QC-LDPC codes in [2], [3], [5], [9]. m∗ 59 103 181 257 373 709
Q 89 151 241 359 577 1061
Q′ [19] 84 151 343 529 733 1189
IQ 71 113 199 307 479 881
{c1 , c2 , · · · , cL } {0, 1, 9, 14} {0, 1, 5, 18, 25} {0, 1, 17, 31, 36, 40} {0, 1, 22, 31, 35, 54, 59} {0, 1, 10, 17, 36, 59, 92, 96} {0, 1, 16, 29, 75, 95, 165, 172, 176}
TABLE V S OME {c1 , c2 , · · · , cL } SATISFIED IN T HEOREM 4 FOR r = 2 AND L ≤ 9.
complexity of the algorithm is at most o(L3 ) which is a polynomial time (it is considerably lower than the complexity of the algorithm in [12] for constructing APM-LDPC codes with girth 10). A. Improving the lower-bound Q(E,g) Although, the lower-bound Q(E, g) given in Theorems 2-4 is strict, i.e. we can achieve to the desired girth 2g, 3 ≤ g ≤ 5, for each prime m ≥ Q(E, g), however, it can be improved by the following method. We say (prime) m is admissible value, if the theorems is hold for APM-size m. Let A be all possible values of A in the proofs associated to the cycles of length 2i, 2 ≤ i ≤ g − 1 and B = {b ∈ Z : ∃a ∈ A, b|a}. For example, for girth 8 in Theorem 3, A is all of the values i0 (j1 − j0 )(ti1 − ti0 ) and i0 ((ti1 − ti0 )(j2 − j0 ) + (ti1 − ti2 )(j1 − j2 )) in the proof and B is A union with its divisors. Clearly, each prime not in B is admissible, so the smallest admissible integer (already denoted by m∗ (E, g)) can be obtained as the first prime integer not in B. Moreover, the improved lower-bound Q(E, g) (denoted by IQ(E, g)) can be considered as the smallest prime m ̸∈ B in which all primes greater than m don’t belong to B. As Tables III, V show, the bound IQ = IQ(E, g) is sometimes smaller than the lower-bound of some QC-LDPC codes in [2], [19] (denoted by Q′ ), and it is significantly better than Q. IV. S IMULATION RESULTS In this section, some comparisons are provided between some explicitly constructed APM-LDPC codes with girth at most 10, on one hand, and some QC-LDPC codes in [2], [3], [5], [9], [15], [16], on the other hand. In the figures, an APMLDPC code and a QC-LDPC code with girth b and length n are denoted by AP M (gb; n) and QC(gb; n), respectively. Figure 1, part (a), presents a bit-error-rate (BER) comparison between some girth-6 APM-LDPC codes constructed explicitly and some (6,37)-regular QC-LDPC codes with girth
6 constructed from prime fields Z61 and Z71 in [5]. As this figure shows, by setting the maximum decoding iteration 10, the constructed APM-LDPC codes of length 2257 and 2627 outperform the corresponding QC-LDPC codes in [5]. Figure 1, part (b), is provided a comparison between the constructed (3, 5)-regular APM-LDPC codes with lengths 535 and 920, on one hand, and PEG [16] and random-like LDPC codes [15] with no 4-cycles, on the other hand. As shown in this figure, the constructed APM-LDPC codes perform better than the corresponding PEG and random-like LDPC codes. Finally, Figure 1, part (c), is providing some comparisons between some explicitly girth-8 and girth-10 APM-LDPC codes and some explicitly constructed QC-LDPC codes with girth at most 12 in [2] and [3]. Moreover, for (5, 9)-regular constructed codes of length 1467, the following masking matrix (given in [2]) is employed to obtain fewer small cycles and improve the performance. 011101101
001110110 100111011 110010101 111001010
For the unmasked case, a girth-10 (3, 5)-regular APMLDPC code of length 905 is compared with a (3, 5)-regular QC-LDPC code with girth 12 based on the concept of the coset in [9]. As part (c) in Figure 1 shows, the constructed masked and unmasked APM-LDPC codes with girth 8 and 10 perform better than the proposed masked and unmasked QCLDPC codes with girth at most 12 in [2], [3], [9], respectively. V. C ONCLUSION Recently, APM-LDPC codes are established as a generalization of QC-LDPC codes whose parity-check matrices contain the zero blocks or blocks of affine permutation matrices. In this paper, some explicit constructions for APM-LDPC codes with girth 6, 8 and 10 are proposed. Simulation results show that the constructed APM-LDPC codes outperform some QCLDPC codes with girth at most 12. VI. ACKNOWLEDGMENT We would like to thank the anonymous referees for their helpful comments. This work was supported by the Research Council of Shahrekord University under Grant 94GRD1M584. Moreover, the work of M. Gholami was supported by the IPM under Grant 95050065.
1070-9908 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/LSP.2017.2688410, IEEE Signal Processing Letters 5
R EFERENCES [1] R. M. Tanner, “On graph constructions for LDPC codes by quasi-cyclic extension”, Informa, Coding and Mathematics, Springer US, vol. 687, pp. 209–220, 2002. [2] J. Zhang and G. Zhang, “Deterministic girth-eight QC-LDPC codes with large column weight”, IEEE Commun. Lett., vol. 18, no. 4, pp. 656–659, Apr. 2014. [3] G. Zhang, R. Sun, and X. Wang, “Construction of girth-eight QC-LDPC codes from greatest common divisor”, IEEE Commun. Lett., vol. 17, no. 2, pp. 369–372, Feb. 2013. [4] I. E. Bocharova, F. Hug, R. Johannesson, B. D. Kudryashov, and R. V. Satyukov, “Searching for voltage graph-based LDPC tailbiting codes with large girth”, IEEE Trans. Inf. Theory, vol. 58, no. 4, pp. 2265–2279, Apr. 2012. [5] Q. Zhang, X. Li, D. Zhang and B. Guo, “Regular Quasi-Cyclic LDPC codes with girth 6 from prime fields”, Sixth International Conference on Intelligent Information Hiding and Multimedia Signal Processing (IIHMSP), pp. 470–473, 2010. [6] S. Myung and K. Yang, “A combining method of quasi-cyclic LDPC codes by the chinese remainder theorem”, IEEE Commun. Lett., vol. 9, no. 9, pp. 823-825, Sept. 2005. [7] C.-M. Huang, J.-F. Huang, and C.-C. Yang, “Construction of quasi-cyclic LDPC codes from quadratic congruences”, IEEE Commun. Lett., vol. 12, no. 4, pp. 313–315, Apr. 2008. [8] G. Zhang, R. Sun, and X. Wang, “Several explicit constructions for (3, L) QC-LDPC codes with girth at least eight”, IEEE Commun. Lett., vol. 17, no. 9, pp. 1822–1825, Sept. 2013. [9] J. Wang, G. Zhang and Q. Zhou,“Coset-based QC-LDPC codes without small cycles”, Elect. Lett., vol. 50, no. 22, pp. 1597–1598, Oct. 2014. [10] M. Gholami and A. Nassaj, “Row and column extensions of 4-cycle free LDPC codes”, IEEE Commun. Lett., vol. 20, no. 1, pp. 25– 28, Jan. 2016. [11] M. Gholami and Z. Gholami, “An explicit method to generate some QC-LDPC codes with girth 8”, Iranian Journal of Science and Technology (Sciences) (IJSTS), vol. 40, pp. 145–149, 2016. [12] M. Gholami and M. Alinia, “High-performance binary and nonbinary LDPC codes based on affine permutation matrices”, IET Commun., vol. 9, no. 17, pp. 2114–2123, Nov. 2015. [13] K. Yang and S. Myung, “A combining method of quasi-cyclic LDPC codes by the Chinese remainder theorem”, IEEE Commun. Lett., vol. 9, no. 9, pp. 823–825, Sept. 2005. [14] M. Karimi and A. H. Banihashemi, “On the girth of quasi cyclic protograph LDPC codes”, IEEE. Trans. Inf. Theory, vol. 59, no. 7, pp. 4542–4552, July. 2013. [15] D. J. C. MacKay, “Good error-correcting codes based on very sparse matrices”, IEEE Trans. Inf. Theory, vol. 45, pp. 399–431, Mar. 1999. [16] X.-Y. Hu, E. Eleftheriou, D. M. Arnold, “Regular and irregular progressive edge-growth Tanner graphs”, IEEE Trans. Inf. Theory, vol. 51, no. 1, pp. 386–398, Jan. 2005. [17] J. Huang, L. Liu, W. Zhou, and S. Zhou, “Larg-girth nonbinary QCLDPC codes of various lengths”, IEEE Trans. Commun., vol. 58, no. 12, pp. 3436–3447, Dec. 2010. [18] M. David, R. Smarandache, and D. J. Costello, “Quasi-cyclic LDPC codes based on pre-lifted protographs”, IEEE Trans. Inf. Theory, vol. 60, no. 10, pp. 5856–5874, Sept. 2014. [19] L. Lei and Z. Wu-yang, “Design of QC-LDPC code with continuously variable length”, Journal of Elect. & Inf. Technology, vol. 31, no. 10, 2009. [20] ⟨http : //www.cs.toronto.edu/Radford/ldpc.software.html⟩. [21] J. Howbert, “Count all cycles in simple undirected graph”, www.mathworks.com, Updated 29 Aug 2011. [22] S. Myung, K. Yang, D. S. Park, “A Combining Method of Structured LDPC Codes from Affine Permutation Matrices”, ISIT 2006. [23] M.E. O’Sullivan, “Algebraic construction of sparse matrices with large girth, IEEE Transactions on Information Theory”, vol. 52, no. 2, Feb. 2006.
1070-9908 (c) 2016 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.