3. Coding theory 3.1. Basic concepts
|
|
- Shonda Bryan
- 5 years ago
- Views:
Transcription
1 3. CODING THEORY 1 3. Coding theory 3.1. Basic concepts In this chapter we will discuss briefly some aspects of error correcting codes. The main problem is that if information is sent via a noisy channel, then the received message contains errors which need to be detected and corrected. The lectures are given by a non native speaker of English. Any mispronunciation due to his accent will be corrected by your brain to the correct English word. The idea is to assign at each symbol a codeword. If there are not to many errors introduced during the transmission then the received word might not be a codeword but near to a unique codeword which, hopefully, was the original one. One way of decoding YES and NO is by YES= and NO= The sequence is not a codeword and is likely to mean NO (there were two errors) rather then YES (there were five errors). A q-ary code C is a given set of sequences of symbols where each symbol is chosen from a set F of q elements. The set F is called the alphabet. If q = 2, the code will be called binary. We limit ourself to the situation where F is a field of order q. IF n q will denote the set of all ordered n-tuples a = a 1 a 2... a n with a i IF q. The elements of IF n q are called vectors and n is called the length of a. Observe that the set IF n q has q n elements. A q-ary code C of length n is a subset of IF n q. We say that a code C of length n is s error detecting if changing up to s digits to a codeword does not produce a codeword. We say that a code C of length n is t error correcting if from a given string of length n which differs on at most t places from some codeword one can deduce the codeword. The Hamming distance between two vectors x and y of IF n q is the number of places in which they differ. It is denoted by d(x, y). In IF 5 2 we have d(00111, 11001) = 4. In IF 4 3 we have d(0122, 1220) = 3. Lemma The Hamming distance is a distance function, that is it satisfies the three conditions i.) d(x, y) = 0 if and only if x = y. ii.) d(x, y) = d(y, x), for all x, y IF n q. iii.) d(x, y) d(x, z) + d(z, y), for all x, y, z IF n q. The first two conditions are easy to verify. The third, known as the triangle inequality, is verified as follows. Note that if u, v IF n q, then d(u, v) is the minimum number of changes of digits required to change u into v. But we can change x into y by first changing x into z and then z into y. Hence d(x, y) d(x, z) + d(z, y), The problem of decoding we consider is as follows. Suppose a codeword x, unknown to us, has been transmitted to us and we have received the vector y. This vector y may have been distorted by
2 3. CODING THEORY 2 noise. It seem reasonable to decode y as that code word z such that d(z, y) is as small as possible. This is called nearest decoding. Given a code C the minimum distance, denoted d(c), is the smallest distances between distinct code words. That is, d(c) = min{d(x, y) x, y C, x y}. Lemma Let C be a code. (i) One can detect up to s errors in any codeword if d(c) s + 1. (ii) One can correct up to t errors in any codeword if d(c) 2t + 1. Suppose d(c) s + 1. Suppose a codeword x is transmitted and s or fewer errors are introduced. Then the received vector cannot be a different codeword and so the errors can be detected. Suppose d(c) 2t + 1. Suppose a codeword x is transmitted and the vector y is received in which t or fewer errors have occurred, so d(x, y) t. Suppose z is a codeword with d(z, y) t. Then d(x, z) d(x, y) + d(y, z) 2t, hence z = x. So x is the nearest codeword to y. Corollary Let C be a code with minimum distance d. Then up to d 1 errors can be detected and up to (d 1)/2 errors can be corrected. We have d s + 1 if and only if s d 1, and d 2t + 1 if and only if t (d 1)/2. Let YES=1111 and NO=0000, then one error can be corrected but the two errors in 1001 can t be corrected, it is unclear if the correct word is YES or NO. A (n, M, d)-code is a code of length n, containing M codewords and having minimum distance d. A good (n, M, d)-code has small n (for fast transmission), large M (for a large variety of messages) and large d (to correct many errors). These are conflicting aims. One of the main problems is to optimize one parameter given the other two. The usual version of the problem is to find the largest code M, given the the length n and minimum distance d. Note that M q n. The q-ary repetition code of length n is defined as follows C = {a 1 a 2... a n a 1 =... = a n, a 1 IF q }. It has length n, q codewords and minimal distance n. Note that any q-ary code with minimum distance n can have at most q codewords as any two codewords must differ in all positions. Two q-ary codes are called equivalent if one can be obtained from the other by a combination of operations of the following type (A) a permutation of the position of the code; (B) a permutation of the symbols appearing in a fixed position. The code C = {00100, 00011, 11111, 11000} is equivalent to D = {00000, 01101, 10110, 11011}. Indeed first permute 0 1 in the third position and then interchange positions 2 and 4.
3 3. CODING THEORY 3 If a code is displayed as an M n-matrix whose rows are the code words, then the operations of type (A) correspond to a permutation of the columns of the matrix. The operations of type (B) correspond to re-labeling the symbols in a given column. Observe that the operations do no change the hamming-distance between two codewords. Hence does not change the minimum distance The codes and column and then to the third are equivalent, first apply to the second Lemma Any q-ary (n, M, d)-code over an alphabet containing 0 is equivalent to a q-ary (n, M, d)-code containing Choose a codeword a 1 a 2 a n and sequentially apply the operations of type (B) of the form 0 a j if a j 0 to the code. We will denote with 0 the all zero codeword. From now on we will assume that 0 C. The weight of codeword x, denoted by w(x), is the number of non zero entries. That is, w(x) = d(x, 0). Lemma Suppose that C is a binary code of length n. Let x, y C with w(x) and w(y) even, then d(x, y) is even too. Let x = x 1 x 2 x n and y = y 1 y 2 y n. Let A = {i x i = 1, 1 i n} and B = {i y i = 1, 1 i n}. Then A = w(x), B = w(y) and d(x, y) = (A B)\A B. Hence d(x, y) = w(x) + w(y) 2 A B, which is even. Theorem Suppose d is odd. A binary (n, M, d)-code exists if and only if a binary (n + 1, M, d + 1)- code exists. Suppose C a binary (n + 1, M, d + 1)-code, with d odd. Choose two codewords x and y at minimal distance, that is d(x, y) = d + 1. Choose a position in which x and y differ and delete this position from all codewords. The codewords obtained from x and y are now at distance d and any two codewords will differ in at least d positions. Hence the resulting code is a (n, M, d)-code. Suppose D is a binary (n, M, d)-code, with d odd. For a codeword x D, with x = x 1 x 2 x n we define ˆx = x 1 x 2 x n x n+1, where x n+1 w(x) (mod 2). Let ˆD be the code of length n + 1 defined as follows ˆD = {ˆx x D}. Clearly d d( ˆD) d + 1. Observe that w(ˆx) is even for all ˆx ˆD. By the previous lemma the distance between two codewords will be even. Hence d( ˆD) will be even too. Hence ˆD is a binary (n + 1, M, d + 1)-code. Consider the Fano plane, that is the geometry with 7 points and 7 lines such that any two points are on a unique line and any two lines meet in a unique point. Let A be the incidence matrix of the Fano plane (rows indexed by the points, columns by the lines) and B the matrix obtained from A by swapping 0 1. Let C be the code consisting of the rows of A, rows of B, the all 0 vector and the all 1 vector. The codewords are
4 3. CODING THEORY 4 { rows of A and rows of B This code has minimum distance 3. Hence is a binary (7, 16, 3)-code. The all zero vector and the first row of A are at minimal distance and differ in the first entry. Deleting the first entry of all vectors gives a binary (6, 16, 2)-code Linear Codes In this section V (n, q) denotes the vector space of dimension n over the field IF q, where vectors will be written as row-vectors. Thus V (n, q) = {(x 1, x 2,..., x n ) x 1, x 2,... x n IF q } A vector x = (x 1, x 2,..., x n ) will often simply written as x 1 x 2 x n. A linear code C is a subspace of V (n, q). That is 1. (0,..., 0) C; 2. If x, y C, then x + y C; 3. If x C and a IF q, then ax C. If C has dimension k, then the linear code C is called a [n, k]-code. If it has minimum distance d it is also called a [n, k, d]-code. So a q-ary [n, k, d]-code is a q-ary (n, q k, d)-code. If C is a linear code, then the weight of C, denoted by w(c), is the smallest of the weights of a non-zero code words. That is, w(c) = min {w(x) x C, x 0}. Lemma Let x, y V (n, q). Then d(x, y) = w(x y). The vector x y has a non zero entry precisely on those places where x and y differ. Lemma Let C be a linear code. Then d(c) = w(c). Let x and y be two codewords with d(x, y) = d(c). Then d(c) = d(x, y) = w(x y) w(c), since x y C. On the other hand, for some codeword z we have w(c) = w(z) = d(z, 0) d(c), since 0 C. Hence d(c) = w(c) A k n matrix whose rows form a basis of a linear [n, k]-code is called a generator matrix for the code.
5 3. CODING THEORY 5 The code constructed from the Fano plane is a [7, 4]-code with generator matrix G = The notion of equivalence between linear codes is slightly different from the one defined before. The second operation on the codewords is more restrictive. Two linear q-ary codes are called equivalent if the one can be obtained from the other by combining operations of the following types (A.) permutations of the positions of the code; (B.) multiplication of the symbols appearing in a fixed position by a non-zero element of IF q. Theorem Two k n matrices generate equivalent linear [n, k]-codes over IF q if one matrix can be obtained from the other by a sequence of operations of the following types: (R1) Permutation of rows. (R2) Multiplication of a row by a non-zero scalar. (R3) Addition of a scalar multiple of one row to another row. (C1) Permutation of columns. (C2) Multiplication of a column by a non-zero scalar. The row operations (R1), (R2) and (R3) preserve the subspace C and simply replace one basis of C by another. The operations (C1) and (C2) convert the generator matrix to one of an equivalent code. Theorem Let G be a generator matrix of an [n, k]-code. Then by performing operations of the type (R1), (R2), (R3), (C1) and (C2), G can be transformed into standard type [I k A] where I k is the identity matrix and A a k (n k) matrix. Note that n k. Using row operations (R1), (R2) and (R3) we can transform G into reduced echelon form and then use (C1) to move the columns containing the pivots to the left. On the vector space V (n, q) we define an inner-product. Let x, y V (n, q) with x = x 1 x 2 x n and y = y 1 y 2 y n, then the inner-product of x and y is defined by x y = x 1 y 1 + x 2 y x n y n. If x y = 0, then the vectors are called orthogonal. For a matrix A, the transposed will be denoted by A T. Let C be a [n, k]-code. The dual code C is defined as the set of vectors of V (n, q) that are orthogonal to every codeword of C, that is C = {x V (n, q) x y = 0 for all y C}.
6 3. CODING THEORY 6 Lemma Suppose C is a [n, k]-code with generator matrix G. Let x V (n, q). Then x C if and only if xg T = 0. That is, if and only if x is orthogonal to all the rows of G. Note that the rows of G generate the code. So a vector is orthogonal to all codewords in C if and only if it is orthogonal to each row of G. Theorem Suppose C is a [n, k]-code. Then C is a linear [n, n k]-code and (C ) = C. This can be shown using arguments of linear algebra. Let C be an [n, k]-code. A parity-check matrix H for C is a generator matrix of C. Thus H is an (n k) n matrix satisfying GH T = O k,n k, where O k,n k is the all 0 matrix. A parity-check matrix H is said to be in standard form if H = [B I n k ]. Since (C ) = C it follows that the code C can also be described via a parity-check matrix, as C = {x V (n, q) xh T = 0}. Theorem Let C be an [n, k]-code with generator matrix G = [I k A] in standard form. Then a parity check-matrix for C is H = [ A T I n k ]. Indeed the matrix H has the right size and [I k A]([ A T I n k ]) T = Coding and syndrome decoding of linear codes Let C be an [n, k]-code over IF q with generator matrix G. We identify messages with vectors of V (k, q). Suppose H is a parity check matrix for an [n, k]-code C. Then for any vector y V (n, q) the row vector S(y) = yh T, which is of length n k, is called the syndrome of y. Observe that S(y) = 0 if and only if y C. Let z V (n, k), then the C-coset of z is defined as z + C = {z + x x C}. Lemma Suppose C is an [n, k]-code. Then (i) every vector of V (n, q) is in some C-coset. (ii) every coset contains exactly q k vectors. (iii) two cosets are either disjoint or coincide. Straight forward. The lemma tells us that there are q n k different C-cosets in V (n, k). In the following lemma we will see that the syndrome is a way to decide quickly if two vectors give rise to the same coset. Lemma Let x, y V (n, k). Then x + C = y + C if and only if S(x) = S(y).
7 3. CODING THEORY 7 We have x+c = y +C if and only if x y C. But x y C if and only if (x y)h T = 0. Which holds if and only if xh T = yh T. That is, if and only if S(x) = S(y). Let x + C be a coset. Among the vectors in x + C we choose a vector z such that the weight is minimal. If the choice of a vector of minimal weight in the coset is not unique we choose z to be one of them. We have w(z) w(y) for all y x + C. The vector z is called the coset leader of the coset z + C. Observe that if w(c) = d, then any non-zero vector of C has at least d non-zero entries. So if y is a vector with w(y) < d 2, then any vector of y + C different from y has at least d 2 non zero entries. hence y is a coset leader of y + C. Given a [n, k]-code we first produce a table of coset leaders 0, a 1, a 2,..., a s, where s = q n k 1, together with their syndromes S(0), S(a 1 ), S(a 2 ),..., S(a s ). This table is called the syndrome lookup table. Encoding A message x = x 1 x 2 x k is encoded by multiplying x on the right with G, that is, the encoded message is xg. Note that this is a vector of length n and is a linear combination of the rows of G, hence a code word. To obtain the message x from a given codeword y, one needs to solve the system of linear equations xg = y. In case G is in standard form the encoding gets even simpler. Since G is of the form [I k A] and x = x 1 x 2 x k, we have xg = y 1 y 2 y k y k+1 y n, where y i = x i for 1 i k and y k+j = a ij x j for 1 j n k. The digits y 1 y 2 y k are called the message digits and the digits y k+1 y n are the check digits. The check digits are added to the message to give protection against noise. Note that y k+1 y n = xa. Syndrome decoding The decoding procedure is as follows: 1. For a received vector y we calculate the syndrome S(y) = yh T. 2. In the syndrome look-up table locate S(y) and the corresponding coset leader z. 3. Correct y as y z. 4. y z is a code word, compute the corresponding message from it. Suppose a codeword x is sent through a noisy channel and the vector received is y. We define the error vector e to be e = y x. Now we have y = x + e. The decoding problem now becomes given y to find e and subtract it from y to obtain x. Note that e y + C, for x is a codeword. Hence e z + C as y + C = z + C. If the error was small then the weight w(e) is small and so it is likely that e = z and thus y z = x. In particular, if w(e) < w(c) 2, then e is the vector of smallest weight in e + C, thus e is the coset leader of the coset of syndrome S(e) = S(y). Hence e = z, and so the procedure corrects up to w(c) 1 2 errors. If G is in standard form, then the message is the first k digits of y z Binary Hamming codes In this subsection we briefly discuss binary Hamming codes. It should be noted that these codes also exists over any finite field but we will only study the case where the field is IF 2, the field with two elements.
8 3. CODING THEORY 8 Let r be a positive integer, and H be the r (2 r 1) matrix whose columns are the distinct non-zero vectors of V (r, 2). The code having H as parity-check matrix is called the binary Hamming code and is denoted by Ham(r, 2). Since the columns can be taken in any order, the code Ham(r, 2) is any of a number of equivalent codes. Let r = 2, then if we choose choose H and G in standard form: ( ) H = and G = ( ) Hence Ham(2, 2) is just the binary triple repetition code. Theorem The binary Hamming code Ham(r, 2), with r 2, is a [2 r 1, 2 r 1 r]-code and has minimum distance 3, hence is single-error correcting. By definition the dual code Ham(r, 2) is a [2 r 1, r]-code, hence Ham(2, r) is a [2 r 1, 2 r 1 r]-code. Since Ham(2, r) is a linear code the minimum weight is equal to the minimum distance. We show that there are no codewords of weight 1 or 2, but there are codewords of weight 3. Suppose that x is a codeword of weight 1. Then x = , with an 1 in the i-th place. Since xh T = 0, we have that the i-th column of H is the all-zero vector, a contradiction. Suppose that x is a codeword of weight 2. Then x = , with an 1 in the i-th and j-th place. Since xh T = 0, we have that the sum of the i-th and j-the column of H is the all-zero vector. Since these are vectors of V (r, 2) it means that i-th and j-the column of H are the same, a contradiction. Remains to show that there are codewords of weight 3. We can suppose that the first 3 rows of H T are 0 001, and Showing that is a codeword. The code has k = 2 r r 1, and n = 2 r 1, so there are 2 n k = 2 r cosets. The vectors of weight at most one of V (n, 2) are coset leaders, since there are n + 1 = 2 r of them they are all the coset leaders. The syndrome of the vector e j = , with a 1 on place j is H T, which is the transpose of the j-th column of H. If the columns are arranged in order of increasing binary numbers (that is the j-the column of H is the binary representation of j), then the syndrome of the coset leader e j is the binary representation of j. The decoding algorithm becomes very nice: 1. For a received vector y we calculate the syndrome S(y) = yh T. 2. If S(y) = 0, then y is a codeword and no error was made. 3. If S(y) 0, then S(y) gives the binary representation of the position in which the error was made, and so the error can be corrected. Consider Ham(3, 2) with parity-check matrix H = If y = , then S(y) = 110, which is 6. The error is in place 6 and we correct y to the codeword ,
9 3. CODING THEORY Cyclic codes A code C is called cyclic if 1.) C is a linear code; 2.) any cyclic shift of a codeword is also a codeword, that is, if a 0 a 1 a n 1 is a codeword, then so is a n 1 a 0 a 1 a n 2. The code constructed from the Fano plane is cyclic. When considering cyclic codes we number the coordinate positions 0, 1,..., n 1. This because we will identify the codewords with polynomials. Let F = IF q and f(x) = X n 1 F [X]. We will consider the ring R n = F [X]/(f), a ring of q n elements. In R n we have that X n = 1. A vector a 0 a 1 a n 1 V (n, q) will be identified with the polynomial a 0 + a 1 X + + a n 1 X n 1. Adding vectors in V (n, q) now corresponds to adding the corresponding polynomials in R n. The cyclic shift a 0 a 1 a n 1 a n 1 a 0 a 1 a n 2 corresponds to multiplying the polynomial with X. Lemma A code C in R n is a cyclic code if and only if C satisfies the following two conditions (i) if a(x), b(x) C, then a(x) + b(x) C. (ii) if a(x) C and r(x) R n, then r(x)a(x) C. Suppose C is a cyclic code in R n. Then C is linear so (i) holds. Let a(x) C. Since the multiplication with X corresponds to a cyclic shift the multiplication with X i corresponds to a cyclic shift in i positions and since C is cyclic we have that X i a(x) C. Since C is linear we also have λx i a(x) C, for all λ IF q. If r(x) = r 0 + r 1 X + + r n 1 X n 1, then r(x)a(x) = r 0 a(x) + r 1 Xa(x) + + r n 1 X n 1 a(x). Since each summand is in C we have that (ii) holds. Suppose (i) and (ii) hold. Taking r(x) a scalar implies that the code is linear. Taking r(x) = X shows that C is cyclic. There is an easy way to describe and construct cyclic codes. Let f(x) R n, we define the set of all multiples of f(x) in R n. f(x) = {r(x)f(x) r(x) R n } Theorem For any f(x) R n, the set f(x) is a cyclic code: it is called the cyclic code generated by f(x). This follows immediately from the previous lemma. The following theorem shows that all cyclic codes can be constructed that way. Theorem Let C be a non-zero cyclic code in R n. Then (i) there exists a unique monic polynomial g(x) of smallest degree in C; (ii) g(x) = C (iii) in F [X] the polynomial g(x) is a divisor of X n 1
10 3. CODING THEORY 10 (i) Suppose g(x) and h(x) are both monic polynomials in C of smallest degree. Then g(x) h(x) C. If g(x) h(x), then the degree of g(x) h(x) is smaller then that of g(x) and a suitable multiple of g(x) h(x) is monic and will be in C, a contradiction. Thus g(x) = h(x). (ii) Suppose a(x) C. View a(x) as a polynomial in F [X]. Then a(x) = q(x)g(x) + r(x), with deg(r(x)) < deg(g(x)) or r = 0. Since C is cyclic we have r(x) C, and by the minimality of the degree of g we have r = 0. (iii) By the division algorithm X n 1 = q(x)g(x) + r(x), with deg(r(x)) < deg(g(x)) or r = 0. In R n we have r(x) = q(x)g(x), hence r(x) C. By the minimality of the degree of g(x) we have r(x) = 0. The code constructed form the Fano plane is cyclic. The polynomial of minimal degree is 1+X 2 +X 3, corresponding to the fourth row of A. It is the generating polynomial. The rows of A are obtained by multiplying with monomials. The all one vector is obtained by multiplying the polynomial by itself and the rows of B are obtained by multiplying with X + 1 to obtain the last row from B and then with monomials to obtain the other rows of B. In IF 2 [X], we have X 3 1 = (X 1)(X 2 + X + 1). Thus there are 4 cyclic codes in V (3, 2): Generator Corresponding polynomial Code in R 3 code in V (3, 2) 1 all of R 3 all of V (3, 2) X + 1 {0, 1 + X, X + X 2, 1 + X 2 } {000, 110, 011, 101} X 2 + X + 1 {0, 1 + X + X 2 } {000, 111} X 3 1 {0} {000} The monic polynomial of least degree is called the generator polynomial of C. Theorem Suppose C is a cyclic code with generator polynomial g(x) = g 0 + g 1 X + + g r X r of degree r. Then g 0 0, dim(c) = n r and a generator matrix for C is g 0 g 1 g 2 g r g 0 g 1 g 2 g r g 0 g 1 g 2 g r g 0 g 1 g 2 g r Suppose g 0 = 0, then X n 1 g(x) = X 1 g(x) is a codeword of degree r 1, contradicting the minimality of the degree of g(x). The n r rows of the matrix are linear independent, as the matrix is in echelon form, and are code words. It suffices to show that they generate the code. Let a(x) be a codeword, we may assume that deg(a(x)) < n. Since a(x) = g(x)q(x), for some q(x) R n and deg(a(x)) < n, this equality also folds in IF q [X]. It follows that deg(q(x)) < n r.
11 3. CODING THEORY 11 Let q(x) = q 0 +q 1 X + +q n r 1 X n r 1, then a(x) = q 0 g(x)+q 1 Xg(x)+ +q n r 1 X n r 1 g(x), which gives the desired linear combination. Let C be cyclic [n, k]-code with generator polynomial g(x), then x n 1 = g(x)h(x) for some monic polynomial h(x). Since g(x) has degree n k, h(x) has degree k. This polynomial h(x) is called the check polynomial of C. Theorem Suppose C is a cyclic code in R n with generator polynomial g(x) and check polynomial h(x). Then an element c(x) of R n is a codeword of C if and only if c(x)h(x) = 0. Observe that in R n we have g(x)h(x) = 0. If c(x) C, then c(x) = a(x)g(x), for some a(x) R n, hence c(x)h(x) = a(x)g(x)h(x) = 0. On the other hand, by the devision algorithm, c(x) = q(x)g(x) + r(x) with deg(r(x)) < deg(g(x)) or r(x) = 0. If c(x)h(x) = 0, then r(x)h(x) = 0, so viewed as polynomials in F [X], r(x)h(x) is a multiple of X n 1. If r(x) 0, then deg(r(x)h(x)) < n k+k = n, contradicting the fact that it is a multiple of X n 1. Hence r(x) = 0 and c(x) g(x). Theorem Suppose C is a cyclic [n, k]-code with check polynomial Then h(x) = h 0 + h 1 X + + h k X k. (i) a parity-check matrix for C is h k h k 1 h h k h k 1 h h k h k 1 h 0. (ii) C is a cyclic code generated by the polynomial h(x) = h k + h k 1 X + + h 0 X k. A polynomial c(x) = c 0 + c 1 X + + c n 1 X n 1 is a codeword if and only if c(x)h(x) = 0. In particular, in c(x)h(x) = 0 the coefficient in front of X k, X k+1,... X n must be zero. Hence c 0 c 1... c n must be orthogonal to h k h k 1 h and its cyclic shifts. This shows that the rows of the above matrix are codewords of C. Since h k 0 these rows are linear independent. Thus generate a subspace of C of dimension n k. But since the dimension of C is n k, these rows must be a basis of C. Hence it is a parity-check matrix. Observe that if the polynomial h(x) is a divisor of X n 1, then the generator matrix of h(x) is the above matrix, which is the generator matrix of C. So h(x) is the generator polynomial of C. We need to show that h(x) is a divisor of X n 1. Note that h(x) = X k h(x 1 ) and X n k g(x 1 ) are polynomials. Moreover (X k h(x 1 ))(X n k g(x 1 )) = X n (X n 1) = 1 X n, showing that h(x) is a divisor of X n 1. In IF 2 [X] we have that X 23 1 = (X 1)(X 11 + X 10 + X 6 + X 5 + X 4 + X 2 + 1)(X 11 + X 9 + X 7 + X 6 + X 5 + X + 1) is a factorization into irreducible polynomials. The cyclic code generated by X 11 + X 10 + X 6 + X 5 + X 4 + X is a [23, 12]-code with minimum distance 7. It is known as the binary Golay code.
7.1 Definitions and Generator Polynomials
Chapter 7 Cyclic Codes Lecture 21, March 29, 2011 7.1 Definitions and Generator Polynomials Cyclic codes are an important class of linear codes for which the encoding and decoding can be efficiently implemented
More informationMATH32031: Coding Theory Part 15: Summary
MATH32031: Coding Theory Part 15: Summary 1 The initial problem The main goal of coding theory is to develop techniques which permit the detection of errors in the transmission of information and, if necessary,
More informationLinear Cyclic Codes. Polynomial Word 1 + x + x x 4 + x 5 + x x + x f(x) = q(x)h(x) + r(x),
Coding Theory Massoud Malek Linear Cyclic Codes Polynomial and Words A polynomial of degree n over IK is a polynomial p(x) = a 0 + a 1 + + a n 1 x n 1 + a n x n, where the coefficients a 1, a 2,, a n are
More informationECEN 604: Channel Coding for Communications
ECEN 604: Channel Coding for Communications Lecture: Introduction to Cyclic Codes Henry D. Pfister Department of Electrical and Computer Engineering Texas A&M University ECEN 604: Channel Coding for Communications
More informationCyclic codes: overview
Cyclic codes: overview EE 387, Notes 14, Handout #22 A linear block code is cyclic if the cyclic shift of a codeword is a codeword. Cyclic codes have many advantages. Elegant algebraic descriptions: c(x)
More informationLinear Cyclic Codes. Polynomial Word 1 + x + x x 4 + x 5 + x x + x
Coding Theory Massoud Malek Linear Cyclic Codes Polynomial and Words A polynomial of degree n over IK is a polynomial p(x) = a 0 + a 1 x + + a n 1 x n 1 + a n x n, where the coefficients a 0, a 1, a 2,,
More informationMATH3302 Coding Theory Problem Set The following ISBN was received with a smudge. What is the missing digit? x9139 9
Problem Set 1 These questions are based on the material in Section 1: Introduction to coding theory. You do not need to submit your answers to any of these questions. 1. The following ISBN was received
More informationMATH 291T CODING THEORY
California State University, Fresno MATH 291T CODING THEORY Spring 2009 Instructor : Stefaan Delcroix Chapter 1 Introduction to Error-Correcting Codes It happens quite often that a message becomes corrupt
More informationMATH Examination for the Module MATH-3152 (May 2009) Coding Theory. Time allowed: 2 hours. S = q
MATH-315201 This question paper consists of 6 printed pages, each of which is identified by the reference MATH-3152 Only approved basic scientific calculators may be used. c UNIVERSITY OF LEEDS Examination
More informationGenerator 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.
Cyclic Codes II Generator Matrix We would now like to consider how the ideas we have previously discussed for linear codes are interpreted in this polynomial version of cyclic codes. Theorem 6: If the
More informationOutline. MSRI-UP 2009 Coding Theory Seminar, Week 2. The definition. Link to polynomials
Outline MSRI-UP 2009 Coding Theory Seminar, Week 2 John B. Little Department of Mathematics and Computer Science College of the Holy Cross Cyclic Codes Polynomial Algebra More on cyclic codes Finite fields
More informationCoding Theory: Linear-Error Correcting Codes Anna Dovzhik Math 420: Advanced Linear Algebra Spring 2014
Anna Dovzhik 1 Coding Theory: Linear-Error Correcting Codes Anna Dovzhik Math 420: Advanced Linear Algebra Spring 2014 Sharing data across channels, such as satellite, television, or compact disc, often
More informationMATH 291T CODING THEORY
California State University, Fresno MATH 291T CODING THEORY Fall 2011 Instructor : Stefaan Delcroix Contents 1 Introduction to Error-Correcting Codes 3 2 Basic Concepts and Properties 6 2.1 Definitions....................................
More information: Coding Theory. Notes by Assoc. Prof. Dr. Patanee Udomkavanich October 30, upattane
2301532 : Coding Theory Notes by Assoc. Prof. Dr. Patanee Udomkavanich October 30, 2006 http://pioneer.chula.ac.th/ upattane Chapter 1 Error detection, correction and decoding 1.1 Basic definitions and
More informationChapter 5. Cyclic Codes
Wireless Information Transmission System Lab. Chapter 5 Cyclic Codes Institute of Communications Engineering National Sun Yat-sen University Outlines Description of Cyclic Codes Generator and Parity-Check
More informationMATH 433 Applied Algebra Lecture 21: Linear codes (continued). Classification of groups.
MATH 433 Applied Algebra Lecture 21: Linear codes (continued). Classification of groups. Binary codes Let us assume that a message to be transmitted is in binary form. That is, it is a word in the alphabet
More informationx n k m(x) ) Codewords can be characterized by (and errors detected by): c(x) mod g(x) = 0 c(x)h(x) = 0 mod (x n 1)
Cyclic codes: review EE 387, Notes 15, Handout #26 A cyclic code is a LBC such that every cyclic shift of a codeword is a codeword. A cyclic code has generator polynomial g(x) that is a divisor of every
More informationArrangements, matroids and codes
Arrangements, matroids and codes first lecture Ruud Pellikaan joint work with Relinde Jurrius ACAGM summer school Leuven Belgium, 18 July 2011 References 2/43 1. Codes, arrangements and matroids by Relinde
More information11 Minimal Distance and the Parity Check Matrix
MATH32031: Coding Theory Part 12: Hamming Codes 11 Minimal Distance and the Parity Check Matrix Theorem 23 (Distance Theorem for Linear Codes) Let C be an [n, k] F q -code with parity check matrix H. Then
More informationThe extended Golay code
The extended Golay code N. E. Straathof July 6, 2014 Master thesis Mathematics Supervisor: Dr R. R. J. Bocklandt Korteweg-de Vries Instituut voor Wiskunde Faculteit der Natuurwetenschappen, Wiskunde en
More informationMathematics Department
Mathematics Department Matthew Pressland Room 7.355 V57 WT 27/8 Advanced Higher Mathematics for INFOTECH Exercise Sheet 2. Let C F 6 3 be the linear code defined by the generator matrix G = 2 2 (a) Find
More informationA Brief Encounter with Linear Codes
Boise State University ScholarWorks Mathematics Undergraduate Theses Department of Mathematics 8-2014 A Brief Encounter with Linear Codes Brent El-Bakri Boise State University, brentelbakri@boisestate.edu
More informationHamming codes and simplex codes ( )
Chapter 6 Hamming codes and simplex codes (2018-03-17) Synopsis. Hamming codes are essentially the first non-trivial family of codes that we shall meet. We start by proving the Distance Theorem for linear
More informationObjective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them.
ECE 7670 Lecture 5 Cyclic codes Objective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them. Reading: Chapter 5. 1 Cyclic codes Definition
More informationError-Correcting Codes
Error-Correcting Codes HMC Algebraic Geometry Final Project Dmitri Skjorshammer December 14, 2010 1 Introduction Transmission of information takes place over noisy signals. This is the case in satellite
More informationMATH3302. Coding and Cryptography. Coding Theory
MATH3302 Coding and Cryptography Coding Theory 2010 Contents 1 Introduction to coding theory 2 1.1 Introduction.......................................... 2 1.2 Basic definitions and assumptions..............................
More informationCyclic codes. Vahid Meghdadi Reference: Error Correction Coding by Todd K. Moon. February 2008
Cyclic codes Vahid Meghdadi Reference: Error Correction Coding by Todd K. Moon February 2008 1 Definitions Definition 1. A ring < R, +,. > is a set R with two binary operation + (addition) and. (multiplication)
More informationA family Of Cyclic Codes Over Finite Chain Rings
The Islamic University of Gaza Deanery of Higher Studies Faculty of Science Department of Mathematics A family Of Cyclic Codes Over Finite Chain Rings Presented by: Sanaa Yusuf Sabouh Supervised by: Dr.:
More informationCoding Theory and Applications. Solved Exercises and Problems of Cyclic Codes. Enes Pasalic University of Primorska Koper, 2013
Coding Theory and Applications Solved Exercises and Problems of Cyclic Codes Enes Pasalic University of Primorska Koper, 2013 Contents 1 Preface 3 2 Problems 4 2 1 Preface This is a collection of solved
More informationMT5821 Advanced Combinatorics
MT5821 Advanced Combinatorics 1 Error-correcting codes In this section of the notes, we have a quick look at coding theory. After a motivating introduction, we discuss the weight enumerator of a code,
More informationKnow the meaning of the basic concepts: ring, field, characteristic of a ring, the ring of polynomials R[x].
The second exam will be on Friday, October 28, 2. It will cover Sections.7,.8, 3., 3.2, 3.4 (except 3.4.), 4. and 4.2 plus the handout on calculation of high powers of an integer modulo n via successive
More informationELEC 519A Selected Topics in Digital Communications: Information Theory. Hamming Codes and Bounds on Codes
ELEC 519A Selected Topics in Digital Communications: Information Theory Hamming Codes and Bounds on Codes Single Error Correcting Codes 2 Hamming Codes (7,4,3) Hamming code 1 0 0 0 0 1 1 0 1 0 0 1 0 1
More informationChapter 3 Linear Block Codes
Wireless Information Transmission System Lab. Chapter 3 Linear Block Codes Institute of Communications Engineering National Sun Yat-sen University Outlines Introduction to linear block codes Syndrome and
More informationChapter 2. Error Correcting Codes. 2.1 Basic Notions
Chapter 2 Error Correcting Codes The identification number schemes we discussed in the previous chapter give us the ability to determine if an error has been made in recording or transmitting information.
More informationInformation Theory. Lecture 7
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
More informationMATH/MTHE 406 Homework Assignment 2 due date: October 17, 2016
MATH/MTHE 406 Homework Assignment 2 due date: October 17, 2016 Notation: We will use the notations x 1 x 2 x n and also (x 1, x 2,, x n ) to denote a vector x F n where F is a finite field. 1. [20=6+5+9]
More informationAlgebra Review 2. 1 Fields. A field is an extension of the concept of a group.
Algebra Review 2 1 Fields A field is an extension of the concept of a group. Definition 1. A field (F, +,, 0 F, 1 F ) is a set F together with two binary operations (+, ) on F such that the following conditions
More informationFault Tolerance & Reliability CDA Chapter 2 Cyclic Polynomial Codes
Fault Tolerance & Reliability CDA 5140 Chapter 2 Cyclic Polynomial Codes - cylic code: special type of parity check code such that every cyclic shift of codeword is a codeword - for example, if (c n-1,
More informationB. Cyclic Codes. Primitive polynomials are the generator polynomials of cyclic codes.
B. Cyclic Codes A cyclic code is a linear block code with the further property that a shift of a codeword results in another codeword. These are based on polynomials whose elements are coefficients from
More informationPolynomials. Chapter 4
Chapter 4 Polynomials In this Chapter we shall see that everything we did with integers in the last Chapter we can also do with polynomials. Fix a field F (e.g. F = Q, R, C or Z/(p) for a prime p). Notation
More informationMATH 433 Applied Algebra Lecture 22: Review for Exam 2.
MATH 433 Applied Algebra Lecture 22: Review for Exam 2. Topics for Exam 2 Permutations Cycles, transpositions Cycle decomposition of a permutation Order of a permutation Sign of a permutation Symmetric
More informationCS6304 / Analog and Digital Communication UNIT IV - SOURCE AND ERROR CONTROL CODING PART A 1. What is the use of error control coding? The main use of error control coding is to reduce the overall probability
More informationMAS309 Coding theory
MAS309 Coding theory Matthew Fayers January March 2008 This is a set of notes which is supposed to augment your own notes for the Coding Theory course They were written by Matthew Fayers, and very lightly
More informationRings. EE 387, Notes 7, Handout #10
Rings EE 387, Notes 7, Handout #10 Definition: A ring is a set R with binary operations, + and, that satisfy the following axioms: 1. (R, +) is a commutative group (five axioms) 2. Associative law for
More informationFinite Mathematics. Nik Ruškuc and Colva M. Roney-Dougal
Finite Mathematics Nik Ruškuc and Colva M. Roney-Dougal September 19, 2011 Contents 1 Introduction 3 1 About the course............................. 3 2 A review of some algebraic structures.................
More informationCyclic Redundancy Check Codes
Cyclic Redundancy Check Codes Lectures No. 17 and 18 Dr. Aoife Moloney School of Electronics and Communications Dublin Institute of Technology Overview These lectures will look at the following: Cyclic
More informationPart III. Cyclic codes
Part III Cyclic codes CHAPTER 3: CYCLIC CODES, CHANNEL CODING, LIST DECODING Cyclic codes are very special linear codes. They are of large interest and importance for several reasons: They posses a rich
More informationMath 512 Syllabus Spring 2017, LIU Post
Week Class Date Material Math 512 Syllabus Spring 2017, LIU Post 1 1/23 ISBN, error-detecting codes HW: Exercises 1.1, 1.3, 1.5, 1.8, 1.14, 1.15 If x, y satisfy ISBN-10 check, then so does x + y. 2 1/30
More informationHomework 8 Solutions to Selected Problems
Homework 8 Solutions to Selected Problems June 7, 01 1 Chapter 17, Problem Let f(x D[x] and suppose f(x is reducible in D[x]. That is, there exist polynomials g(x and h(x in D[x] such that g(x and h(x
More informationVector spaces. EE 387, Notes 8, Handout #12
Vector spaces EE 387, Notes 8, Handout #12 A vector space V of vectors over a field F of scalars is a set with a binary operator + on V and a scalar-vector product satisfying these axioms: 1. (V, +) is
More informationEE 229B ERROR CONTROL CODING Spring 2005
EE 229B ERROR CONTROL CODING Spring 2005 Solutions for Homework 1 1. Is there room? Prove or disprove : There is a (12,7) binary linear code with d min = 5. If there were a (12,7) binary linear code with
More informationCombinatória e Teoria de Códigos Exercises from the notes. Chapter 1
Combinatória e Teoria de Códigos Exercises from the notes Chapter 1 1.1. The following binary word 01111000000?001110000?00110011001010111000000000?01110 encodes a date. The encoding method used consisted
More informationCoding Theory and Applications. Linear Codes. Enes Pasalic University of Primorska Koper, 2013
Coding Theory and Applications Linear Codes Enes Pasalic University of Primorska Koper, 2013 2 Contents 1 Preface 5 2 Shannon theory and coding 7 3 Coding theory 31 4 Decoding of linear codes and MacWilliams
More informationLecture 12. Block Diagram
Lecture 12 Goals Be able to encode using a linear block code Be able to decode a linear block code received over a binary symmetric channel or an additive white Gaussian channel XII-1 Block Diagram Data
More informationLinear Codes and Syndrome Decoding
Linear Codes and Syndrome Decoding These notes are intended to be used as supplementary reading to Sections 6.7 9 of Grimaldi s Discrete and Combinatorial Mathematics. The proofs of the theorems are left
More informationEE512: Error Control Coding
EE512: Error Control Coding Solution for Assignment on Cyclic Codes March 22, 2007 1. A cyclic code, C, is an ideal genarated by its minimal degree polynomial, g(x). C = < g(x) >, = {m(x)g(x) : m(x) is
More informationWe saw in the last chapter that the linear Hamming codes are nontrivial perfect codes.
Chapter 5 Golay Codes Lecture 16, March 10, 2011 We saw in the last chapter that the linear Hamming codes are nontrivial perfect codes. Question. Are there any other nontrivial perfect codes? Answer. Yes,
More information6.1.1 What is channel coding and why do we use it?
Chapter 6 Channel Coding 6.1 Introduction 6.1.1 What is channel coding and why do we use it? Channel coding is the art of adding redundancy to a message in order to make it more robust against noise. It
More informationDuadic Codes over Finite Commutative Rings
The Islamic University of Gaza Faculty of Science Department of Mathematics Duadic Codes over Finite Commutative Rings PRESENTED BY Ikhlas Ibraheem Diab Al-Awar SUPERVISED BY Prof. Mohammed Mahmoud AL-Ashker
More informationNegacyclic and Constacyclic codes over finite chain rings June 29, 2008
Negacyclic and Constacyclic rings codes over finite chain June 29, 2008 THE ISLAMIC UNIVERSITY OF GAZA DEANERY OF HIGHER STUDIES FACULTY OF SCIENCE DEPARTMENT OF MATHEMATICS Negacyclic and Constacyclic
More informationMT361/461/5461 Error Correcting Codes: Preliminary Sheet
MT361/461/5461 Error Correcting Codes: Preliminary Sheet Solutions to this sheet will be posted on Moodle on 14th January so you can check your answers. Please do Question 2 by 14th January. You are welcome
More informationMTH6108 Coding theory
MTH6108 Coding theory Contents 1 Introduction and definitions 2 2 Good codes 6 2.1 The main coding theory problem............................ 6 2.2 The Singleton bound...................................
More informationPolynomials. Henry Liu, 25 November 2004
Introduction Polynomials Henry Liu, 25 November 2004 henryliu@memphis.edu This brief set of notes contains some basic ideas and the most well-known theorems about polynomials. I have not gone into deep
More informationThe Hamming Codes and Delsarte s Linear Programming Bound
The Hamming Codes and Delsarte s Linear Programming Bound by Sky McKinley Under the Astute Tutelage of Professor John S. Caughman, IV A thesis submitted in partial fulfillment of the requirements for the
More informationCyclic codes. I give an example of a shift register with four storage elements and two binary adders.
Good afternoon, gentleman! Today I give you a lecture about cyclic codes. This lecture consists of three parts: I Origin and definition of cyclic codes ;? how to find cyclic codes: The Generator Polynomial
More informationEE 229B ERROR CONTROL CODING Spring 2005
EE 9B ERROR CONTROL CODING Spring 005 Solutions for Homework 1. (Weights of codewords in a cyclic code) Let g(x) be the generator polynomial of a binary cyclic code of length n. (a) Show that if g(x) has
More informationCommunications II Lecture 9: Error Correction Coding. Professor Kin K. Leung EEE and Computing Departments Imperial College London Copyright reserved
Communications II Lecture 9: Error Correction Coding Professor Kin K. Leung EEE and Computing Departments Imperial College London Copyright reserved Outline Introduction Linear block codes Decoding Hamming
More informationPolynomial Rings. i=0
Polynomial Rings 4-15-2018 If R is a ring, the ring of polynomials in x with coefficients in R is denoted R[x]. It consists of all formal sums a i x i. Here a i = 0 for all but finitely many values of
More informationOrthogonal Arrays & Codes
Orthogonal Arrays & Codes Orthogonal Arrays - Redux An orthogonal array of strength t, a t-(v,k,λ)-oa, is a λv t x k array of v symbols, such that in any t columns of the array every one of the possible
More informationOutline 2. 1 Information Theory. 2 Codes. 3 Linear Codes. 4 Hamming Codes. 5 Cyclic Codes *
Outline 2 CDM Finite Fields and Codes 1 Information Theory Klaus Sutner Carnegie Mellon University 44-ffields-codes 2017/12/15 23:16 2 Codes 3 Linear Codes 4 Hamming Codes 5 Cyclic Codes * Claude Elwood
More informationPart I. Cyclic codes and channel codes. CODING, CRYPTOGRAPHY and CRYPTOGRAPHIC PROTOCOLS
CODING, CRYPTOGRAPHY and CRYPTOGRAPHIC PROTOCOLS Part I prof. RNDr. Jozef Gruska, DrSc. Cyclic codes and channel codes Faculty of Informatics Masaryk University October 12, 2016 CHAPTER 3: CYCLIC, STREAM
More information: Error Correcting Codes. November 2017 Lecture 2
03683072: Error Correcting Codes. November 2017 Lecture 2 Polynomial Codes and Cyclic Codes Amnon Ta-Shma and Dean Doron 1 Polynomial Codes Fix a finite field F q. For the purpose of constructing polynomial
More informationBinary Linear Codes G = = [ I 3 B ] , G 4 = None of these matrices are in standard form. Note that the matrix 1 0 0
Coding Theory Massoud Malek Binary Linear Codes Generator and Parity-Check Matrices. A subset C of IK n is called a linear code, if C is a subspace of IK n (i.e., C is closed under addition). A linear
More informationAnswers and Solutions to (Even Numbered) Suggested Exercises in Sections of Grimaldi s Discrete and Combinatorial Mathematics
Answers and Solutions to (Even Numbered) Suggested Exercises in Sections 6.5-6.9 of Grimaldi s Discrete and Combinatorial Mathematics Section 6.5 6.5.2. a. r = = + = c + e. So the error pattern is e =.
More informationELG 5372 Error Control Coding. Lecture 12: Ideals in Rings and Algebraic Description of Cyclic Codes
ELG 5372 Error Control Coding Lecture 12: Ideals in Rings and Algebraic Description of Cyclic Codes Quotient Ring Example + Quotient Ring Example Quotient Ring Recall the quotient ring R={,,, }, where
More informationInformation redundancy
Information redundancy Information redundancy add information to date to tolerate faults error detecting codes error correcting codes data applications communication memory p. 2 - Design of Fault Tolerant
More informationERROR CORRECTING CODES
ERROR CORRECTING CODES To send a message of 0 s and 1 s from my computer on Earth to Mr. Spock s computer on the planet Vulcan we use codes which include redundancy to correct errors. n q Definition. A
More informationSome error-correcting codes and their applications
Chapter 14 Some error-correcting codes and their applications J. D. Key 1 14.1 Introduction In this chapter we describe three types of error-correcting linear codes that have been used in major applications,
More informationSection IV.23. Factorizations of Polynomials over a Field
IV.23 Factorizations of Polynomials 1 Section IV.23. Factorizations of Polynomials over a Field Note. Our experience with classical algebra tells us that finding the zeros of a polynomial is equivalent
More informationSolutions of Exam Coding Theory (2MMC30), 23 June (1.a) Consider the 4 4 matrices as words in F 16
Solutions of Exam Coding Theory (2MMC30), 23 June 2016 (1.a) Consider the 4 4 matrices as words in F 16 2, the binary vector space of dimension 16. C is the code of all binary 4 4 matrices such that the
More informationIntroduction to finite fields
Chapter 7 Introduction to finite fields This chapter provides an introduction to several kinds of abstract algebraic structures, particularly groups, fields, and polynomials. Our primary interest is in
More informationSection 3 Error Correcting Codes (ECC): Fundamentals
Section 3 Error Correcting Codes (ECC): Fundamentals Communication systems and channel models Definition and examples of ECCs Distance For the contents relevant to distance, Lin & Xing s book, Chapter
More informationChapter 7. Error Control Coding. 7.1 Historical background. Mikael Olofsson 2005
Chapter 7 Error Control Coding Mikael Olofsson 2005 We have seen in Chapters 4 through 6 how digital modulation can be used to control error probabilities. This gives us a digital channel that in each
More informationThe Golay codes. Mario de Boer and Ruud Pellikaan
The Golay codes Mario de Boer and Ruud Pellikaan Appeared in Some tapas of computer algebra (A.M. Cohen, H. Cuypers and H. Sterk eds.), Project 7, The Golay codes, pp. 338-347, Springer, Berlin 1999, after
More informationDefinition 2.1. Let w be a word. Then the coset C + w of w is the set {c + w : c C}.
2.4. Coset Decoding i 2.4 Coset Decoding To apply MLD decoding, what we must do, given a received word w, is search through all the codewords to find the codeword c closest to w. This can be a slow and
More informationELEC 405/ELEC 511 Error Control Coding and Sequences. Hamming Codes and the Hamming Bound
ELEC 45/ELEC 5 Error Control Coding and Sequences Hamming Codes and the Hamming Bound Single Error Correcting Codes ELEC 45 2 Hamming Codes One form of the (7,4,3) Hamming code is generated by This is
More informationCHAPTER 14. Ideals and Factor Rings
CHAPTER 14 Ideals and Factor Rings Ideals Definition (Ideal). A subring A of a ring R is called a (two-sided) ideal of R if for every r 2 R and every a 2 A, ra 2 A and ar 2 A. Note. (1) A absorbs elements
More information16.36 Communication Systems Engineering
MIT OpenCourseWare http://ocw.mit.edu 16.36 Communication Systems Engineering Spring 2009 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 16.36: Communication
More informationMATH 431 PART 2: POLYNOMIAL RINGS AND FACTORIZATION
MATH 431 PART 2: POLYNOMIAL RINGS AND FACTORIZATION 1. Polynomial rings (review) Definition 1. A polynomial f(x) with coefficients in a ring R is n f(x) = a i x i = a 0 + a 1 x + a 2 x 2 + + a n x n i=0
More information+ 1 3 x2 2x x3 + 3x 2 + 0x x x2 2x + 3 4
Math 4030-001/Foundations of Algebra/Fall 2017 Polynomials at the Foundations: Rational Coefficients The rational numbers are our first field, meaning that all the laws of arithmetic hold, every number
More informationLecture 7: Polynomial rings
Lecture 7: Polynomial rings Rajat Mittal IIT Kanpur You have seen polynomials many a times till now. The purpose of this lecture is to give a formal treatment to constructing polynomials and the rules
More informationLecture 4: Linear Codes. Copyright G. Caire 88
Lecture 4: Linear Codes Copyright G. Caire 88 Linear codes over F q We let X = F q for some prime power q. Most important case: q =2(binary codes). Without loss of generality, we may represent the information
More informationELEC 405/ELEC 511 Error Control Coding. Hamming Codes and Bounds on Codes
ELEC 405/ELEC 511 Error Control Coding Hamming Codes and Bounds on Codes Single Error Correcting Codes (3,1,3) code (5,2,3) code (6,3,3) code G = rate R=1/3 n-k=2 [ 1 1 1] rate R=2/5 n-k=3 1 0 1 1 0 G
More informationERROR-CORRECTING CODES AND LATIN SQUARES
ERROR-CORRECTING CODES AND LATIN SQUARES Ritu Ahuja Department of Mathematics, Khalsa College for Women, Civil Lines, Ludhiana 141001, Punjab, (India) ABSTRACT Data stored and transmitted in digital form
More informationAbstract Algebra: Chapters 16 and 17
Study polynomials, their factorization, and the construction of fields. Chapter 16 Polynomial Rings Notation Let R be a commutative ring. The ring of polynomials over R in the indeterminate x is the set
More informationLecture 3: Error Correcting Codes
CS 880: Pseudorandomness and Derandomization 1/30/2013 Lecture 3: Error Correcting Codes Instructors: Holger Dell and Dieter van Melkebeek Scribe: Xi Wu In this lecture we review some background on error
More informationNew algebraic decoding method for the (41, 21,9) quadratic residue code
New algebraic decoding method for the (41, 21,9) quadratic residue code Mohammed M. Al-Ashker a, Ramez Al.Shorbassi b a Department of Mathematics Islamic University of Gaza, Palestine b Ministry of education,
More informationThe BCH Bound. Background. Parity Check Matrix for BCH Code. Minimum Distance of Cyclic Codes
S-723410 BCH and Reed-Solomon Codes 1 S-723410 BCH and Reed-Solomon Codes 3 Background The algebraic structure of linear codes and, in particular, cyclic linear codes, enables efficient encoding and decoding
More information: Error Correcting Codes. October 2017 Lecture 1
03683072: Error Correcting Codes. October 2017 Lecture 1 First Definitions and Basic Codes Amnon Ta-Shma and Dean Doron 1 Error Correcting Codes Basics Definition 1. An (n, K, d) q code is a subset of
More informationError Correction Review
Error Correction Review A single overall parity-check equation detects single errors. Hamming codes used m equations to correct one error in 2 m 1 bits. We can use nonbinary equations if we create symbols
More information