Role of the Product λ′(0)ρ′(1) in Determining LDPC Code Performance

The objective of this work is to analyze the importance of the product λ′(0)ρ′(1) in determining low density parity check (LDPC) code performance, as far as its influence on the weight distribution function and on the decoding thresholds. This analysis is based on the 2006 paper by Di et al., as far as the weight distribution function is concerned, and on the 2018 paper by Vatta et al., regarding the LDPC decoding thresholds. In particular, the first paper Di et al. analyzed the relation between the above mentioned product and the minimum weight of an ensemble of random LDPC codewords, whereas in the second some analytical upper bounds to the LDPC decoding thresholds were determined. In the present work, besides analyzing the performance of an ensemble of LDPC codes through the outcomes of Di et al.’s 2006 paper, we give the relation between one of the upper bounds found in Vatta et al.’s 2018 paper and the above mentioned product λ′(0)ρ′(1), thus showing its role in also determining an upper bound to LDPC decoding thresholds.


Introduction
Low Density Parity Check (LDPC) codes, belonging to the class of block channel codes, were introduced for the first time in the 1960s in Robert Gallager's doctoral thesis [1]. Now they are counted among the most promising and cutting-edge coding techniques in contemporary channel coding. Due to the technological impediments of the time in which they were introduced and of the decoder complexity, these codes were hardly contemplated for about 30 years, with the exception of Tanner's graphical description, introduced in [2], and successively designated as the Tanner graph. Appearing independently of Gallager's work, the authors of [3,4] were the re-inventors of LDPC codes in the mid 1990s. Afterwards, because of their astonishing performance approaching the Shannon limit along with Turbo codes [5], they were rapidly comprehended in current communication standards [6][7][8].
The asymptotic performance of a block channel code, such as an LDPC code, is determined by its minimum distance, i.e., by its minimum weight codewords and by their multiplicities. These determine its correction capability and its asymptotic performance expressed in terms of bit error rate (BER) and frame error rate (FER) vs. the signal-to-noise ratio (SNR) E b /N 0 from moderate to high SNRs, i.e., away from capacity. Moreover, as far as LDPC codes are concerned, as first observed in [1], it presents the well-known "threshold phenomenon". In other words, the noise threshold defines a channel noise upper bound under which the lost information probability can be maintained as low as needed.
Since it is extremely difficult to study the performance of a LDPC codes ensemble analytically as the determination of its weight enumerating function is a complicated task, in this work we try to give an insight into this problem analyzing the importance of the product λ (0)ρ (1) in influencing not only this function, that, as said above, determines the asymptotic BER and FER performance, away from capacity, but also the decoding thresholds, i.e., the performance next to the Shannon limit. Namely, on the basis of the results of [9,10], respectively, we are interested in determining, on one side, the relationship between the above mentioned product and the minimum distance of a LDPC codes ensemble, and, on the other side, the relationship between this product and the noise threshold of a LDPC codes ensemble. The first, namely the minimum distance, is related to LDPC's codewords weight distribution, i.e., to their distance spectrum. The second, namely the noise threshold, is related to the convergence behavior of their iterative decoding algorithm, which is particularly important because LDPC codes, as well as turbo-like codes, are "capacity-achieving" codes.
As far as the first of the above cited papers, namely [9], is concerned, its main result asserts that the minimum distance growth rate of irregular LDPC codes ensembles is only determined by the value of the product λ (0)ρ (1), a number that is related to the degree distribution polynomial couple λ(x) and ρ(x). In particular, if λ (0)ρ (1) > 1, the minimum distance growth with the block length being sublinear, if not, the minimum distance growth with the block length is linear.
As far as the second of the above cited papers, namely Vatta et al.'s 2018 paper [10], is concerned, in this work we derived three computationally light upper bounds to LDPC belief-propagation decoding thresholds, usually determined "exactly" through density evolution, assuming, as in [11], the validity of the Gaussian Approximation (GA) (the employment of which is very convenient when an effective and computationally light method is required. See [10,[12][13][14][15]), and by using the derivation of [16] (the clarifying vision and interpretation of [11] allows to determine the threshold as the ultimate value guaranteeing the convergence of the recurrent sequence, therein defined, but the authors of [11] did not provide any mathematical method to calculate it. Thus, in [16] we presented a mathematical method, based on the quadratic degeneracy theory, allowing the evaluation of noise thresholds by means of converting a convergence problem into a mathematical analysis problem. Using the algorithm shown in [16], a computationally light approximation of LDPC belief-propagation decoding thresholds, usually determined "exactly" through density evolution, can be obtained, assuming, as in [11], the validity of the GA) to determine the asymptotic analytical performance of ∆(s, t) defined, e.g., in [6].
In Section 2 we recall LDPC codes graphical representation and, in Section 3, the Gaussian Approximation approach. In Section 4 we review the mathematical method deduced in [16] to explain how the upper bounds of [10] were obtained. Furthermore, to analyze the relationship between the product λ (0)ρ (1) and the minimum distance of a LDPC codes ensemble, in Section 6 the results of [9] are recalled, and, to analyze the relationship between this product and the noise threshold of a LDPC codes ensemble, in Section 7 we present a Lemma specifying the relationship between the third noise threshold upper bound found in [10] and the product λ (0)ρ (1). In Section 8, the numeric results of these two analyses are reported. These results are discussed in Section 9 which also will report some simulation results to support the discussion. Finally, Section 10 summarizes the conclusions.

