28
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Algebraic Coding Theory (Revisited) — From the perspective of linear algebra Hengfeng Wei [email protected] April 17 April 20, 2017 Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 April 20, 2017 1 / 25

Algebraic Coding Theory (Revisited)

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Algebraic Coding Theory (Revisited)— From the perspective of linear algebra

Hengfeng Wei

[email protected]

April 17 ∼ April 20, 2017

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 1 / 25

Page 2: Algebraic Coding Theory (Revisited)

Algebraic Coding Theory (Revisited)

1 Block Codes

2 Linear Codes

. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .

Page 3: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Block Codes

Block coding

flow chart hereWhere is cryptography?

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 2 / 25

Page 4: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Block Codes

Important code parameters

k

n > k

r = n − k

|C| ≤ 2n

0 < R ≜ k

n< 1

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 3 / 25

Page 5: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Block Codes

Hamming distance

w(c) = #1′s in c

d(c1, c2) = w(c1 + c2)

d(C) = min{d(c1, c2) | c1 ̸= c2, c1, c2 ∈ C}= min{w(c1 + c2) | c1 ̸= c2, c1, c2 ∈ C}̸= min{w(c) | c ̸= 0, c ∈ C}

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 4 / 25

Page 6: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Block Codes

Detecting and correcting errors

d(C) ≥ 2t + 1 =⇒ 2t-detecting

d(C) ≥ 2t + 1 =⇒ t-correcting

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 5 / 25

Page 7: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Block Codes

Sphere-packing bound

Theorem (Sphere-packing bound)A t-error-correcting binary code of length n must satisfy

|C|t∑

i=0

(n

i

)≤ 2n

t = 1 =⇒ |C| ≤ 2n

n + 1

Definition (Perfect code)

|C|t∑

i=0

(n

i

)= 2n

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 6 / 25

Page 8: Algebraic Coding Theory (Revisited)

Algebraic Coding Theory (Revisited)

1 Block Codes

2 Linear Codes

. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .

Page 9: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Definition of linear code

Definition (Linear code)A linear code C of length n is a linear subspace of the vector space Fn

2 .

c1 ∈ C, c2 ∈ C =⇒ c1 + c2 ∈ C

d(C) = min{w(c1 + c2) | c1 ̸= c2, c1, c2 ∈ C}= min{w(c) | c ̸= 0, c ∈ C}

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 7 / 25

Page 10: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Definition of linear code

Problem TJ–8.18Let C be a linear code.Show that either the i-th coordinates in the codewords of C are all zerosor exactly half of them are zeros.

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 8 / 25

Page 11: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Definition of linear code

Problem TJ–8.19Let C be a linear code.Show that either every codeword has even weight or exactly half of themhave even weight.

Parity: w(c1) + w(c2) vs. w(c1 + c2)

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 9 / 25

Page 12: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Definition of linear code

Definition (Linear code)An (n, k) linear code C of length n and rank k is a linear subspace withdimension k of the vector space Fn

2 .

Basis: c1, c2, . . . , ck

ci = α1c1 + α2c2 + · · · + αkck

|C| = 2k

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 10 / 25

Page 13: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Generator matrix

Definition (Generator matrix)A matrix Gn×k is a generator matrix for an (n, k) linear code C if

C = Col(G)

rank(G) = k

G(n×k) · dk×1 = cn×1 ∈ C

G(c1 + c2) = G(c1) + G(c2)

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 11 / 25

Page 14: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Generator matrix for Hamming code (7, 4)

G =

1 0 0 00 1 0 00 0 1 00 0 0 11 1 0 10 1 1 11 0 1 1

G ·

1010

=

1010110

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 12 / 25

Page 15: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Standard generator matrix

Problem TJ–8.7Generator matrices are NOT unique.

Definition (Standard generator matrix)A generator matrix Gn×k is standard if

Gn×k =[

Ik

A(n−k)×k

]

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 13 / 25

Page 16: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

