consists of variable undetected error for a CRC code of length n whose nodes and check nodes. Variable nodes correspond to the generator polynomial has degree r and m nonzero co- n codeword symbols, while check nodes correspond to efficients. The encoding and decoding of CRC codes can the (n - k) equations defined by the parity-check con- straint. A variable node is connected to a check node if be efficiently implemented with shift register circuits. the codeword symbol corresponding to the variable node is involved in the parity equation defining the check 3.4.3.1.2 Reed-Solomon codes node. That is, check node i is connected to variable node j Reed-Solomon codes are nonbinary linear block codes if hij = 1. In a regular LDPC code, each column has the over a finite field GF(q). Let a be an element of order n same number du of l's and each row has the same number in GF(q) [i.e., n is the smallest positive integer such dc of l's. Thus, in the Tanner graph of the code each that an = 1, where 1 is the identity element for the variable node has degree du and each check code has multiplication in GF(q)]. Letre {1, n}. The set of all degree dc, as shown in Figure 3.4-3. In an irregular LDPC vectors (co, Cn-1) in [GF(q)]" such that - ciaij = code, the degrees of the variable nodes and check nodes 0, j = 1, ..., r, is called a Reed-Solomon code of are chosen according to some nonuniform distribution. redundancy r over GF(q). This code is an (n,n-r) cyclic Efficient encoding of LDPC codes is discussed in [40], Channel protection fundamentals CHAPTER 3.4 Tanner graph 3.4.3.1.6 Digital fountain codes Luby [30] recently introduced a new class of powerful Parity-check matrix of a regular LDPC code erasure correcting codes called Luby Transform (LT) codes. LT codes are rateless in the sense that a potentially limitless stream of encoding symbols (or a digital fountain) can be generated for a given information sequence. Thus, in con- trast to classical block codes, one need not design the code a priori for a fixed N. With LT code