Graphical Representation of LDPC Codes
LDPC codes can be represented in a graphical way through a commonly named bipartite graph, commonly known as the Tanner graph [2]. As the trellis diagram gives an efficient graphical representation of a convolutional code behavior, so does the Tanner graph in providing an efficient graphical representation of how a LDPC encoder and decoder work.
The nodes in a Tanner graph are classified in variable nodes and check nodes. In the drawing of the Tanner graph, the following rule must be respected: An edge connects a variable node i to a check node j when the corresponding element h ij in the parity-check matrix H is a 1. From this it may be deduced that there is a check node for each of the m = n − k check equations, and that there is a variable node for each of the n code bits c i .
As far as irregular LDPC codes are concerned [4], the parameters d l and d r specify the maximum degrees of the nodes distributions in their Tanner graphs, defined, e.g., in [17]. In particular, the polynomial λ(x) (ρ(x)) defines the variable (check) nodes edge-perspective degree distribution: A LDPC code rate can be expressed as [18]: The edge-perspective degree distributions λ(x) and ρ(x) are related to the node perspective degree distributions L(x) and R(x) as follows [9]: being,

Gaussian Approximation
Following the assumptions made in [11], the distributions of the messages involved in the LDPC iterative decoding process under appropriate hypotheses may be approximated as Gaussians. Since it may be observed that to totally specify a Gaussian only its mean and variance are needed, and during the iterative decoding process it is necessary to specify only the means and variances of a generic check node output message, u, and of a generic variable node output message, v. Furthermore, since in [11], assuming the validity of the symmetry condition, the variance σ 2 was shown to be connected to the mean m by the relation σ 2 = 2m, the means only can be kept in the computation process. The means of u and v have been denoted by m v at the l-th iteration, respectively. Furthermore, the log-likelihood ratio (LLR) message u 0 from the channel can be taken as Gaussian with a mean of m u 0 = 2/σ 2 n and a variance of 4/σ 2 n , being σ 2 n = N 0 /2 the variance of the channel noise. The mean of the output of a degree-i variable node at the l th iteration is: where m u 0 is the mean of u 0 and m (l−1) u is the mean of u at the (l − 1)-th iteration. Defining φ(x) as in Definition 1 in [11], the update rule for an irregular code becomes: The output of a variable node is specified by its mean m (l) u , that can be calculated as the linear combination of the means m Defining s = m u 0 and t l = m (l) u , Equation (10) may be rewritten as: where the function f (s, t) is expressed as:

Mathematical Method of [16]
As noted in [16], the problem of the determination of the convergence of Equation (10) may be solved by converting it to a problem of quadratic degeneracy, the solution of which can be given in charge to a commercial software. If the second partial derivative of f (s, t) with respect to t, f tt (s, t), is = 0, the problem of the determination of the convergence of Equation (10) becomes the search for the solution of the following system: where f t (s, t) is the first partial derivative of f (s, t) with respect to t. Its solution is the value s * = m * u 0 , which is the minimum s = m u 0 guaranteeing the convergence of Equation (10).

