Homework 4
Transcription
Homework 4
MTAT.05.082: Introduction to Coding Theory University of Tartu Homework 4 Solution It is possible to collect up to 110 points in this homework. 1. Show that the linear [n, k, d] code C over F is MDS if and only if every set of k columns in its generator matrix is linearly independent. Reminder. Maximum distance separable code is a code that achieves the Singleton bound with equality. Solution. Consider dual code C ⊥ [n, n − k, d⊥ ]. We know already that a code is MDS if and only if its dual is MDS. Therefore C ⊥ is MDS. In other words, d⊥ = n − (n − k) + 1 = k + 1. We know that code C ⊥ has a minimum distance d⊥ if and only if any set of up to d⊥ − 1 columns in its parity-check matrix are linearly independent1 . But its parity-check matrix is exactly a generator matrix of original code C. The last point to note is that “every set of k columns is linearly independent” and “every set of up to k columns is linearly independent” are equivalent. Indeed, if we take k linearly independent columns and remove some of them, the rest will be still linearly independent. 2. Show that the minimum distance of a perfect code must be odd. Reminder. Perfect code is a code that achieves the sphere-packing bound with equality. Solution. Assume the opposite, i.e. that there exists a perfect [n, k, d] code over F with even minimum distance d = 2t for some t ∈ N. Since the code is perfect, the whole space F is perfectly split into spheres of radius b d−1 2 c = b 2t−1 c = t−1 with centres in codewords of the code. Consider some codeword c. Let us make 2 changes at some t coordinates in c and call the obtained vector u. Obviously d(u, c) = t. On the one hand, u is not a codeword, because every two codewords in the code are at the distance of at least d and d = 2t > t. On the other hand, u is far enough from c so that it does not belong anymore to a sphere of radius t − 1 with a centre at c, i.e. u ∈ / St−1 (c). But again, since the code is perfect, u should belong to some sphere, say, with a center at c0 , i.e. u ∈ St−1 (c0 ) and therefore d(u, c0 ) ≤ t − 1. But using triangle inequality we obtain: d(c, c0 ) ≤ d(c, u) + d(u, c0 ) = t + d(u, c0 ) ≤ t + (t − 1) = 2t − 1 = d − 1 < d. 1 And d⊥ − 1 = k. So we get the contradiction, that two codewords are at the distance less then minimum distance. This contradiction proves the statement of the problem. 3. The soccer betting form contains a list of 13 games. There are three possible outcomes for each game: “the first team won”, “the second team won” and “draw”. Each betting form allows to chose one outcome for each game. In order to win a big prize, it is required to guess correctly the results of at least 12 games. What is the minimum number of forms Alex has to fill in to ensure that he wins a big prize? Justify your answer. Hint. There exists a perfect Hamming code with parameters [13, 10, 3] over F3 . Solution. Every filled in betting form could be viewed as a vector in F13 3 (say, 1 denotes “the first team won”, 2 denotes “the second team won” and 0 denotes “draw”). The outcome of all games is also a vector in F13 3 with the same notation. In these terms winning a big prize means that the filled in form is at a distance not more than 1 from the outcome of all games. Assume that optimal set of filled in forms is c1 , c2 , . . . , cM . We can see this set of vectors as a code (not linear in general case). Then the requirement is that spheres of radius 1 with 13 the centres at codewords should cover the whole space: ∪M i=1 S1 (ci ) = F3 . Every such sphere contains exactly 1 X 13 i 3 = 27 i i=0 vectors. Therefore the size of the code is lower-bounded: M≥ |F13 313 3 | = = 310 . |S1 (ci )| 27 Existing of perfect [13, 10, 3] code means that there exists a code which achieves this bound with equality, i.e. M = 310 is a minimum possible number of forms to fill in. 4. Let HGRS be a parity-check matrix of the [5, 3, 3] GRS code C over F7 given by 1 1 1 1 1 HGRS = 1 2 3 4 5 Find a generator matrix GGRS of C in the canonical form, i.e. v1 v2 ... vn v1 α1 v2 α2 . . . vn αn GGRS = .. .. .. .. . . . . . k−1 k−1 v1 α1 v2 α2 . . . vn αnk−1 Conclude that dual code C ⊥ is also GRS. Hint. It can be helpful to note that dual code of GRS code can be described with the same code locators as the original code but perhaps different column multipliers. 2 Solution. A generator matrix GGRS should have a size 3 × 5. Also we use same code locators, which are α1 = 1, α2 = 2, α3 = 3, α4 = 4 and α5 = 5 looking for a matrix of the following form: v1 v2 v3 v4 v5 v1 v2 v3 v4 F7 GGRS = 1v1 2v2 3v3 4v4 5v5 = v1 2v2 3v3 4v4 12 v1 22 v2 32 v3 42 v4 52 v5 v1 4v2 2v3 2v4 To find values of v1 , v2 , . . . , v5 we need in the following matrix equation: v1 + v2 + v3 + v4 + v5 v1 + 2v2 + 3v3 + 4v4 + 5v5 v1 + 4v2 + 2v3 + 2v4 + 4v5 the hint, i.e. the Therefore we are v5 5v5 . 4v5 | to solve the system GGRS HGRS = O3×2 . This results v1 + 2v2 + 3v3 + 4v4 + 5v5 0 0 v1 + 4v2 + 2v3 + 2v4 + 4v5 = 0 0 . v1 + v2 + 6v3 + 1v4 + 6v5 0 0 In other words, we need to solve the following system of linear equations over F7 : v1 + v2 + v3 + v4 + v5 = 0 , v 1 + 2v2 + 3v3 + 4v4 + 5v5 = 0 , v1 + 2v2 + 3v3 + 4v4 + 5v5 = 0 , v 1 + 4v2 + 2v3 + 2v4 + 4v5 = 0 , v1 + 4v2 + 2v3 + 2v4 + 4v5 = 0 , v1 + v2 + 6v3 + 1v4 + 6v5 = 0 . General solution of this system has a form v1 = a, v2 = 3a, v3 = 6a, v4 = 3a, v5 = a, where a is any constant in F7 . To obtain particular solution we need to choose any particular value of a. Note also, that we need that none of v1 , v2 , . . . , v5 should equal 0 (requirement for column multipliers). For example, we can set a = 1 and then the solution is v1 = 1, v2 = 3, v3 = 6, v4 = 3, v5 = 1. Also note that we don’t need to check that the resulting matrix has a full rank. Different code locators and non-zero column multipliers guarantees that. Therefore one of the possible generator matrices 1 3 GGRS = 1 6 1 5 is as follows: 6 3 1 4 5 5 . 5 6 4 This matrix is in turn a parity-check matrix of dual code C ⊥ which proves that C ⊥ is indeed GRS. 5. Let CGRS be a [n, k] GRS code2 over F with code locators α1 , α2 , . . . , αn and column multipliers v1 , v2 , . . . , vn . 2 Since the minimum distance is not important in this problem, we omit it here. 3 (a) Fix µ, ν and η to be elements of F where µ, η 6= 0. Show that CGRS is identical to the 0 [n, k] GRS code CGRS over F defined by the code locators αj0 = µαj + ν , j = 1, 2, . . . , n, and column multipliers vj0 = ηvj , j = 1, 2, . . . , n. 0 Hint. Show that each row in a canonical parity-check matrix of CGRS can be written as a linear combination of some rows in a canonical parity-check matrix of CGRS . Solution. Denote by G = (gij ) a canonical generator matrix of original code CGRS and 0 ) a canonical generator matrix of C 0 by G0 = (gij GRS . Then we have 0 gij = vj0 (a0j )i−1 = ηvj (µαj + ν)i−1 . gij = vj ai−1 , j 0 : Let us expand the expression for gij 0 gij = vj0 (a0j )i−1 i−1 = ηvj (µαj + ν) = ηvj i−1 X i−1 (µαj )l ν i−1−l l ! l=0 k i i−1 X X X i−1 i−1 l l i−1−l ail glj , (µl−1 ην i−l )(vj αjl−1 ) = µ αj ηvj ν = = l−1 l l=1 l=1 l=0 where ( ail = i−1 l−1 0, (µl−1 ην i−l ) , 1 ≤ l ≤ i , i+1 ≤ l ≤ k. Therefore in matrix form we have G0 = AG, where A = (aij ) is k × k square matrix in lower-triangular form and its determinant equals to product of elements on main diagonal. More precise, k k Y Y det A = aii = µi−1 η 6= 0 . i=1 i=1 Hence A has full rank, i.e. k. This means that rows of G0 form a basis which is equivalent to the basis formed by rows of G. In other words, both G and G0 generate the same subspace, i.e. the same linear code. (b) Show that CGRS is identical to an [n, k] GRS code over F with code locators α1−1 , α2−1 , . . . , αn−1 (and with properly selected column multipliers). Solution. So we have αj0 = αj−1 . will be v1 α1k−1 v2 α2k−1 v αk−1 α−1 v2 α2k−1 α2−1 1 1 1 v2 α2k−1 α2−2 v1 α1k−1 α1−2 .. .. . . v1 α1k−1 α1−k+2 v2 α2k−1 α2−k+2 v1 α1k−1 α1−k+1 v2 α2k−1 α2−k+1 Let us set vj0 = vj αjk−1 . Then the new generator matrix vn αnk−1 vn αnk−1 αn−1 vn αnk−1 αn−2 .. . v1 α1k−1 v2 α2k−1 v1 α1k−2 v2 α2k−2 v1 α1k−3 v2 α2k−3 = . .. . . . . . . vn αnk−1 αn−k+2 v1 α1 v2 α2 v1 v2 . . . vn αnk−1 αn−k+1 ... ... ... .. . 4 . . . vn αnk−1 . . . vn αnk−2 . . . vn αnk−3 . .. .. . . . . . vn αn ... vn This matrix is just the same as the original one, but with rows in reverse order. This obviously does not change the code. (c) Let µ, ν, σ, and τ be elements of F such that µτ 6= σν. Based on parts (a) and (b), show that CGRS is identical to an [n, k] GRS code over F with code locators αj0 = µαj + ν , σαj + τ j = 1, 2, . . . , n , and with properly selected column multipliers. Solution. First, we note that (σαj + τ )σ −1 µ + ν − µσ −1 τ µαj + ν = σαj + τ σαj + τ 1 = (ν − µσ −1 τ ) · + σ −1 µ = A(σαj + τ )−1 + B , σαj + τ αj0 = where A = ν − µσ −1 τ 6= 0 and B = σ −1 µ are constants. Then we can do the following sequence of transformations of code locators which preserve the code: (1) = σαj + τ (according to 5(a)). (2) αj = (αj )−1 (according to 5(b)). • αj • (1) (2) • αj0 = Aαj + B (according to 5(a)). So we get αj0 which is the same as in the problem description and we did it by using only code-preserving transformations of code locators. Therefore final code is identical to the original one. 5