ECEN 5682 Theory and Practice of Error Control Codes

Similar documents
ECEN 5022 Cryptography

Introduction to finite fields

Chapter 4 Mathematics of Cryptography

Rings. Chapter 1. Definition 1.2. A commutative ring R is a ring in which multiplication is commutative. That is, ab = ba for all a, b R.

Sample algebra qualifying exam

Chapter 4 Finite Fields

Fields in Cryptography. Çetin Kaya Koç Winter / 30

Galois fields/1. (M3) There is an element 1 (not equal to 0) such that a 1 = a for all a.

B. Cyclic Codes. Primitive polynomials are the generator polynomials of cyclic codes.

1. Group Theory Permutations.

Section VI.33. Finite Fields

Number Axioms. P. Danziger. A Group is a set S together with a binary operation (*) on S, denoted a b such that for all a, b. a b S.

Algebra: Groups. Group Theory a. Examples of Groups. groups. The inverse of a is simply a, which exists.

55 Separable Extensions

MT5836 Galois Theory MRQ

Commutative Rings and Fields

Fields and Galois Theory

Generator Matrix. Theorem 6: If the generator polynomial g(x) of C has degree n-k then C is an [n,k]-cyclic code. If g(x) = a 0. a 1 a n k 1.

MATH 433 Applied Algebra Lecture 22: Review for Exam 2.

Page Points Possible Points. Total 200

Mathematical Foundations of Cryptography

Finite Fields. Saravanan Vijayakumaran Department of Electrical Engineering Indian Institute of Technology Bombay

Abstract Algebra, Second Edition, by John A. Beachy and William D. Blair. Corrections and clarifications

Rings. EE 387, Notes 7, Handout #10

CDM. Finite Fields. Klaus Sutner Carnegie Mellon University. Fall 2018

School of Mathematics and Statistics. MT5836 Galois Theory. Handout 0: Course Information

Note that a unit is unique: 1 = 11 = 1. Examples: Nonnegative integers under addition; all integers under multiplication.

MATH 433 Applied Algebra Lecture 21: Linear codes (continued). Classification of groups.

ALGEBRA QUALIFYING EXAM SPRING 2012

ALGEBRA 11: Galois theory

Mathematics for Cryptography

Coding Theory and Applications. Solved Exercises and Problems of Cyclic Codes. Enes Pasalic University of Primorska Koper, 2013

SUPPLEMENTARY NOTES: CHAPTER 1

Outline. We will now investigate the structure of this important set.

NOTES ON FINITE FIELDS

Groups. Contents of the lecture. Sergei Silvestrov. Spring term 2011, Lecture 8

Definitions. Notations. Injective, Surjective and Bijective. Divides. Cartesian Product. Relations. Equivalence Relations

Section 33 Finite fields

Groups. s t or s t or even st rather than f(s,t).

Many of the groups with which we are familiar are arithmetical in nature, and they tend to share key structures that combine more than one operation.

Fields and Galois Theory. Below are some results dealing with fields, up to and including the fundamental theorem of Galois theory.

Section 18 Rings and fields

* 8 Groups, with Appendix containing Rings and Fields.

Extension fields II. Sergei Silvestrov. Spring term 2011, Lecture 13

CHAPTER 14. Ideals and Factor Rings

Finite Fields: An introduction through exercises Jonathan Buss Spring 2014

Finite Fields. Mike Reiter

Ultraproducts of Finite Groups

7.1 Definitions and Generator Polynomials

COMPUTER ARITHMETIC. 13/05/2010 cryptography - math background pp. 1 / 162

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties:

1 Commutative Rings with Identity

Discrete Mathematics. Benny George K. September 22, 2011

CSIR - Algebra Problems

5.0 BCH and Reed-Solomon Codes 5.1 Introduction

Algebraic structures I

LECTURE NOTES IN CRYPTOGRAPHY

Computer Algebra for Computer Engineers

Groups, Rings, and Finite Fields. Andreas Klappenecker. September 12, 2002

Lecture 7: Polynomial rings

Name: Solutions Final Exam

Galois theory of fields

Course 311: Michaelmas Term 2005 Part III: Topics in Commutative Algebra

Algebraic Structures Exam File Fall 2013 Exam #1

Finite Fields. Sophie Huczynska. Semester 2, Academic Year