Upper Bounds on LDPC Codes Decoding Thresholds
The upper bounds on thresholds have been determined in [10] from the asymptotic performance of Equation (17). The first bound, called s * bound in [10], was obtained determining an approximation of the function φ(x) valid for when x ≥ 10. To obtain the second upper bound, called s * approx in [10], we have used the approximation Equation (16) of [10] (that was implicitly used in [11]). Finally, involving the Jensen's inequality to manipulate the second upper bound, the third bound, called s * Jensen in [10], was determined.

Upper Bound on LDPC Codes Decoding Thresholds Holding for i 1 ≥ 2
As far as the above mentioned first upper bound on LDPC codes thresholds (called s * bound in [10]) is concerned, in [20] the following lemma was proved.
Lemma: Given λ(x) of minimum degree i 1 ≥ 2, and defining z(s, t) as z(s, t) : , being W(·) the Lambert-W function, the following asymptotic approximation holds: Recalling that Applying Equation (14) to Equations (18) and (19) we get: and Equation (17) can be rewritten as: Its solution (s * bound , t * bound ) determines the bound σ * bound = 2 s * bound , which is valid ∀i 1 , unlike the other two (s * approx and s * Jensen ) reported in [10], which hold both for i 1 = 2 only.

Further Upper Bounds on LDPC Codes Decoding Thresholds Holding for i
With a j := logA j = −2log((j − 1)λ i 1 ), Equation (18) can be rewritten as: Assuming that the following simplified approximation holds: W z(s, t)e z(s,t)+a j W (z(s, t) + a j )e z(s,t)+a j , calling x := z s (t) + a j , and being W(xe x ) ≡ x for x > 0, we find a much simpler asymptotic expression for f (s, t) (simpler than the one of Equation (18)): Thus, the asymptotic performance of f (s, t) is given by: This is the same asymptotic expression obtained, following a different derivation, in [11], where the approximation in Equation (23) was implicitly used in the proof of Lemma 3.
Thus, ignoring the O(t −1 ), for large t Equation (17) can be rewritten as: The solution of Equation (26) is: and σ * approx = 2 s * approx gives the second upper bound of [10].
Applying the Jensen's inequality: and ignoring the O(t −1 ), for large t Equation (17) can be rewritten as: The solution of Equation (29) is: Taking σ * Jensen = 2 s * Jensen we obtain the third upper bound of [10]. Since, for the Jensen's inequality for Equation (28): it results s * approx ≤ s * Jensen and thus σ * Jensen ≤ σ * approx , i.e., σ * Jensen gives a tighter upper bound.

Role of the Product λ (0)ρ (1) in Determining the Weight Distribution of LDPC Codes
In Reference [9] it was demonstrated that λ (0) = λ 2 occupies a key position in determining LDPC codes performance, both theoretically and in practice. In particular, the minimum distance growth rate, namely, whether it is linear or not, was shown to depend only on the product λ (0)ρ (1). Namely, if λ (0)ρ (1) > 1, the minimum distance growth rate is sublinear with the block length, otherwise, i.e., if λ (0)ρ (1) < 1, it is linear with the block length.
Moreover, in Reference [9] it was demonstrated that, when λ (0)ρ (1) > 1 (condition examined in this paper), for any integer l such that: being n the codeword length, the probability that a randomly chosen code G ∈ C(n, λ, ρ) has any weight-l codeword is: From Equations (32) and (33), it may be concluded that both the parameter L 2 and the product λ (0)ρ (1) have an effect on the weight distribution of a LDPC code.

Role of the Product λ (0)ρ (1) in Determining the Decoding Threshold of LDPC Codes
The bound of Equation (30) is strictly related to the product λ (0)ρ (1) investigated in this paper, but this relationship was not explicitly put in evidence in [10]. In particular, extending the result of [10], the following Lemma can be easily proven.  (1) and (2), respectively, λ (0) may be alternatively expressed as and ρ (1) as, Thus, remembering the expression of s * Jensen found in Equation (30), which holds for i 1 = 2 only, this can be rewritten as: and thus, given the above mentioned expressions found for λ (0) and ρ (1), also as: from which we get the result.
Taking σ * Jensen = 2 s * Jensen , the third upper bound of [10] may be rewritten as:

Numeric Results
Being λ (0) and ρ (1) given in Equations (35) and (36), respectively, we obtain: In Tables 1-3 we report λ(x) and ρ(x) for the irregular LDPC codes of Table I and II in [18]. For each pair of degree distributions, we also report the values of the product λ (0)ρ (1) and of the parameter L 2 . Moreover, we give the σ * values obtained in [18] by applying the density evolution analysis, jointly with the upper bound σ * Jensen = 2/s * Jensen defined in Equation (30). Table 1. Computed parameters and decoding threshold bound regarding rate-1/2 codes deduced from Table I of [18], with d l = 4, 6, 7, and 8.  Table 2. Computed parameters and decoding threshold bound regarding rate-1/2 codes deduced from Table I of [18], with d l = 9, 10, 11, and 12.  Besides these results, we also reported the SNR gap and SNR gap−spline values in dB, given by: defining the gap from the Shannon limit of the bounds σ Jensen . In Equations (41) and (42), C −1 (1/2) was evaluated using an approximation or a spline interpolation of C −1 (r), respectively, both recalled in the Appendix A. Applying the approximation C −1 1 (1/2), we get the Shannon limit as σ Shannon1 = 0.977813, which in good agreement with [21]. Applying the spline interpolation we find σ Shannon−spline = 0.978696 is in good agreement with [18]. In regards to the noise power, the Shannon limit is given by C −1 1 (1/2) = (2σ 2 Shannon1 ) −1 = 0.522948 and C −1 spline (1/2) = (2σ 2 Shannon−spline ) −1 = 0.522005.