From generator matrix to parity-check matrix

G ·

d1d2d3d4

=

1 0 0 00 1 0 00 0 1 00 0 0 11 1 0 10 1 1 11 0 1 1

·

d1d2d3d4

=

d1d2d3d4

p1 = d1 + d2 + d4p2 = d2 + d3 + d4p3 = d1 + d3 + d4

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 14 / 25

Page 17: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

From generator matrix to parity-check matrix

d1 + d2 + d4 + p1 = 0d2 + d3 + d4 + p2 = 0

d1 + d3 + d4 + p3 = 0

1 1 0 1 1 0 00 1 1 1 0 1 01 0 1 1 0 0 1

d1d2d3d4p1p2p3

= 0

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 15 / 25

Page 18: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Parity-check matrix

Definition (Parity-check matrix)A matrix H(n−k)×n is a parity-check matrix for an (n, k) linear code C if

C = Nul(H)

H(n−k)×n · cn×1 = 0(n−k)×1

rank(H) = n − k

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 16 / 25

Page 19: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Standard parity-check matrix

Problem TJ–8.11Parity-check matrices are NOT unique.

Elementary row operations.

Definition (Standard parity-check matrix)A parity-check matrix H(n−k)×n is standard if

H(n−k)×n =[A(n−k)×k | In−k

]

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 17 / 25

Page 20: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Generator matrix and Parity-check matrix

H(n−k)×n · Gn×k · dk×1 = 0(n−k)×1

H(n−k)×n · Gn×k

=[A(n−k)×k | In−k

]·[

Ik

A(n−k)×k

]= A(n−k)×k · Ik + In−k · A(n−k)×k

= A(n−k)×k + A(n−k)×k

= 0(n−k)×k

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 18 / 25

Page 21: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Syndrome decoding

r = c + ei

r = c + (ei + ej + · · · )

Definition (Syndrome)

S(r) = Hr

= H(c + (ei + ej + · · · ))= H(ei + ej + · · · )= Hei + Hej + · · ·= S(ei) + Sej + · · ·

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 19 / 25

Page 22: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Syndrome decoding

Problem TJ–8.13

H =

0 1 1 1 10 0 0 1 11 0 1 0 1

(d) Errors in the third and fourth bits

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 20 / 25

Page 23: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Extracting d(C) from H

TheoremIf H is the parity-check matrix for a linear code C, then d(C) equals theminimum number of columns of H that are linearly dependent.

1 0 1 00 1 1 00 0 0 1

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 21 / 25

Page 24: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Error-detecting and error-correcting capabilities

t = 1 =⇒ d(C) = 3⇐⇒ ∀{ci}, ∀{ci, cj} linearly independent⇐⇒ no zero column, no identical columns

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 22 / 25

Page 25: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Error-detecting and error-correcting capabilities

Problem TJ–8.21; TJ–8.23If we are to use an error-correcting linear code to transmit the 128 ASCIIcharacters, what size matrix must be used? What if we require only errordetection?

t = 1

2r − 1 ≥ 7 + r =⇒ r ≥ 4

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 23 / 25

Page 26: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Generalized Hamming codes

CHam = (7, 4)

H3×7 : r = 3, n = 23 − 1 = 7

1 1 0 1 1 0 00 1 1 1 0 1 01 0 1 1 0 0 1

d1d2d3d4p1p2p3

= 0

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 24 / 25

Page 27: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Generalized Hamming codes

Definition (Generalized Hamming codes)

Hr ≜ Hr×(2r−1) : all nonzero binary vectors of length r

CrHam = (n = 2r − 1, k = 2r − 1 − r)

|CrHam| = 2n

n + 1

R(CrHam) = k

n

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 25 / 25

Page 28: Algebraic Coding Theory (Revisited)

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

...

.

Linear Codes

Hengfeng Wei ([email protected]) Algebraic Coding Theory (Revisited) April 17 ∼ April 20, 2017 25 / 25