Introduction to Algebra ECEN 5682 Theory and Practice of Error Control Codes Introduction to Algebra Peter Mathys University of Colorado Spring 2007 Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Motivation and Basic Definitions For convolutional codes it was convenient to express the datawords and the codewords in the form of power series and to use generator polynomials to compute the code power series from the data power series. A similar approach, using polynomials instead of power series, can be used to generate a class of blockcodes known as cyclic codes . Definition: The polynomial f ( x ) associated with the vector f = ( f 0 , f 1 , . . . , f N − 1 ) is f ( x ) = f 0 + f 1 x + . . . + f N − 1 x N − 1 . Definition: Let u = ( u 0 , u 1 , . . . u k − 1 ) be a dataword of a ( n , k ) blockcode. Then the polynomial u ( x ) = u 0 + u 1 x + . . . + u k − 1 x k − 1 , with deg u ( x ) ≤ k − 1 , associated with u is called the corresponding data polynomial . Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Definition: Let c = ( c 0 , c 1 , . . . c n − 1 ) be a codeword of a ( n , k ) blockcode. Then the polynomial c ( x ) = c 0 + c 1 x + . . . + c n − 1 x n − 1 , with deg c ( x ) ≤ n − 1 , associated with c is called the corresponding code polynomial . Definition: A q-ary generator polynomial of degree n − k is a polynomial in x of the form g ( x ) = g 0 + g 1 + . . . + g n − k x n − k , g 0 , g n − k � = 0 , with n − k + 1 q -ary coefficients g i . Definition: The q -ary ( n , k ) blockcode C generated by the q -ary generator polynomial g ( x ) of degree n − k is the set of all code polynomials c ( x ) = u ( x ) g ( x ) , which is obtained from the set of all possible q -ary data polynomials u ( x ) with deg u ( x ) ≤ k − 1. Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Example: Let q = 2 and g ( x ) = 1 + x 2 + x 3 + x 4 . Using c ( x ) = u ( x ) g ( x ), the following codewords are obtained: u ( x ) c ( x ) 0 00000 10111 = 1 + x 2 + x 3 + x 4 = g ( x ) 1 01 = x 010111 = x g ( x ) right shift 11 = 1 + x 111001 = g ( x ) + x g ( x ) 001 0010111 101 1001011 011 0111001 111 1100101 0001 00010111 1001 10101111 0101 01001011 1101 11110011 0011 00111001 1 + x 7 = (1 + x 2 + x 3 )(1 + x 2 + x 3 + x 4 ) 1011 10000001 ← 0111 01100101 1111 11011101 Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions The set of codewords from the first 8 rows C = { 0000000 , 1011100 , 0101110 , 1110010 , 0010111 , 1001011 , 0111001 , 1100101 } make up a cyclic (i.e., if c is a codeword, then its cyclic shifts are also codewords) binary (7 , 3 , 4) code. The whole set of 16 codewords, however, only makes up a (non-cyclic) binary (8 , 4 , 2) code, where the reduction in minimum distance from 4 to 2 comes from u = (1011) → c = (10000001). Definition: A polynomial with q -ary coefficients is called irreducible if it cannot be factored into two or more smaller degree polynomials with q -ary coefficients. Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Example: (contd.) From the computation of c ( x ) = u ( x ) g ( x ) above it can be deduced that, using modulo 2 arithmetic for polynomial coefficients, x 7 +1 = ( x 3 + x 2 +1) ( x 4 + x 3 + x 2 + 1) = ( x +1) ( x 3 + x +1) ( x 3 + x 2 +1) , | {z } = ( x + 1)( x 3 + x + 1) where all three polynomials in the last expression are irreducible modulo 2. Such polynomials are useful for constructing extension fields. Let p ( x ) = x 3 + x + 1 and define the element α by 0 = p ( α ) = α 3 + α + 1 α 3 = α + 1 . = ⇒ Note that, using regular arithmetic, one would have obtained α 3 = − ( α + 1), but because all coefficients are taken modulo 2, minus and plus are the same. Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Multiplying repeatedly by α and using the reduction α 3 = α + 1 whenever necessary results in the following elements: α 3 = α + 1 , α 4 = α 2 + α , α 5 = α 3 + α 2 = α 2 + α + 1 , α 6 = α 3 + α 2 + α = α 2 + 1 , α 7 = α 3 + α = 1 = α 0 . After adding the zero element this becomes the set of 2 3 = 8 elements F = { 0 , 1 , α, α 2 , α 3 , α 4 , α 5 , α 6 } . Each element can be expressed as a polynomial of degree at most two with binary coefficients and indeterminate α . Therefore, using modulo 2 polynomial addition, one can easily set up an addition table for the elements in F . Similarly, a multiplication table is easily obtained from the power of α representation of the non-zero elements in F . Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions The addition table is α 2 α 3 α 4 α 5 α 6 + 0 1 α α 2 α 3 α 4 α 5 α 6 0 0 1 α α 3 α 6 α 5 α 4 α 2 1 1 0 α α 3 α 4 α 2 α 6 α 5 0 1 α α α 2 α 2 α 6 α 4 α 5 α 3 0 1 α α 3 α 3 α 5 α 6 α 2 α 4 1 0 α α 4 α 4 α 5 α 2 α 6 α 3 0 1 α α 5 α 5 α 4 α 6 α 3 α 2 1 0 α α 6 α 6 α 2 α 5 α 4 α 3 1 0 α Because of the all-zero main diagonal in the addition table each element is equal to its additive inverse, i.e., − α i = α i for i = 0 , 1 , . . . , 6. Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions The multiplication table is α 2 α 3 α 4 α 5 α 6 · 0 1 α 0 0 0 0 0 0 0 0 0 α 2 α 3 α 4 α 5 α 6 1 0 1 α α 2 α 3 α 4 α 5 α 6 0 1 α α α 2 α 2 α 3 α 4 α 5 α 6 0 1 α α 3 α 3 α 4 α 5 α 6 α 2 0 1 α α 4 α 4 α 5 α 6 α 2 α 3 0 1 α α 5 α 5 α 6 α 2 α 3 α 4 0 1 α α 6 α 6 α 2 α 3 α 4 α 5 0 1 α Using the fact that α 7 = α 0 , one can find multiplicative inverses for all non-zero elements quite easily using α − j = α 7 − j for j = 1 , 2 , . . . , 6. Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Groups, Rings, Fields Over the reals R (or the rationals Q , or the complex numbers C ) one can add, subtract, multiply and divide. In modern algebra the following arithmetic systems are distinguished: Group: Set of mathematical objects for which “addition” and “subtraction” are defined. Ring: Set of mathematical objects for which “addition” , “subtraction” and “multiplication” are defined. Field: Set of mathematical objects for which “addition” , “subtraction” , “multiplication” and “division” are defined. Note that “addition” , “subtraction” , “multiplication” and “division” need not be the usual ‘+’, ‘ − ’, ‘ × ’, and ‘ ÷ ’. Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Definition: A set S is an arbitrary collection of objects or elements, without any predefined operations between set elements. Definition: The cardinality |S| of a set S is the number of objects contained in the set. The cardinality of a set can be finite , countably infinite , or uncountably inifinite . Examples: The set of tea cups in your kitchen is (almost certainly) a finite set. The set of all rational numbers Q is countably infinite. The set of all real numbers R is uncountably infinite. Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Let S denote a set of mathematical objects. Then, for any a , b , c ∈ S , the following axioms can be defined: (A.1) a + b ∈ S Closure wrt + (A.2) a + ( b + c ) = ( a + b ) + c = a + b + c Associativity wrt + (A.3) a + 0 = 0 + a = a , 0 ∈ S Identity element wrt + (A.4) a + ( − a ) = ( − a ) + a = 0 , ( − a ) ∈ S Inverse element wrt + (A.5) a + b = b + a Commutativity wrt + (B.1) a · b ∈ S Closure wrt · (B.2) a · ( b · c ) = ( a · b ) · c = a · b · c Associativity wrt · (B.3) a · 1 = 1 · a = a , 1 ∈ S−{ 0 } Identity element wrt · a · ( a − 1 ) = ( a − 1 ) · a = 1 , a , ( a − 1 ) ∈ S − { 0 } (B.4) Inverse element wrt · (B.5) a · b = b · a Commutativity wrt · (C.1) ( a + b ) · c = a · c + b · c Distributivity c · ( a + b ) = c · a + c · b Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Introduction to Algebra Basic Definitions Depending on the subset of axioms which are satisfied, the following arithmetic systems can be defined: Axioms satisfied Name (A.1) . . . (A.4) Group (A.1) . . . (A.4),(A.5) Commutative (Abelian) Group (A.1) . . . (A.5),(B.1) . . . (B.3),(C.1) Ring with Identity (A.1) . . . (A.5),(B.1) . . . (B.3),(B.5),(C.1) Commutative Ring with Identity (A.1) . . . (A.5),(B.1) . . . (B.5),(C.1) Field Note: Commutative groups (rings, fields) are also called Abelian groups (rings, fields) in honor of Niels Henrik Abel (1802–1829). Notation: A group with set of elements G and operation ‘ ∗ ’ is denoted by < G , ∗ > . A ring with set of elements R , first operation ‘+’ and second operation ‘ · ’ is denoted by < R , + , · > . Similarly, a field with set of elements F , first operation ‘+’ and second operation ‘ · ’ is denoted by < F , + , · > . Peter Mathys ECEN 5682 Theory and Practice of Error Control Codes
Recommend
More recommend