You are on page 1of 12

Viewing A Code From An Extension Field

(一)
C = [c0, c1,…, cn-1 ]
Hamming (7, 4) code

1 0 0 1 0 1 1 Z 1
0
CHT = [0, 0, 0] – over GF(2)
H  0 1 0 1 1 1 0 Z CHT = 0 – in GF(23)
0 0 1 0 1 1 1 Z 2
1  0   1  0  HCT
α=Z
c0 0  +c1 1 +...+c n-1 0  = 0 
=[0,0,0]T
        α 2 = Z2
0  0  1 0  α3 = Z + 1
α4 = Z2 + Z

GF8 GF2Z
α 5 = Z2 + Z + 1
Z3  Z  1 α 6 = Z2 + 1
α7 = 1
2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 1
take the primitive element   z

 H  α 0 α1 α 2 α 3 α 4 α 5 α 6 
6 n 1
  ci  0  c x    ci x
i i e.g. c(x)=1+x+x3
i 0 i 0

 A binary polynomial c(x) is a codeword polynomial iff  (in GF(8))


is a zero of c(x)

※ r(x)  c(x)  e(x)


e(x)  e0  e1 x    en-1 x n-1
n 1
s j  r v j   e j v ij j  1,2 ,...r.  ( * )
i 0

how to choose v j st. (*)有解

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 2


(二)

v10 v11 v1n 1 


v 0 v1n 1 
 where v j  GFq m  1  j  r
v21
 2
H 
  n  q m -1 r  n-k 
m
 
v 0 v 1r v rn 1 
 r
n 1
CH  0   ci v ij  0 j  1,..., r
T

i 0

 codeword polynomial c(x) has zeros at v1, … ,vr

Def: Let GF(q) be a field and let GF(Q) be an extension field of GF(q).
Let β be in GF(Q). The prime polynomial f(x) of smallest degree
over GF(q) with f(β) = 0 is called the minimal polynomial of β over
GF(q).

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 3


EX: H(15, 7, 5)
1 0 0 0 1 0 0 1 1 0 1 0 1 1 1
0 1 0 0 1 1 0 1 0 1 1 1 1 0 0
  α, α3 in GF(24)
0 0 1 0 0 1 1 0 1 0 1 1 1 1 0
  α15 = 1
0 0 0 1 0 0 1 1 0 1 0 1 1 1 1
H
1 0 0 0 1 1 0 0 0 1 1 0 0 0 1
 
0 0 0 1 1 0 0 0 1 1 0 0 0 1 1
0 0 1 0 1 0 0 1 0 1 0 0 1 0 1
 
0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 
c(α)=0
     
0
1
 2
  3
  4
 5
 6
  7 8 9 10 11 12 13 14
c(α3)=0
 3 0 
( )      15  18  21  24  27  30  33  36  39  42 
3 6 9 12

x15 – 1 = (x+1)(x2+x+1)(x4+x+1)(x4+x3+1)(x4+x3+x2+x+1)

取 g(x) = (x4+x+1)(x4+x3+x2+x+1) = x8 + x7 + x6 + x4 + 1
(i) n – k = 8  k = 7
(ii) d* ≤ 9 (= singleton bound)
≤ 5 (∵ w(g(x)) = 5)
∵ d* ≥ 2t + 1 = 5 (BCH bound)
∴ d* = 5

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 4


補充1

If we take g(x) = (x4+x3+1)(x4+x3+x2+x+1),


then g(x) has α7, α14, α13, α11, α3, α6, α12, and α9
as its eight roots over GF(24).
(α11, α12, α13, α14 四個連續根)
( n-k = 8 = m × t = 4 × 2)

Q:
1. Find the parity check matrix H?
2. Using the generator polynomial g(x), first find a codeword and
then check whether the equation CHT=0 holds ?

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 5


補充2

If we take g(x) = (x2+x+1)(x4+x+1)(x4+x3+x2+x+1),


then g(x) has α5, α10, α, α2, α4, α8 , α3, α6, α12, and α9
as its ten roots over GF(24).
( α, α2, α3, α4, α5, α6 六個連續根)
( n-k = 10 < m × t = 4 × 3)

Q:
1. What’s the parity check matrix ?
2. How could we see that c(x) has zeros, α, α3 and α5 ,
from the property of cHT = 0?

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 6


Thm: F[x]/p(x) is a field iff p(x) is a prime polynomial

Prime polynomials over GF(2)


Degree Primitive Polynomial
2 x2 + x + 1  x2+x+1 | x3+1
3 x3 + x + 1  x3+x+1 | x7+1
4 x4 + x + 1
5 x5 + x2 + 1
6 x6 + x + 1
7 x7 + x3 + 1
8 x8 + x4 + x3 + x2 + 1
9 x9 + x4 + 1
10 x10 + x3 + 1
11 x11 + x2 + 1
12 x12 + x6 + x4 + x + 1
13 x13 + x4 + x3 + x + 1
14 x14 + x10 + x6 + x + 1
15 x5 + x + 1
16 x16 + x12 + x3 + x + 1

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 7


