LDPC Codes Based on Latin Squares: Cycle Structure, Stopping, and Trapping Set Analysis Stefan Laendner and Olgica Milenkovic Electrical and Computer Engineering Department University of Colorado, Boulder, USA [email protected] and [email protected]Abstract It is well known that certain combinatorial structures in the Tanner graph of a low-density parity-check code exhibit a strong influence on its performance under iterative decoding. These structures include cycles, stopping/trapping sets and parameters such as the diameter of the code. In general, it is very hard to find a complete characterization of such configurations in an arbitrary code, and even harder to understand the intricate relationships that exist between these entities. It is therefore of interest to identify a simple setting in which all the described combinatorial structures can be enumerated and studied within a joint framework. One such setting is developed in this paper, for the purpose of analyzing the distribution of short cycles and the structure of stopping and trapping sets in Tanner graphs of LDPC codes based on idempotent and symmetric Latin squares. The parity-check matrices of LDPC codes based on Latin squares have a special form that allows for connecting combinatorial parameters of the codes with the number of certain sub-rectangles in the Latin squares. Sub-rectangles of interest can be easily identified, and in certain instances, completely enumerated. The presented study can be extended in several different directions, one of which is concerned with modifying the code design process in order to eliminate or reduce the number of configurations bearing a negative influence on the performance of the code. Another application of the results includes determining to which extent a configuration governs the behavior of the bit error rate (BER) curve in the waterfall and error-floor regions. 1 The results in this paper were presented in part at the IEEE International Conference on Communications, ICC’2004, Paris, France [14]. The work was supported in part by the NSF Grant CCF-0514921 and a fellowship by the Institute of Information Transmission (LIT) at the University of Erlangen-Nuremberg, Germany, awarded to Stefan Laendner. 1
27
Embed
LDPC Codes Based on Latin Squares: Cycle Structure ...ecee.colorado.edu/~milenkov/tcom_stefan_final.pdf · LDPC Codes Based on Latin Squares: Cycle Structure, Stopping, and ... parity-check
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
LDPC Codes Based on Latin Squares: Cycle Structure,
It is well known that certain combinatorial structures in the Tanner graph of a low-density
parity-check code exhibit a strong influence on its performance under iterative decoding. These
structures include cycles, stopping/trapping sets and parameters such as the diameter of the code.
In general, it is very hard to find a complete characterization of such configurations in an arbitrary
code, and even harder to understand the intricate relationships that exist between these entities. It
is therefore of interest to identify a simple setting in which all the described combinatorial structures
can be enumerated and studied within a joint framework. One such setting is developed in this
paper, for the purpose of analyzing the distribution of short cycles and the structure of stopping and
trapping sets in Tanner graphs of LDPC codes based on idempotent and symmetric Latin squares.
The parity-check matrices of LDPC codes based on Latin squares have a special form that allows
for connecting combinatorial parameters of the codes with the number of certain sub-rectangles
in the Latin squares. Sub-rectangles of interest can be easily identified, and in certain instances,
completely enumerated. The presented study can be extended in several different directions, one
of which is concerned with modifying the code design process in order to eliminate or reduce the
number of configurations bearing a negative influence on the performance of the code. Another
application of the results includes determining to which extent a configuration governs the behavior
of the bit error rate (BER) curve in the waterfall and error-floor regions.
1The results in this paper were presented in part at the IEEE International Conference on Communications, ICC’2004,Paris, France [14]. The work was supported in part by the NSF Grant CCF-0514921 and a fellowship by the Institute ofInformation Transmission (LIT) at the University of Erlangen-Nuremberg, Germany, awarded to Stefan Laendner.
1
Keywords: Cayley Latin Squares, Design Theory, LDPC Codes, Stopping Sets, and Trapping
Sets
1 Introduction
By now, it is well known that long random-like low-density parity-check (LDPC) codes used for sig-
nalling over discrete input memoryless channels have capacity-approaching performance under iterative
decoding [12]. Nevertheless, there still exist many open questions regarding the exact degree of influence
that specific parameters of a code exhibit on its overall performance when used for finite length data
transmission [20]. The best studied class of code parameters include the girth of a code [3], [4], [6], [7],
[9], [18] and the size of the smallest stopping set in the code graph [2], [15], but very few results are
available regarding trapping sets [13],[16] and pseudo-codewords [8]. Each of these entities can be used
individually in order to explain some phenomena underlying the behavior of the bit error rate (BER)
curve of a code under a given decoding strategy. For certain channels, like the binary erasure channel,
exact analytic characterizations of BER curves are possible in terms of the distribution of stopping set
sizes [2], [15]. What remains unknown is the exact nature of the relationship that exists between all the
aforementioned parameters and a study of their joint influence on the performance of LDPC codes in
channels like the additive white Gaussian noise (AWGN) channel.
The goal of this paper is to provide a comprehensive analysis of three different combinatorial param-
eters of a new class of LDPC codes based on idempotent and symmetric Latin squares. Such an analysis
is of importance in two different settings: in the first case, it allows for constructing large families of
high-rate codes with good performance under iterative decoding. In the second case, it can be used
as a starting point for investigating the influence of different classes of code parameters on the overall
performance of an LDPC code. The features analyzed include the structure and number of short cycles
in the Tanner graph and the size of the smallest stopping and trapping sets in the code graph. Although
stopping sets are primarily used for estimating the performance of LDPC codes over the binary erasure
channel, they are closely related to pseudo-codewords of many other channels [8] and are therefore of
interest when analyzing the performance of LDPC codes over the AWGN channel.
The codes described in this work are closely related to several other classes of LDPC codes based
on combinatorial designs. For a comprehensive treatment of the subject of LDPC code construction
2
based on design theory, the interested reader is referred to [6], [17], [18], [19], and the references therein.
The parity-check matrices of LDPC codes based on constrained Latin squares have a block structure
consisting of all-zero matrices and permutation matrices that are placed according to the entries in the
Latin square. If the squares are properly chosen, the resulting Tanner graphs of the codes have both
girth and minimum distance equal to six. The number of six-cycles and other short cycles in their
Tanner graph, as well as their stopping number and trapping set structures, can be determined in a
straightforward manner. This is due to the fact that the existence of stopping sets and trapping sets of
a prescribed size can be linked to the existence of sub-rectangles in the underlying Latin square. The
study of cycles, stopping and trapping sets reveals that most of these entities are related: for example,
the vertices corresponding to small stopping and trapping sets usually also belong to one or more short
cycles.
The outline of the paper is as follows. In Section 2 we introduce Latin squares, combinatorial
designs, and one-configurations [11]. We also describe several choices for Latin squares that result in
LDPC codes with good performance under iterative decoding. Section 3 is devoted to establishing a
relationship between stopping sets in LDPC codes and partial sub-rectangles of their corresponding
Latin squares. Section 4 contains a partial classification of elementary trapping sets in LDPC codes
based on symmetric, idempotent Latin squares, while Section 5 provides a count of the number of six-
cycles in the codes. Section 6 describes how some of the results in Section 5 can be used to improve
the performance of the codes in terms of a structured shortening procedure that reduces the number of
six-cycles in the code graph. Simulation results are given in Section 7.
2 Latin squares, designs and one-configurations
LDPC codes based on Latin squares were first described in [18], where Latin squares were first used
to construct Steiner triple systems and one-configurations. Such systems were subsequently used for
characterizing the parity-check matrix of LDPC codes. We start this section by providing the necessary
background needed for extending and generalizing this technique.
Definition 2.1. A Steiner 2-design is an ordered pair (V, B), where V is a set with v elements and B is
a collection of b subsets of size t over V , called blocks. Every element of V is contained in exactly t · b/v
blocks and every 2-subset of V is contained in exactly one block. A Steiner 2-design for which t = 3
3
is referred to as a Steiner triple system (STS). If the constraint of a 2-design is relaxed so that each
pair of elements in V is required to belong to at most one block, the resulting combinatorial structure is
called a one-configuration (OC).
An STS or OC can be used to define the parity-check matrix H of a LDPC code in a standard way:
the variables of the code correspond to blocks, while the parity-checks correspond to the points of the
system. In this case H represents the point-block incidence matrix of the given combinatorial objects
[18].
We will find the following definitions useful in the sequel of the paper.
Definition 2.2. A Latin square of order M is an M×M array such that each row and column contains
every symbol in 1, . . . , M exactly once. More generally, a Latin rectangle is an K × M, K ≤ M ,
matrix of entries with no symbol appearing more than once in each row and column. A Latin square is
idempotent if the cell indexed by (i, i), 1 ≤ i ≤ M , contains the symbol i, and symmetric if cells (i, j)
and (j, i), 1 ≤ i < j ≤ M , contain the same symbol.
Definition 2.3. If in a Latin square of order M , there exist r2 cells with r rows and r columns that form
a Latin square of order r and over an alphabet of size r, then these cells are said to form a sub-square
of order r. Similarly, a sub-rectangle of the Latin square is a sub-array of the square which is itself a
Latin rectangle. A Latin square of size M ×M is an N2 (N∞
) square if it does not contain sub-squares
of order two (of any order r > 1).
Of special interest for the derivations to follow are Cayley Latin squares, for which the entries are
determined by the Cayley table of the cyclic group of order m over the alphabet 1, . . . , M. More
specifically, the entry at position (i, j) in such a square is given by i + j − 1 mod M1. Equivalent to a
Cayley Latin square of odd order M under rearrangement of the rows, rearrangement of the columns,
or renaming of the symbols (i.e. isotopic to it) is a Latin square defined by the equation (i + j)/2
mod M . Cayley Latin squares of prime order q and Latin squares isotopic to them are examples of N∞
squares [1]. Throughout the rest of the paper we focus our attention on Latin squares with odd order
M = 2m + 1.
Definition 2.4. Let SQ be an idempotent and symmetric Latin square of order 2m + 1, let J =
1, 2, . . . , 2m + 1 and P = J × 1, 2, 3. Define a collection of blocks B that contains:1Here and throughout the rest of paper, we use the somewhat non-standard modulo function which assumes that the
symbol 0 is replaced by the symbol M .
4
a) all triples of the form (i, 1), (i, 2), (i, 3), where 1 ≤ i ≤ 2m + 1 (type 1 triplet);
b) all triples of the form (i, a), (j, a), (i j, b), a = 1, 2, 3, b = a + 1 mod 3, where 1 ≤ i < j ≤
2m + 1, and i j denotes the entry of the Latin square SQ in row i and column j (type 2 triplet).
It is straightforward to see that (P,B) is an STS with 6m + 3 points [11]. We will refer to such
an object as a Bose system. Observe that the symmetry of the underlying Latin squares leads to the
property that no two elements in row j and column j of that Latin square are the same, provided that
the positions are restricted to the “upper right triangle” of the square. Assume to the contrary that
i (i + 1) = (i + 1) (i + 2) = ℓ, i < m. Then there would exist two blocks in the Bose system of
the form (i, 1), (i + 1, 1), (ℓ, 2) and (i + 1, 1), (i + 2, 1), (ℓ, 2), containing the same pair of points and
hence violating the defining properties of an STS. If the square is symmetric, then i (i + 1) = ℓ, and
(i + 1) i = ℓ, so that (i + 1) (i + 2) 6= ℓ.
Claim 2.1. Let SQ be a symmetric and idempotent Latin square of order 2m+1 not divisible by seven,
with an entry in row i and column j chosen according to ij = (i+j)/2 mod (2m+1). The STS arising
from SQ does not contain a set of four blocks with six different points, i.e., a Pasch configuration.
LDPC codes derived from STSs free of Pasch configurations have minimum distance at least six [18].
Proof. In order to prove the claim, consider the following two properties of the square SQ: there are no
Latin sub-squares of order two contained within SQ (property P1) and there do not exist two different
integers x, y such that x (x (x y)) = y (property P2). The presence of a sub-square of order two
implies the existence of integers i 6= l and j 6= k such that i k = l j and i j = l k. Since the
order of the square is odd, this is impossible for the given construction since it leads to i = l and
k = j. The second property can be easily shown to be true by observing that for the given construction,
x (x (xy)) = y is equivalent to (7/8) x+(1/8) y = y, i.e. to 7 | 2m+1, which contradicts the starting
assumptions regarding the order of the Latin square.
We classify next the possible ways in which Pasch configurations resulting from type 1 and type 2
triplets may arise and show that a necessary condition for their existence is that either property P1 or
property P2 holds. Since neither of the two properties is satisfied for the described Latin squares, it
will follow that the STS based on SQ is Pasch-free.
1. A Pasch configuration cannot consist of more than one type 1 triplet; if there were at least
two type 1 triplets, say (x, 1), (x, 2), (x, 3), (y, 1), (y, 2), (y, 3), x 6= y, then these two triplets would
5
contain six different points, and it would be impossible to add one more triplet.
2. A Pasch configuration formed from type 2 triplets only may have blocks of the form: