information theory
play

Information Theory Lecture 7 Finite fields continued: R3 and R7 - PDF document

Information Theory Lecture 7 Finite fields continued: R3 and R7 the field GF( p m ),. . . Cyclic Codes Intro. to cyclic codes: R8.13 Mikael Skoglund, Information Theory 1/17 The Field GF ( p m ) ( x ) irreducible


  1. Information Theory Lecture 7 • Finite fields continued: R3 and R7 • the field GF( p m ),. . . • Cyclic Codes • Intro. to cyclic codes: R8.1–3 Mikael Skoglund, Information Theory 1/17 The Field GF ( p m ) • π ( x ) irreducible degree- m over GF( p ) , p a prime, GF( p m ) = all polynomials over GF( p ) of degree ≤ m − 1 , with calculations modulo p and π ( x ) • modulo π ( x ) ↔ use π ( x ) = 0 to reduce x m to degree < m • without loss of generality, π ( x ) can be assumed monic • The prime number p is called the characteristic of GF( p m ) ; smallest p such that � p i =1 1 = 0 • GF( p m ) is a linear vector space of dimension m over GF( p ) • For s < r , GF( p s ) ⊂ GF( p r ) ⇐ ⇒ s | r ⇒ β p s = β • For β ∈ GF( p r ) , β ∈ GF( p s ) ⇐ Mikael Skoglund, Information Theory 2/17

  2. The Cyclic Group G = GF( p m ) \ { 0 } • For any β ∈ GF( p m ) , the smallest r > 0 such that β r = 1 is called the order of β . • The elements in G = GF( p m ) \ { 0 } form a cyclic group ; • There exists an element α ∈ GF( p m ) of order r = p m − 1 that generates all the non-zero elements of GF( p m ) , that is G = { 1 , α, α 2 , . . . , α r − 1 } • Any such α is called a primitive element ⇒ Fermat’s theorem : Any β ∈ GF( q ) satisfies β q = β , that is = r − 1 x q − x = � � ( x − α i ) ( x − β ) = x i =1 β ∈ GF( q ) Mikael Skoglund, Information Theory 3/17 Polynomial Factorizations • For β ∈ GF( p m ) the minimal polynomial of β is the lowest degree monic polynomial m ( x ) over GF( p ) with β as a root • m ( x ) is irreducible, has degree s ≤ m such that s | m , and roots β, β p , β 2 p , . . . , β ( s − 1) p called conjugates • If f ( β ) = 0 for f ( x ) � = m ( x ) over GF( p ) , then m ( x ) | f ( x ) ; ⇒ f ( β p ) = 0 f ( β ) = 0 = • The minimal polynomial of a primitive element in GF( p m ) has degree m , and is called a primitive polynomial Mikael Skoglund, Information Theory 4/17

  3. • A field has at least one primitive element. • When generating GF( p m ) using π ( x ) with roots α, α p , . . . , α ( m − 1) p , the element α is primitive in GF( p m ) ; this is our “standard” primitive element, henceforth denoted α • Let m ( i ) ( x ) be the minimal polynomial of α i ∈ GF( q ) , then x q − 1 − 1 = � m ( t ) ( x ) t over all t ∈ { 1 , 2 , . . . , q − 1 } that give different m ( t ) ( x ) ’s • An independent statement is: x p m − x = product of all monic irreducible polynomials over GF ( p ) with degrees that divide m ⇒ help to identify the m ( i ) ( x ) ’s = ⇒ m ( − i ) ( x ) = x s m ( i ) ( x − 1 ) • m ( i ) ( x ) of degree s = Mikael Skoglund, Information Theory 5/17 Cyclic Codes • C over GF( q ) is cyclic ⇐ ⇒ C is linear and ( c 0 , . . . , c n − 1 ) ∈ C = ⇒ ( c n − 1 , c 0 , . . . , c n − 2 ) ∈ C • For a cyclic code C , let c = ( c 0 , . . . , c n − 1 ) ∈ C correspond to a codeword polynomial c ( x ) over GF( q ) , such that c ( x ) = c 0 + c 1 x + c 2 x 2 + · · · + c n − 1 x n − 1 • A cyclic shift ↔ multiplication with x modulo x n − 1 Mikael Skoglund, Information Theory 6/17

  4. Formalizing. . . • Equivalence relations : Let ∼ be a relation between objects in a set S , such that 1 x ∼ x, ∀ x ∈ S 2 x ∼ y = ⇒ y ∼ x, ∀ x, y ∈ S 3 x ∼ y and y ∼ z = ⇒ x ∼ z, ∀ x, y, z ∈ S • A generalization of ordinary equality “ = ” • Example : S = the integers, and x ∼ y if x = y modulo p • Equivalence classes : An equivalence relation partitions S into elements that are “equal” or “equivalent” in the sense of ∼ , • Example : 1 , 8 , 15 , . . . are in the same equivalence class when ∼ ↔ “ = modulo 7 ” over the non-negative integers Mikael Skoglund, Information Theory 7/17 • Modulo a polynomial : Two polynomials a ( x ) and b ( x ) over GF( q ) are equal modulo a polynomial p ( x ) if a ( x ) = q 1 ( x ) p ( x ) + r ( x ) , b ( x ) = q 2 ( x ) p ( x ) + r ( x ) • Corresponds to an equivalence relation, and a ( x ) and b ( x ) are in the same equivalence or residue class, “ a ( x ) = b ( x ) modulo p ( x ) ” ⇐ ⇒ “ a ( x ) and b ( x ) in the same residue class modulo p ( x ) ” • Formalizing the representation of GF( p m ) ; let F ( x ) = all polynomials over a field F , take F = GF( p ) and π ( x ) ∈ F ( x ) monic irreducible degree- m , then GF( p m ) = F ( x ) /π ( x ) = the different residue classes of F ( x ) modulo π ( x ) Mikael Skoglund, Information Theory 8/17

  5. Rings and Polynomials • Let R be an Abelian group with operation + (addition), and define an operation · (multiplication) such that a · b = b · a, a · ( b + c ) = a · b + a · c, a · ( b · c ) = ( a · b ) · c for all a, b, c ∈ R , and a multiplicative identity 1 such that 1 · a = a · 1 = a for any a ∈ R . Then R is a ring . Mikael Skoglund, Information Theory 9/17 • Let F = GF( q ) , and define the ring R n = F ( x ) / ( x n − 1) • Each class in R n is represented by its lowest degree polynomial (of degree ≤ n − 1 ). • “ = in R n ” ↔ “ = mod x n − 1 ” ↔ “in the same class as the class representative” ↔ “ = the representative” • R n is a linear vector space of dimension n over GF( q ) . • A (principal) ideal � g ( x ) � ⊂ R n generated by g ( x ) ∈ R n , � g ( x ) � = { c ( x ) : c ( x ) = u ( x ) g ( x ) , ∀ u ( x ) ∈ R n } • A cyclic code of length n with generator polynomial g ( x ) ∈ R n is defined as C = � g ( x ) � Mikael Skoglund, Information Theory 10/17

  6. The Generator Polynomial g ( x ) • For C = � g ( x ) � , • g ( x ) is the unique monic polynomial in C of minimal degree r • the dimension of C is k = n − r • g ( x ) | x n − 1 • any u ( x ) over GF( q ) of degree < n − r corresponds uniquely to a c ( x ) ∈ C via c ( x ) = u ( x ) g ( x ) over GF( q ) • k message symbols ( u 0 , . . . , u k − 1 ) , u l ∈ GF( q ) , give a codeword c ( x ) as c ( x ) = u ( x ) g ( x ) , u ( x ) = u 0 + u 1 x + · · · + u k − 1 x k − 1 • C.f., c ∈ C ⇐ ⇒ c = uG Mikael Skoglund, Information Theory 11/17 The Parity Check Polynomial h ( x ) • The polynomial h ( x ) = x n − 1 g ( x ) is the parity check polynomial of the cyclic code � g ( x ) � of length n • g ( x ) h ( x ) = 0 , and c ( x ) ∈ � g ( x ) � ⇐ ⇒ c ( x ) h ( x ) = 0 in R n ; c.f., GH T = 0 and, c ∈ C ⇐ ⇒ cH T = 0 • h ( x ) has degree k = dimension of � g ( x ) � Mikael Skoglund, Information Theory 12/17

  7. G and H matrices • For a cyclic code with g ( x ) = g r x r + g r − 1 x r − 1 + · · · + g 0 h ( x ) = h k x k + h k − 1 x k − 1 + · · · + h 0 we get G and H in cyclic form as   g 0 g 1 · · · g r 0 0 · · · 0 0 g 0 g 1 · · · g r 0 · · · 0   G =   · · ·   0 0 · · · 0 g 0 g 1 · · · g r   0 0 · · · 0 h k h k − 1 · · · h 0 0 · · · 0 h k h k − 1 · · · h 0 0   H =   · · ·   h k h k − 1 · · · h 0 0 0 · · · 0 Mikael Skoglund, Information Theory 13/17 Why Polynomials? • Encoding and decoding circuitry based on simple logical operations straightforward to derive. . . • Construct and analyze (cyclic) codes based on finite field theory and polynomial factorizations Mikael Skoglund, Information Theory 14/17

  8. Factors of x n − 1 • Cyclic code over GF( q ) : g ( x ) h ( x ) = x n − 1 = � { irreducible factors } = ⇒ code can be constructed based on the factors • Assume (always) n and q relatively prime (no common ⇒ exists a smallest m such that n | q m − 1 factors) = • The n zeros of x n − 1 ∈ GF( q m ) and no smaller field, n x n − 1 = � ( x − α i ) i =1 for some { α 1 , . . . , α n } ⊂ GF( q m ) with the α i ’s distinct • The n th roots of unity ; GF( q m ) is the splitting field of x n − 1 Mikael Skoglund, Information Theory 15/17 • The roots { α 1 , . . . , α n } form a cyclic group ⊂ GF( q m ) , that is, there is an α ∈ GF( q m ) , the primitive n th root of unity, such that n − 1 x n − 1 = � ( x − α i ) i =0 • n = q m − 1 ⇐ ⇒ α is a primitive element in GF( q m ) • Assume α a primitive n th root of unity ∈ GF( q m ) where m is the smallest integer such that n | q m − 1 , p ( i ) ( x ) = minimal polynomial of α i ∈ GF( q m ) = ⇒ x n − 1 = � p ( j ) ( x ) j over all j ∈ { 0 , . . . , n − 1 } that give different p ( j ) ( x ) ’s Mikael Skoglund, Information Theory 16/17

  9. • Given a factorization x n − 1 = � p ( j ) ( x ) j some of the p ( j ) ( x ) ’s can form g ( x ) and the others h ( x ) ; • The zeros of a code, • let C = � g ( x ) � of length n , and let K = { k : p ( k ) ( x ) | g ( x ) } , then { α k : k ∈ K } are called the zeros of the code ; • i.e., all roots of g ( x ) • α i for i / ∈ K ( i ≤ n − 1 ) are the nonzeros (all roots of h ( x ) ) • the nonzeros of C are the zeros of C ⊥ and vice versa Mikael Skoglund, Information Theory 17/17

Recommend


More recommend