Discussion and Simulation Results
Given the pairs λ(x) and ρ(x) of Tables 1-3, for each of them, an ensemble with a random rate-1/2 LDPC codes has been generated, and their performance simulated using a customized software built on the basis of [22], assuming a memoryless binary input with an additive white Gaussian noise (BI-AWGN) channel.
Since l in Equation (33) is upper bounded by Equation (32), the discussion of the results may be conducted separately for the following two conditions:
9.1. Case 1: The rate r of the codes whose pairs λ(x) and ρ(x) were listed in Tables 1-3, is 1/2. It follows that, for the examples considered in the paper, 1 − r = 1/2. Thus, the degree distributions fulfilling the condition L 2 n > (1 − r)n are those with L 2 n > n/2, i.e., L 2 > 1/2. This condition is fulfilled by the distributions having d l = 4, 6, and 8 of Table 1. This implicates that l ≤ n/2 for all these codes, i.e., that l is fixed. Given this fixed l value, the performance of the random selected LDPC codes having degree distributions given in the 2-nd, 3-rd, and last column of Table 1, are characterized by an asymptotic BER performance that depends on the probability of Equation (33) only, i.e., only on the value of the product λ (0)ρ (1). Taken these three degree distributions, the random selected LDPC code having a pair λ(x) and ρ(x) that minimizes Equation (33), and thus is characterized by the best asymptotic BER performance, is the one for which the product λ (0)ρ (1) is minimum. This is the case of the code ensemble with d l = 8 in Table 1. On the other hand, the random selected LDPC code having a pair λ(x) and ρ(x) that maximize Equation (33) is the one for which the product λ (0)ρ (1) is the maximum. This is the case of the code ensemble with d l = 4 in Table 1. Moreover, the minimization of the product λ (0)ρ (1) implies, as expected from Equation (39), the maximization of σ * Jensen and, thus, a minimization of SNR gap and of SNR gap−spline . Figure 1 illustrates the BER performances of two randomly generated codes with pairs λ(x) and ρ(x) having d l = 4 and 8, respectively, minimizing and, respectively, maximizing the product λ (0)ρ (1). As shown in the figure above, the simulated performance achieved by the codes having d l = 8 is better than that achieved by the codes having d l = 4. For instance, at E b /N 0 = 5 dB, the BER obtained with d l = 4 is ∼3 × 10 −7 , whereas the BER obtained with d l = 8 is ∼5 × 10 −8 .
9.2. Case 2: L 2 n < (1 − r)n Since, as said above, for the examples considered in the paper, 1 − r = 1/2, it follows that the degree distributions fulfilling the condition L 2 n < (1 − r)n are those with L 2 n < n/2, i.e., L 2 < 1/2. This condition is fulfilled by the codes with d l = 7 of Table 1, and by all the other codes of Table 2 and 3. This implies that l ≤ L 2 n for all these codes, i.e., that, given the block length n, l varies with L 2 . In this case, we expect that a higher upper bound of Equation (32) on the codeword weight l will provide in general a better BER performance. Thus, the dependence of this performance from the product λ (0)ρ (1) must be evaluated case by case. For instance, considering Figures 2-4, where the performances of three randomly generated codes with pairs λ(x) and ρ(x) having d l = 7, 9 and 10 are shown respectively, the BER curve obtained with d l = 7 (Figure 2) is the worse of the three (at E b /N 0 = 5 dB the BER is ∼2 × 10 −7 ) and the one obtained with d l = 9 (Figure 3) is the best of the three (at E b /N 0 = 5 dB the BER is ∼2 × 10 −8 ), whereas the one obtained with d l = 10 ( Figure 4) is intermediate between the above mentioned two (at E b /N 0 = 5 dB the BER is ∼4 × 10 −8 ) since the code with d l = 7 presents the lowest L 2 value (L 2 = 0.43927), that with d l = 9 presents the highest L 2 value (L 2 = 0.49128), whereas the one with d l = 10 presents an intermediate L 2 value (L 2 = 0.46020) in respect to the other two. As far as the role of the product λ (0)ρ (1) is concerned, in this case it may be seen that, even if the code with d l = 9 presents a higher value of this product with respect to the code with d l = 10 (1.69321 vs. 1.59749), its performance is better (at E b /N 0 = 5 dB the BER is ∼2 × 10 −8 ) than that of the code with d l = 10 (presenting at E b /N 0 = 5 dB a BER of ∼4 × 10 −8 ) because it presents a higher value of L 2 . Thus, in conclusion, the randomly generated code having a degree distribution with d l = 9 ( Figure 3) is the best since as it has the highest value of L 2 (0.49128) even if it presents an intermediate value of the product λ (0)ρ (1) (1.69321). Moreover, the code with the lowest value of the product λ (0)ρ (1) (1.59749), i.e., the one with d l = 10 also presents, as expected from (39), the highest value of σ * Jensen (1.03314).

Conclusions
The objective of this work was the analysis of the importance of the product λ (0)ρ (1) in determining LDPC codes performance, as far as both the weight distribution function and the decoding thresholds are concerned. This analysis was based on [9], as far as the weight distribution function was concerned, and on [10], regarding the LDPC decoding thresholds. The analysis was conducted on two main conditions, i.e., the one for which L 2 > (1 − r) (being r the code rate) and the one for which L 2 < (1 − r). In the first case, the role of the product alone was fundamental in determining the performance. In the second, parameter L 2 was also important with the product. The best case was that presenting the highest value of L 2 together with the lowest value of the product λ (0)ρ (1) > 1. Moreover, a lower value of the product λ (0)ρ (1) implied, as expected from (39), a higher value of the upper bound on the decoding threshold σ * Jensen and thus, in terms of noise power, a smaller gap from the Shannon limit. Here we report 66 (approximate) values (×10 4 ) of C(γ), corresponding to γ = 0.1, ..., 3.35 with steps of 0.05. (The first value is 0.1314, the second is 0.1889, and so on.) 1314 Figure A1 reports a graph of C(γ) obtained with the same software. To implement an approximation of the inverse C −1 (r) we used a spline interpolation of the above approximatively reported values (γ i , C(γ i )) = (C −1 (r i ), r i ), with 0.1314 < r i < 0.9806:

s[y_] = Interpolation[v, y];
where v is the array of the 66 pairs of values (C −1 (r i ), r i ).
Moreover, in [16] we also reported a couple of functions, one inverse of the other, approximating C(γ) and its inverse C −1 (r), with forms, respectively,