Coset graphs and LDPC codes Josef Lauri 1 and Cen J Tjhai 2 1 - - PowerPoint PPT Presentation

coset graphs and ldpc codes
SMART_READER_LITE
LIVE PREVIEW

Coset graphs and LDPC codes Josef Lauri 1 and Cen J Tjhai 2 1 - - PowerPoint PPT Presentation

Coset graphs and LDPC codes Josef Lauri 1 and Cen J Tjhai 2 1 University of Malta || 2 University of Plymouth July 21, 2010 Josef Lauri 1 and Cen J Tjhai 2 Coset graphs and LDPC codes Software used Josef Lauri 1 and Cen J Tjhai 2 Coset graphs


slide-1
SLIDE 1

Coset graphs and LDPC codes

Josef Lauri1 and Cen J Tjhai2

1 University of Malta || 2University of Plymouth

July 21, 2010

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-2
SLIDE 2

Software used

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-3
SLIDE 3

Software used

GAP: Groups, Algorithms, Programming System for doing Computational Discrete Algebra

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-4
SLIDE 4

Software used

GAP: Groups, Algorithms, Programming System for doing Computational Discrete Algebra GRAPE: GRaph Algorithms using PErmutation groups A GAP package

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-5
SLIDE 5

Software used

GAP: Groups, Algorithms, Programming System for doing Computational Discrete Algebra GRAPE: GRaph Algorithms using PErmutation groups A GAP package guava: A GAP package for error-correcting codes

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-6
SLIDE 6

Software used

GAP: Groups, Algorithms, Programming System for doing Computational Discrete Algebra GRAPE: GRaph Algorithms using PErmutation groups A GAP package guava: A GAP package for error-correcting codes Software developed by Cen and the group he works with in Plymouth for simulating the codes’ behaviour on the BER

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-7
SLIDE 7

Linear binary error-correcting codes

A linear binary error-correcting code is a subspace C of Bn. The dimension of C is denoted by k.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-8
SLIDE 8

Linear binary error-correcting codes

A linear binary error-correcting code is a subspace C of Bn. The dimension of C is denoted by k. The code C can be defined in terms of a generator matrix whose k rows are simply a basis of C.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-9
SLIDE 9

Linear binary error-correcting codes

A linear binary error-correcting code is a subspace C of Bn. The dimension of C is denoted by k. The code C can be defined in terms of a generator matrix whose k rows are simply a basis of C. But in general more information on the error-correcting capabilities of C can be obtained by considering it as the kernel of a linear transformation.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-10
SLIDE 10

Linear binary error-correcting codes

A linear binary error-correcting code is a subspace C of Bn. The dimension of C is denoted by k. The code C can be defined in terms of a generator matrix whose k rows are simply a basis of C. But in general more information on the error-correcting capabilities of C can be obtained by considering it as the kernel of a linear transformation. So we let H be a (n − k) × n matrix and define C to be all those 1 × n vectors c such that cHT = 0. The matrix H is called the parity check matrix of the code.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-11
SLIDE 11

Linear binary error-correcting codes

A linear binary error-correcting code is a subspace C of Bn. The dimension of C is denoted by k. The code C can be defined in terms of a generator matrix whose k rows are simply a basis of C. But in general more information on the error-correcting capabilities of C can be obtained by considering it as the kernel of a linear transformation. So we let H be a (n − k) × n matrix and define C to be all those 1 × n vectors c such that cHT = 0. The matrix H is called the parity check matrix of the code. Usually error-corrections makes use of the syndrome: Let c′ be a received

  • codeword. The syndrome is defined to be

s = c′HT . If s = 0 then c′ is taken to be correct. Otherwise a look-up table is used to determine from s the codeword which is the nearest to c′.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-12
SLIDE 12

Low Density Parity Check codes

Gallager, in 1960, was the first to find that good codes can be constructed if the check matrix is sparse. Here we consider regular LDPC codes for which every column has a constant number of 1’s (usually 3) and every row has a constant number of 1’s (usually 4, 5 or 6).

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-13
SLIDE 13

Low Density Parity Check codes

Gallager, in 1960, was the first to find that good codes can be constructed if the check matrix is sparse. Here we consider regular LDPC codes for which every column has a constant number of 1’s (usually 3) and every row has a constant number of 1’s (usually 4, 5 or 6). Instead of syndrome decoding iterative methods over graphs are used.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-14
SLIDE 14

Tanner graphs