GF(24) = GF(2)[Z] / Z4+Z+1
Exponential Polynomial Binary Decimal Minimal
Notation Notation Notation Notation Polynomial
0 0 0000 0 x
α0 1 0001 1 x+1
α=Z
α1 Z 0010 2 x4 + x + 1。
α2 Z2 0100 4 x4 + x + 1。
α3 Z3 1000 8 x4 + x3 + x2 + x + 1
α4 Z+1 0011 3 x4 + x + 1。
α5 Z2 + Z 0110 6 x2 + x + 1
α6 Z3 + Z2 1100 12 x4 + x3 + x2 + x + 1
α7 Z3 + Z + 1 1011 11 x4 + x3 + 1
α8 Z2 + 1 0101 5 x4 + x + 1 。
α9 Z3 + Z 1010 10 x4 + x3 + x2 + x + 1
α10 Z2 + Z + 1 0111 7 x2 + x + 1
α11 Z3 + Z2 + Z 1110 14 x4 + x3 + 1
α12 Z3 + Z2 + Z + 1 1111 15 x4 + x3 + x2 + x + 1
α13 Z3 + Z2 + 1 1101 13 x4 + x3 + 1
α14 Z3 + 1 1001 9 x4 + x3 + 1
x15 = 1
2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 8
Minimal Polynomials and Conjugates
Q: How to find g(x)
GF(q) ----------GF(qm) n = qm – 1 : primitive block length
xn – 1 = f1(x)f2(x)…fs(x) fi(x) : prime polynomials over GF(q)
• g(x)|xn – 1  g(x) = fi(x) 2s – 2 different nontrivial cyclic code
g(x) = 1, xn – 1 trivial cases
• Choosing desirable zeros in an extension field so as to ensure a good
code

x n - 1   x -  j  βj is a nonzero element of GF(qm)


j

f l x 
minimal
βj
polynomial

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 9


Thm: Suppose that f(x) is the minimal polynomial over GF(q) of β,
an element of GF(qm). Then f(x) is also the minimal polynomial
of βq.

Def: Two element of GF(qm) that share the same minimal polynomial
over GF(q) are called conjugates (with respect to GF(q))

GF(24)
e.g.
GF(16)
q=2 r=4 m=4
GF(42)
2 2 2 2 3
2 r-1
{β, βq, βq , … , βq } βq = β
r α7 (α7) (α7) (α7)
n = 2m – 1 = 24 – 1 = 15
4
ie. β2 = β
Thm: The minimal polynomial of β is ie. β15 = 1
r-1
f(x) = (x- β)(x- βq)…(x- βq )

m m
Cor: ∵ βq = β(βq -1 = βn = 1) -> r< m
∴ deg( minimal polynomial ) ≤ m
2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 10
Thm1: Let g(x), the generator polynomial of a primitive code, have zeros
β1, β2 … βr in GF(qm). A polynomial c(x) over GF(q) is a codeword
polynomial iff c(β1) = c(β2) = … = c(βr) = 0, where c(βj) is evaluated
in GF(qm).

• Suppose we wish to construct a g(x) that has β1, β2 … βr as zeros.


Find the minimal polynomials of these field elements, denoting them as
f1(x), f2(x), … , fr(x), Then
g(x) = LCM[ f1(x), f2(x), … , fr(x) ]
• How to find fl(x)
• Cyclic codes in one field can be constructed by working with zeros in a
larger field.

2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 11


Proof: Thm1:
 c(x) = a(x)g(x) ∴ c(βj) = 0
 Suppose c(βj) = 0
c(x) = Q(x)fj(x) + s(x) where
deg s(x) < deg fj(x)
fj(x) is the minimal polynomial of βj
but 0 = Q(βj)fj(βj) + s(βj) = s(βj) ( if s(x)  0 )
∴ s(x) = 0
∴ fj(x)|c(x)  g(x)|c(x)
=LCM[ f1(x)f2(x)…fr(x) ]
e.g.
x15 – 1 = (x+1)(x2+x+1)(x4+x+1)(x4+x3+1)(x4+x3+x2+x+1)
In GF(24) = (x-α0)(x-α5)(x-α10)(x-α)(x-α2)(x-α4)(x-α8)
α15 = 1 (x-α7)(x-α14)(x-α13)(x-α11)
(x-α3)(x-α6)(x-α12)(x-α9)
take g(x) x4+x3+1)(x4+x3+x2+x+1) = x8 + x4 + x2 + x + 1
has zeros α3 α6 α7 α9 α11 α12 α13 α14
= (﹡α5, α10 : order = 3 deg[ x2 + x + 1 ] | 4
α3, α6, α9, α12 : order = 5 deg[ x4+x3+x2+x+1 ] | 4
α, α2, α4, α8 α7,α14,α13,α11 : order = 15
2006/12/6 Yuh-Ming Huang, CSIE NCNU Block Codes - extended 12

You might also like