Supplement. Dr. Bob s Modern Algebra Glossary Based on Fraleigh s A First Course on Abstract Algebra, 7th Edition, Sections 0 through IV.

a * (b * c) = (a * b) * c Now, we introduce a useful algebraic system called a group.

ALGEBRA PH.D. QUALIFYING EXAM September 27, 2008

Foundations of Cryptography

Kevin James. MTHSC 412 Section 3.1 Definition and Examples of Rings

Latin squares. Clock arithmetic. Modular arithmetic. Binary operations 18/09/2013. Members only an introduction to groups

List of topics for the preliminary exam in algebra

CHAPTER I. Rings. Definition A ring R is a set with two binary operations, addition + and

The BCH Bound. Background. Parity Check Matrix for BCH Code. Minimum Distance of Cyclic Codes

ALGEBRA EXERCISES, PhD EXAMINATION LEVEL

1. Introduction to commutative rings and fields

Algebra. Modular arithmetic can be handled mathematically by introducing a congruence relation on the integers described in the above example.

EE 229B ERROR CONTROL CODING Spring 2005

Know the meaning of the basic concepts: ring, field, characteristic of a ring, the ring of polynomials R[x].

Theorem 5.3. Let E/F, E = F (u), be a simple field extension. Then u is algebraic if and only if E/F is finite. In this case, [E : F ] = deg f u.

DEPARTMENT OF MATHEMATIC EDUCATION MATHEMATIC AND NATURAL SCIENCE FACULTY

MATH 3300 Test 1. Name: Student Id:

Irreducible Polynomials. Finite Fields of Order p m (1) Primitive Polynomials. Finite Fields of Order p m (2)

GRE Subject test preparation Spring 2016 Topic: Abstract Algebra, Linear Algebra, Number Theory.

2 so Q[ 2] is closed under both additive and multiplicative inverses. a 2 2b 2 + b

1 Fields and vector spaces

Factorization in Polynomial Rings

1 Rings 1 RINGS 1. Theorem 1.1 (Substitution Principle). Let ϕ : R R be a ring homomorphism