Represent the check matrix H by a bipartite graph G with bipartition Vb ∪ Vc. Each vertex in Vb corresponds to a column (bit) of H and each vertex in Vc corresponds to a row (check equation) of H. Two vertices are adjacent iff there is a one in the intersection of the corresponding row and column.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-15
SLIDE 15

Tanner graphs

Represent the check matrix H by a bipartite graph G with bipartition Vb ∪ Vc. Each vertex in Vb corresponds to a column (bit) of H and each vertex in Vc corresponds to a row (check equation) of H. Two vertices are adjacent iff there is a one in the intersection of the corresponding row and column. Example of a non-regular check matrix and its Tanner graph: H =   1 1 1 1 1 1 1 1 1 1 1 1  

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-16
SLIDE 16

Tanner graphs

Represent the check matrix H by a bipartite graph G with bipartition Vb ∪ Vc. Each vertex in Vb corresponds to a column (bit) of H and each vertex in Vc corresponds to a row (check equation) of H. Two vertices are adjacent iff there is a one in the intersection of the corresponding row and column. Example of a non-regular check matrix and its Tanner graph: H =   1 1 1 1 1 1 1 1 1 1 1 1  

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-17
SLIDE 17

Iterative correction of erasures

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-18
SLIDE 18

Iterative correction of erasures

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-19
SLIDE 19

Iterative correction of erasures(2)

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-20
SLIDE 20

Iterative correction of erasures(3)

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-21
SLIDE 21

Stopping sets!

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-22
SLIDE 22

Stopping sets!

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-23
SLIDE 23

Coset graphs

Let (Γ, H, K) be a group with two subgroups such that Γ = H, K. Define the graph Cos(Γ, H, K) as follows: its vertices are the right cosets of H and K, and two cosets Hx, Ky are adjacent if and only if their intersection is non-empty.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-24
SLIDE 24

Coset graphs

Let (Γ, H, K) be a group with two subgroups such that Γ = H, K. Define the graph Cos(Γ, H, K) as follows: its vertices are the right cosets of H and K, and two cosets Hx, Ky are adjacent if and only if their intersection is non-empty. Theorem The graph Cos(Γ, H, K) is a connected edge-transitive bipartite graph with vertex degrees |H|/|H ∩ K| and |K|/|H ∩ K| and with the two sets of cosets of H and K being the bipartition of Cos(Γ, H, K). Conversely, if G is a graph on which the group Γ acts edge-transitively but not vertex-transitively, then G is isomorphic to Cos(Γ, H, K) where H and K are the stabilisers of two adjacent vertices.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-25
SLIDE 25

A non-vertex-transitive edge-regular graph

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-26
SLIDE 26

A non-vertex-transitive edge-regular graph

A graph of order 465 whose automorphism group acts regularly on its edges and whose girth is 8. The group Γ was a, b, c|a5 = b3 = c31 = 1, ba = abc, ca = ac2, cb = bc25 with H = a and K = b.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-27
SLIDE 27

A non-vertex-transitive edge-regular graph

A graph of order 465 whose automorphism group acts regularly on its edges and whose girth is 8. The group Γ was a, b, c|a5 = b3 = c31 = 1, ba = abc, ca = ac2, cb = bc25 with H = a and K = b. At about the same time, Tanner, Sridhara and Fuja investigated quasi-cyclic LDPC codes. It turns out that the Tanner graphs of these codes are the coset graphs of the group Γ(p, q, r) where p, q, r are primes with r = 1 mod pq and such that Γ(p, q, r) is a, b, c|ap = bq = cr = 1, ba = abc, ca = acs, cb = bct where sp and tq are equal to 1 mod r. Therefore the above graph is the coset graph of Γ(3, 5, 31).

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-28
SLIDE 28

Girth

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-29
SLIDE 29

Girth

Tanner et al’s QC LDPC codes have girth at most 12.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-30
SLIDE 30

Girth

Tanner et al’s QC LDPC codes have girth at most 12. In general, there is no upper bound for the girth of coset graphs.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-31
SLIDE 31

Girth

Tanner et al’s QC LDPC codes have girth at most 12. In general, there is no upper bound for the girth of coset graphs. For example, if Γ = (1 2 3 4)(6 7 8 9), (4 5 6) and H = (1 2 3 4)(6 7 8 9), K = (4 5 6), then the girth of Cos(Γ, H, K) is 16.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-32
SLIDE 32

Girth

