1 / 25

Cyclic Linear Codes

Learn about the fundamentals of cyclic linear codes, including polynomials and words, generating and parity check matrices, finding cyclic codes, and the concept of dual cyclic codes.

rlinda
Download Presentation

Cyclic Linear Codes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cyclic Linear Codes

  2. OUTLINE • [1] Polynomials and words • [2] Introduction to cyclic codes • [3] Generating and parity check matrices for cyclic codes • [4]Finding cyclic codes • [5] Dual cyclic codes

  3. Cyclic Linear Codes • [1] Polynomials and words • 1. Polynomial of degree n over K • 2. Eg 4.1.1

  4. Cyclic Linear Codes • 3. [Algorithm 4.1.8]Division algorithm • 4. Eg. 4.1.9

  5. Cyclic Linear Codes • 5. Code represented by a set of polynomials • A code C of length n can be represented as a set of polynomials over K of degree at most n-1 • 6. E.g 4.1.12 Polynomial c(x) Codeword c 0000 1010 0101 1111 0 1+x2 x+x3 1+x+x2+x3

  6. Cyclic Linear Codes • 7. f(x) and p(x) are equivalent modulo h(x) • 8.Eg 4.1.15 • 9. Eg 4.1.16

  7. Cyclic Linear Codes • 10. Lemma 4.1.17 • 11. Eg. 4.1.18

  8. v 0000 111000 10110 1011 0000 1101 01011 011100 Cyclic Linear Codes • [2]Introduction to cyclic codes • 1. cyclic shift π(v) • V: 010110, : 001011 • 2.cyclic code • A code C is cyclic code(or linear cyclic code) if (1)the cyclic shift of each codeword is also a codeword and (2) C is a linear code • C1=(000, 110, 101, 011} is a cyclic code • C2={000, 100, 011, 111} is NOT a cyclic code • V=100, =010 is not in C2

  9. Cyclic Linear Codes • 3. Cyclic shiftπis a linear transformation • S={v, π(v), π2(v), …, π n-1(v)}, and C=<S>, then v is a generator of the linear cyclic code C

  10. Cyclic Linear Codes • 4. Cyclic Code in terms of polynomial

  11. Cyclic Linear Codes • 5. Lemma 4.2.12 Let C be a cyclic code let v in C. Then for any polynomial a(x), c(x)=a(x)v(x)mod(1+xn) is a codeword in C • 6. Theorem 4.2.13 C: a cyclic code of length n, g(x): the generator polynomial, which is the unique nonzero polynomial of minimum degree in C. degree(g(x)) : n-k, • 1. C has dimension k • 2. g(x), xg(x), x2g(x), …., xk-1g(x) are a basis for C • 3. If c(x) in C, c(x)=a(x)g(x) for some polynomial a(x) with degree(a(x))<k

  12. Cyclic Linear Codes • 7. Eg 4.2.16 the smallest linear cyclic code C of length 6 containing g(x)=1+x3 <-> 100100 is {000000, 100100, 010010, 001001, 110110, 101101, 011011, 111111} • 8. Theorem 4.2.17 g(x) is the generator polynomial for a linear cyclic code of length n if only if g(x) divides 1+xn (so 1+xn =g(x)h(x)).

  13. Cyclic Linear Codes • 9. Corollary 4.2.18 The generator polynomial g(x) for the smallest cyclic code of length n containing the word v(polynomial v(x)) is g(x)=gcd(v(x), 1+xn) • 10. Eg 4.2.19 n=8, v=11011000 so v(x)=1+x+x3+x4 g(x)=gcd(1+x+x3+x4 , 1+x8)=1+x2 Thus g(x)=1+x2 is the smallest cyclic linear code containing v(x), which has dimension of 6.

  14. Cyclic Linear Codes • [3]. Generating and parity check matrices for cyclic code • 1. Effective to find a generating matrix • The simplest generator matrices (Theorem 4.2.13)

  15. Cyclic Linear Codes 2. Eg 4.3.2 • C: the linear cyclic codes of length n=7 with generator polynomial g(x)=1+x+x3, and deg(g(x))=3, => k = 4

  16. Cyclic Linear Codes 3. Efficient encoding for cyclic codes

  17. Cyclic Linear Codes • 4. Parity check matrix • H : wH=0 if only if w is a codeword • Symdrome polynomial s(x) • c(x): a codeword, e(x):error polynomial, and w(x)=c(x)+e(x) • s(x) = w(x) mod g(x) = e(x) mod g(x), because c(x)=a(x)g(x) • H: i-th row ri is the word of length n-k => ri(x)=xi mod g(x) • wH = (c+e)H => c(x) mod g(x) + e(x) mod g(x) = s(x)

  18. Cyclic Linear Codes • 5. Eg 4.3.7 • n=7, g(x)=1+x+x3, n-k = 3

  19. Cyclic Linear Codes • [4]. Finding cyclic codes • 1. To construct a linear cyclic code of length n • Find a factor g(x) of 1+xn, deg(g(x)) = n-k • Irreducible polynomials • f(x) in K[x], deg(f(x)) >= 1 • There are no a(x), b(x) such that f(x)=a(x)b(x), deg(a(x))>=1, deg(b(x))>=1 • For n <= 31, the factorization of 1+xn (see Appendix B) • Improper cyclic codes: Kn and {0}

  20. Cyclic Linear Codes • 2. Theorem 4.4.3 • 3. Coro 4.4.4

  21. Cyclic Linear Codes • 4. Idempotent polynomials I(x) • I(x) = I(x)2 mod (1+xn) for odd n • Find a “basic” set of I(x) Ci= { s=2j i (mod n) | j=0, 1, …, r} where 1 = 2r mod n

  22. Cyclic Linear Codes • 5. Eg 4.4.12 • 6. Theorem 4.4.13 Every cyclic code contains a unique idempotent polynomial which generates the code.(?)

  23. 1 x+x2+x4+x5+x7+x8 x3+x6 1+x+x2+x4+x5+x7+x8 Cyclic Linear Codes • 7. Eg. 4.4.14 find all cyclic codes of length 9 Idempotent polynomial I(x) The generator polynomial g(x)=gcd(I(x), 1+x9) 1 1+x+x3+x4+x6+x7 1+x3 1+x+x2 : :

  24. Cyclic Linear Codes • [5].Dual cyclic codes • 1. The dual code of a cyclic code is also cyclic • 2. Lemma 4.5.1 a > a(x), b > b(x) and b’ > b’(x)=xnb(x-1) mod 1+xn then a(x)b(x) mod 1+xn = 0 iff πk(a).b’=0 for k=0,1,…n-1 • 3. Theorem 4.5.2 C: a linear code, length n, dimension k with generator g(x) If 1+xn = g(x)h(x) then C⊥: a linear code , dimension n-k with generator xkh(x-1)

  25. Cyclic Linear Codes • 4. Eg. 4.5.3 g(x)=1+x+x3, n=7, k=7-3=4 h(x)=1+x+x2+x4 h(x)generator for C⊥ is g⊥ (x)=x4h(x-1)=x4(1+x-1+x-2+x-4 )=1+x2+x3+x4 • 5. Eg. 4.5.4 g(x)=1+x+x2, n=6, k=6-2=4 h(x)=1+x+x3+x4 h(x)generator for C⊥ is g⊥ (x)=x4h(x-1)=1+x+x3+x4

More Related