76 CHAPTER 7. INTRODUCTION TO FINITE FIELDS For further reading on this beautiful subject, see [E. R. Berlekamp, Algebraic Coding Theory, Aegean Press

Chapter 3. Introducing Groups

Cyclic codes. I give an example of a shift register with four storage elements and two binary adders.

MATH 3030, Abstract Algebra Winter 2012 Toby Kenney Sample Midterm Examination Model Solutions

Part IV. Rings and Fields

Quasi-cyclic codes. Jay A. Wood. Algebra for Secure and Reliable Communications Modeling Morelia, Michoacán, Mexico October 12, 2012

ECEN 604: Channel Coding for Communications

5 Group theory. 5.1 Binary operations

How many units can a commutative ring have?

Math Introduction to Modern Algebra

Definition List Modern Algebra, Fall 2011 Anders O.F. Hendrickson

1 First Theme: Sums of Squares

Transcription:

ECEN 5682 Theory and Practice of Error Control Codes Introduction to Algebra University of Colorado Spring 2007

Motivation and 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.

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.

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 1 10111 = 1 + x 2 + x 3 + x 4 = g(x) 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 1011 10000001 1 + x 7 = (1 + x 2 + x 3 )(1 + x 2 + x 3 + x 4 ) 0111 01100101 1111 11011101

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.

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) {z } = (x +1) (x 3 +x +1) (x 3 +x 2 +1), = (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.

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.

The addition table is + 0 1 α α 2 α 3 α 4 α 5 α 6 0 0 1 α α 2 α 3 α 4 α 5 α 6 1 1 0 α 3 α 6 α α 5 α 4 α 2 α α α 3 0 α 4 1 α 2 α 6 α 5 α 2 α 2 α 6 α 4 0 α 5 α α 3 1 α 3 α 3 α 1 α 5 0 α 6 α 2 α 4 α 4 α 4 α 5 α 2 α α 6 0 1 α 3 α 5 α 5 α 4 α 6 α 3 α 2 1 0 α α 6 α 6 α 2 α 5 1 α 4 α 3 α 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.

The multiplication table is 0 1 α α 2 α 3 α 4 α 5 α 6 0 0 0 0 0 0 0 0 0 1 0 1 α α 2 α 3 α 4 α 5 α 6 α 0 α α 2 α 3 α 4 α 5 α 6 1 α 2 0 α 2 α 3 α 4 α 5 α 6 1 α α 3 0 α 3 α 4 α 5 α 6 1 α α 2 α 4 0 α 4 α 5 α 6 1 α α 2 α 3 α 5 0 α 5 α 6 1 α α 2 α 3 α 4 α 6 0 α 6 1 α α 2 α 3 α 4 α 5 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.

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.

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.

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 (B.4) a (a 1 ) = (a 1 ) a = 1, a, (a 1 ) S {0} 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

Depending on the subset of axioms which are satisfied, the following arithmetic systems can be defined: Axioms satisfied (A.1)...(A.4) (A.1)...(A.4),(A.5) (A.1)...(A.5),(B.1)...(B.3),(C.1) (A.1)...(A.5),(B.1)...(B.3),(B.5),(C.1) (A.1)...(A.5),(B.1)...(B.5),(C.1) Name Group Commutative (Abelian) Group Ring with Identity Commutative Ring with Identity 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, +, >.

Definition: If G (or R or F ) in <G, > (or <R, +, > or <F, +, >) has finite cardinality, then <G, > is a finite group (or <R, +, > is a finite ring, or <F, +, > is a finite field). In this case the number of elements in G (or R or F ) denoted G (or R or F ) is called the order of G (or R or F ). Example: The set of all even integers form a group under the operation of (usual) addition. The number of elements in this group is countably infinite. Example: Let G = {1, 2, 3, 4, 5, 6} and let denote multiplication modulo 7. Then <G, > is a finite group of order G = 6. Example: The set of all polynomials in the indeterminate x with integer coefficients form a commutative ring with identity under the operations of (usual) polynomial addition and multiplication. Because polynomials must have a finite degree, this ring has a countably infinite number of elements.

Example: The set of all complex numbers together with complex addition and multiplication forms a field with an uncountably infinite number of elements. Example: The integers 0, 1,..., 6 form a finite field (called GF (7), where GF stands for Galois field in honor of Evariste Galois (1811 1832)) under the operations of addition and multiplication modulo 7. Here are the group operation tables for GF (7): + 0 1 2 3 4 5 6 0 0 1 2 3 4 5 6 1 1 2 3 4 5 6 0 2 2 3 4 5 6 0 1 3 3 4 5 6 0 1 2 4 4 5 6 0 1 2 3 5 5 6 0 1 2 3 4 6 6 0 1 2 3 4 5 0 1 2 3 4 5 6 0 0 0 0 0 0 0 0 1 0 1 2 3 4 5 6 2 0 2 4 6 1 3 5 3 0 3 6 2 5 1 4 4 0 4 1 5 2 6 3 5 0 5 3 1 6 4 2 6 0 6 5 4 3 2 1

Definition: Isomorphism. Two groups <G, +> and <G, > are isomorphic if a one-to-one mapping f (.) exists such that (i) a = f (a) (and thus a = f 1 (a )) for all a G and a G, (ii) if a = f (a), b = f (b), then a b = f (a + b) (and thus a + b = f 1 (a b )), for any a, b G and any a, b G. That is, there has to be a one-to-one correspondence between the elements of the two groups, which is preserved under the group operations + and of the respective groups. Note: Isomorphism for rings and fields is defined analogously. The one-to-one correspondence in this case must be preserved for both operations of the respective rings or fields.

Example: The elements G = {1, 2, 4, 8, 11, 16} form a group of order 6 under the operation of multiplication modulo 21, denoted by. Similarly, the elements G = {1, 2, 3, 4, 5, 6} form a group of order 6 under which denotes multiplication modulo 7. The two group operation tables are Multiplication modulo 21 1 2 4 8 11 16 1 1 2 4 8 11 16 2 2 4 8 16 1 11 4 4 8 16 11 2 1 8 8 16 11 1 4 2 11 11 1 2 4 16 8 16 16 11 1 2 8 4 Multiplication modulo 7 1 2 3 4 5 6 1 1 2 3 4 5 6 2 2 4 6 1 3 5 3 3 6 2 5 1 4 4 4 1 5 2 6 3 5 5 3 1 6 4 2 6 6 5 4 3 2 1 Using the mapping a = f (a) from G to G 1 = f (1), 2 = f (4), 3 = f (2), 4 = f (16), 5 = f (11), 6 = f (8), it is not difficult to see that <G, > and <G, > are isomorphic.

Definition: Let <G, > be a group and let H be a nonempty subset of G. Then H is called a subgroup of G if <H, > is a group. Example: Let <G, > be the elements G = {1, 2, 3, 4, 5, 6} under the operation of multiplication modulo 7. Then H = {1, 2, 4} is a subgroup and it is easily verified that <H, > satisfies all the axioms of a group. Definition: Let <R, +, > be a ring and let H be a nonempty subset of R. Then H is called a subring of R if <H, +, > is a ring. Note: In particular, identity with respect to first operation must be in H and closure must hold (under all specified operations) for elements in H. Definition: Let <E, +, > be a field. Then F E is called a subfield of E if <F, +, > is a field. The field E is then called an extension field of F.

Example: Consider the field of rational numbers Q, the field of real numbers R, and the field of complex numbers C. Then Q R C, and thus Q is a subfield of R and C is an extension field of R. To obtain a subgroup H of a finite group <G, >, one can proceed as follows. Take any h G and let H be the set {h, h h, h h h,...}, or, using a more concise notation, H = {h, h 2, h 3,..., h c = 1}, where c = H is the smallest positive integer such that h c = 1. Example: Consider the group G = {1, 2,..., 12} of integers under the operation of multiplication modulo 13. Picking h = 3 results in the set H = {5 1 = 5, 5 2 = 12, 5 3 = 8, 5 4 = 1}, which forms a subgroup of G of order 4.

Theorem: If G is a finite group and h G, then a smallest positive integer c, called the order of the element h, exists such that h c = 1. Moreover, the first element in the sequence h, h 2, h 3,... which is repeated is h itself. Proof: The element h is a member of a finite group and thus a repetition must eventually occur in h, h 2, h 3,..., that is, it must be true that h k = h m, m > k, for two positive integers k and m. Since the element h k must be in G, one can write 1 = h k h k = h m h k = h m k, which proves that there is at least one positive integer c such that h c = 1. But then h c+1 = h and, since h, h 2,..., h c must all be distinct (otherwise c is not smallest positive integer such that h c = 1), h is the first element which is repeated. QED

Definition: h, h 2, h 3,..., h c = 1 is called a cycle. Note: A cycle is a subgroup. Definition: A group that consists of all the powers of one of its elements, say, α, is called a cyclic group (i.e., G = {α, α 2,..., α c = 1}). The element α is called a primitive element or a generator of the group. Example: Let <G, > be the set of integers under multiplication modulo 13. Then, choosing α = 2, one obtains α 0 = 1 α 4 = 3 α 8 = 9 α 12 = 1 α 1 = 2 α 5 = 6 α 9 = 5 α 2 = 4 α 6 = 12 α 10 = 10 α 3 = 8 α 7 = 11 α 11 = 7 Thus, <G, > is a cyclic group and α = 2 is a primitive element in this group.

Coset Decomposition. Given a finite group <G, > and a subgroup <H, >, H = {h 1, h 2,..., h n } G, one can decompose G with respect to H as follows: h 1 = 1 h 2 h 3... h n g 2 h 1 = g 2 g 2 h 2 g 2 h 3... g 2 h n g 3 h 1 = g 3 g 3 h 2 g 3 h 3... g 3 h n....... g m h 1 = g m g m h 2 g m h 3... g m h n The rows of the coset decomposition are called cosets. The first row is the subgroup H. The elements h 1, g 2, g 3,..., g m in the first column are called coset leaders.

The construction of the array proceeds as follows: (1) Start with the elements of H in the first row (each element occurs exactly once). (2) Choose an (arbitrary) element of G which does not yet appear in the table as coset leader and complete the coset. Repeat this step until all elements of G are used. Note that the array constructed in this way is always rectangular and the construction always stops since G is finite. For non-abelian groups one distinguishes a left coset decomposition with elements g i h j from a right coset decomposition with elements h j g i. Note: The standard array used for (conceptual) decoding of received n-tuples of a q-ary linear code is a coset decomposition. In this case the subset H is the set of all codewords of the code and the group operation is vector addition modulo q.

Example: Let < G, > be the group of integers G = {1, 2,..., 12} under the operation of multiplication modulo 13. A coset decomposition of G with respect to the subgroup H = {1, 3, 9} is 1 3 9 2 6 5 4 12 10 8 11 7 Coset leaders Subgroup H Cosets