Tanner et al’s QC LDPC codes have girth at most 12. In general, there is no upper bound for the girth of coset graphs. For example, if Γ = (1 2 3 4)(6 7 8 9), (4 5 6) and H = (1 2 3 4)(6 7 8 9), K = (4 5 6), then the girth of Cos(Γ, H, K) is 16. The girth g of Cos(Γ, H, K) can be defined as the length of a shortest reduced word k1h2k3 . . . kg−1hg in Γ which is equal to 1, where, by a reduced word we mean an alternating product of elements of H − H ∩ H and K − H ∩ K and by length of a word we mean the number of such elements.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-33
SLIDE 33

Some small LDPC codes constructed from coset graphs

Table: Parameters of small LDPC codes

Name Generator a Generator b Girth smin Small-Cage (1 2 3) (1 4)(2 5)(3 6) 8 4 [9, 4, 4] Gen-Quad (1 2 3 4) (1 5)(2 6) 8 4 [16, 9, 4] (3 7)(4 8) Gray (1 2 3) (1 4 7)(2 5 8) 8 8 [27, 8, 8] (3 6 9)

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-34
SLIDE 34

Simulations of small LDPC codes over the Binary Erasure Channel (BEC)

10-14 10-13 10-12 10-11 10-10 10-9 10-8 10-7 10-6 10-5 10-4 10-3 10-2 10-1 100 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 Frame Error Rate (FER) Probability of Erasure SmallCage - FER Small Cage - Approximation GenQuad - FER GenQuad - Approximation Gray - FER Gray - Approximation

Figure: Frame Error Probability of Small LDPC Codes over the BEC

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-35
SLIDE 35

Some (3, 4) LDPC codes constructed from coset graphs

Table: Parameters of (3, 4) LDPC codes in Figure 2

Name Generator a Generator b Girth smin Si [40, 15, 8] 8 8 S8 = 45 (1 2 3 4 5) (1 2 3 4 5) S8 = 54 (8 9 10) (8 9 10 11) S12 = 1200 (11 12 13) S13 = 1440 S14 = 4260 [720, 270, 8] 8 8 S8 = 270 (3 7 8 9) S12 = 2160 (1 2 3)(4 5 6) (4 10) S14 = 2160 S15 = 2160 S16 = 50355 [360, 117, 24] (1 2 3)(4 5 6) (5 6 7 8)(3 9) 12 24 S24 = 1755 (2 10)(1 11) [720, 216, 24] (1 2 3)(4 5 6) (3 7 8 9) 12 24 S24 = 450 [2520, 701, 24] (1 2 3)(4 5 6) (1 7) 12 24 S24 = 105 (2 8 9 10) [2160, 591, ≥ 32] (1 2 3)(4 5 6) (5 6 7 8)(3 9) 12 ≤ 48 (2 10)(1 11) (4 12)

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-36
SLIDE 36

Simulations of (3, 4) codes over the BEC

10-14 10-13 10-12 10-11 10-10 10-9 10-8 10-7 10-6 10-5 10-4 10-3 10-2 10-1 100 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 Frame Error Rate (FER) Probability of Erasure [40,15,8], J=3, K=4, girth 8 - FER [40,15,8], J=3, K=4, girth 8 - Approximation [720,270,8], J=3, K=4, girth 8 - FER [720,270,8], J=3, K=4, girth 8 - Approximation [360,117,24], J=3, K=4, girth 12 - FER [360,117,24], J=3, K=4, girth 12 - Approximation [720,216,24], J=3, K=4, girth 12 - FER [720,216,24], J=3, K=4, girth 12 - Approximation [2520,701,24], J=3, K=4, girth 12 - FER [2520,701,24], J=3, K=4, girth 12 - Approximation [2160,591,>32], J=3, K=4, girth 12 - FER

Figure: Frame Error Probability of (3, 4) coset graph LDPC Codes over the BEC

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-37
SLIDE 37

Some (3, 5) LDPC codes constructed from coset graphs

Table: Parameters of (3, 5) LDPC codes in Figure 3

Name Generator a Generator b Girth smin Si [155, 64, 20] 8 18 S18 = 465 a, b, c : a3 = b5 = c31 S19 = 2015 ba = abc, ca = ac25, S20 = 9548 cb = bc2 S21 = 23715 S22 = 106175 [755, 334, 14] 10 14 S14 = 755 a, b, c : a3 = b5 = c151 S18 = 755 ba = abc, ca = ac32, S20 = 3020 cb = bc8 S22 = 9815 S24 = 30200 [840, 342, 28] (1 2 3 4 5) (2 6 7)(1 4 3) 8 28 S28 = 120 [905, 364, 24] a, b, c : a3 = b5 = c181 12 24 S24 = 905 ba = abc, ca = ac48, cb = bc42 [6720, 2695, 24] (1 2 3)(4 5 6) (3 4 5 7 8) 10 24 S24 = 1120

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-38
SLIDE 38

Simulations of (3, 5) codes over the Binary Erasure Channel (BEC)

10-14 10-13 10-12 10-11 10-10 10-9 10-8 10-7 10-6 10-5 10-4 10-3 10-2 10-1 100 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 Frame Error Rate (FER) Probability of Erasure, p [840,342,28], J=3, K=5, girth 8 - FER [840,342,28] - Approximation [6720,2695,24], J=3, K=5, girth 10 - FER [6720,2695,24] - Approximation Tanner [155,64,20] - FER Tanner [155,64,20] - Approximation Tanner [755,334,14] - FER Tanner [755,334,14] - Approximation Tanner [905,364,24] - FER Tanner [905,364,24] - Approximation

Figure: Frame Error Probability of (3, 5) coset graph LDPC Codes over the BEC

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-39
SLIDE 39

Is this a useful generalisation of Tanner’s QC codes?

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-40
SLIDE 40

Is this a useful generalisation of Tanner’s QC codes?

Loses the convenient quasi-cyclic structure of the check matrix,

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-41
SLIDE 41

Is this a useful generalisation of Tanner’s QC codes?

Loses the convenient quasi-cyclic structure of the check matrix, but: The QC structure of a (J, K) LDPC code places an upper bound of (J + 1)! on the minimum Hamming distance. So our examples [840, 342, 28] and [2160, 591, ≥ 32] would have had minimum Hamming distance at most 24.

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-42
SLIDE 42

Is this a useful generalisation of Tanner’s QC codes?

Loses the convenient quasi-cyclic structure of the check matrix, but: The QC structure of a (J, K) LDPC code places an upper bound of (J + 1)! on the minimum Hamming distance. So our examples [840, 342, 28] and [2160, 591, ≥ 32] would have had minimum Hamming distance at most 24. Conceptually quite simple;

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-43
SLIDE 43

Is this a useful generalisation of Tanner’s QC codes?

Loses the convenient quasi-cyclic structure of the check matrix, but: The QC structure of a (J, K) LDPC code places an upper bound of (J + 1)! on the minimum Hamming distance. So our examples [840, 342, 28] and [2160, 591, ≥ 32] would have had minimum Hamming distance at most 24. Conceptually quite simple; Provides a compact algebraic description of the code which might make coding and decoding more efficient;

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-44
SLIDE 44

Is this a useful generalisation of Tanner’s QC codes?

Loses the convenient quasi-cyclic structure of the check matrix, but: The QC structure of a (J, K) LDPC code places an upper bound of (J + 1)! on the minimum Hamming distance. So our examples [840, 342, 28] and [2160, 591, ≥ 32] would have had minimum Hamming distance at most 24. Conceptually quite simple; Provides a compact algebraic description of the code which might make coding and decoding more efficient; Finding codes with large girth and not so large length places the problem within an important area of graph theory: cages (here bi-regular edge-transitive graphs with given girth and minimal size);

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-45
SLIDE 45

Is this a useful generalisation of Tanner’s QC codes?

Loses the convenient quasi-cyclic structure of the check matrix, but: The QC structure of a (J, K) LDPC code places an upper bound of (J + 1)! on the minimum Hamming distance. So our examples [840, 342, 28] and [2160, 591, ≥ 32] would have had minimum Hamming distance at most 24. Conceptually quite simple; Provides a compact algebraic description of the code which might make coding and decoding more efficient; Finding codes with large girth and not so large length places the problem within an important area of graph theory: cages (here bi-regular edge-transitive graphs with given girth and minimal size); Also, the use of coset graphs places the search for good codes squarely into an important problem in group theory: amalgams for finite groups (as developed by Djokovi´ c and Miller and Goldschmidt). Maybe this powerful algebraic machinery can help to obtain not only codes with large girth but, more importantly, without small stopping sets

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes

slide-46
SLIDE 46

THANK YOU!

Josef Lauri1 and Cen J Tjhai2 Coset graphs and LDPC codes