Upload
hoangque
View
215
Download
1
Embed Size (px)
Citation preview
2/32
/k
Introduction
We have introduced some parameters of a linear codeIn coding theory one of the most basic problems is to findthe best value of a parameter when other parameters are given
In this lecture we discuss some bounds on the code parameters
3/32
/k
Content lecture 4
1. • Singleton bound• MDS codes• Vandermonde matrix• Reed-Solomon codes• Cauchy matrix
2. • Griesmer bound• Hamming bound• Sphere covering bound• Plotkin bound
3. • Gilbert bound• Varshamov bound• Asymptotic bounds
4/32
/k
Singleton bound - 1
The Singleton bound for non linear codes
PROPOSITION
Let Q be an alphabet with q elementsLet C ⊆ Q n be a code of length n and minimum distance dSuppose M is the number of codewords in CThen
M ≤ qn−d+1
5/32
/k
PROOF
Consider an M × n array with rows all codewords in C
Delete the first d − 1 columnsThen the rows of the M × (n − d + 1) array are mutually distinctsince d is the minimum distance of C
In other words:the punctured code CP with P = {1, . . . ,d − 1} has the same number Mof elements as C and
CP ⊆ Q n−d+1
HenceM ≤ qn−d+1
6/32
/k
Singleton bound - 2
PROPOSITION
If C is an [n, k , d ] code, then
d ≤ n − k + 1
PROOF
|C | = qk≤ qn−d+1
7/32
/k
ALTERNATIVE PROOF
Let H be a parity check matrix of CThis is an (n − k )× n matrix of row rank n − k
The minimum distance of C is the smallest integer d such thatH has d linearly dependent columnsThis means that every d − 1 columns of H are linearly independentHence, the column rank of H is at least d − 1
By the fact that the column rank of a matrix is equal to the row rankwe have n − k ≥ d − 1
8/32
/k
MDS codes
Let C be an [n, k , d ] codeIf d = n − k + 1, then C is called a
maximum distance separable code
or an MDS code, for short
From the Singleton bound follows:a maximum distance separable code achievesthe maximum possible value for the minimum distancegiven the code length and dimension
9/32
/k
Trivial examples
The minimum distance of the the zero code of length n is n + 1by definitionHence the zero code has parameters [n, 0, n + 1] and is MDS
Its dual is the whole space Fnq with parameters [n, n, 1] and is also MDS
The n-fold repetition code has parameters [n, 1, n] andits dual is an [n, n − 1, 2] code and both are MDS
10/32
/k
PROPOSITION
Let C be an [n, k , d ] code over Fq
Let G be a generator matrix and H a parity check matrix of CThen the following statements are equivalent:
1. C is an MDS code
2. every (n − k )-tuple of columns of a parity check matrix Hare linearly independent
3. every k -tuple of columns of a generator matrix Gare linearly independent
11/32
/k
PROOF - 1
The minimum distance of C is dSo any d − 1 columns of H are linearly independent
Now d ≤ n − k + 1 by the Singleton boundSo d = n − k + 1 if and only ifevery n − k columns of H are independent
Hence (1) and (2) are equivalent
12/32
/k
PROOF - 2
Now let us assume (3)
Let c be an element of C which is zero at k given coordinatesLet c = xG for some x ∈ Fk
qLet G ′ be the square matrix consisting of the k columns of Gcorresponding to the k given zero coordinates of cThen xG ′ = 0Hence x = 0, since the k columns of G ′ are independent by assumptionSo c = 0This implies that the minimum distance of C is at least n − (k − 1)
Therefore C is an [n, k , n − k + 1]MDS codeby the Singleton bound
13/32
/k
PROOF - 3
Assume that C is MDS
Let G be a generator matrix of CLet G ′ be the square matrix consisting of k chosen columns of GLet x ∈ Fk
q such that xG ′ = 0Then c = xG is a codeword and its weight is at most n − kSo c = 0, since the minimum distance is n − k + 1Hence x = 0,since the rank of G is k
Therefore the k columns are independent
14/32
/k
EXAMPLE
Consider the code C over F5 of length 5 and dimension 2 with generatormatrix
G =(
1 1 1 1 10 1 2 3 4
)The minimum distance of C is at least 4On the other hand, the second row is a word of weight 4Hence C is a [5, 2, 4]MDS codeThe matrix G is a parity check matrix for the dual code C⊥
All columns of G are nonzero, and every two columns are independentsince
det(
1 1i j
)= j − i 6= 0
for all 0 ≤ i < j ≤ 4Therefore, C⊥ is also an MDS code
15/32
/k
COROLLARY
The dual of an [n, k , n − k + 1] code is an [n, n − k , k + 1] codeThat is: the dual of an MDS code is an MDS code
PROOFThe trivial codes are MDS and are dual of each other
Assume 0 < k < nLet H be a parity check matrix of an [n, k , n − k + 1] code CThen any n − k columns of H are linearly independent, by (2)Now H is a generator matrix of the dual codeTherefore C⊥ is an [n, n − k , k + 1] code, by (3)
16/32
/k
Vandermonde matrix
Let a be a vector of Fkq
The Vandermonde matrix V (a) has entries a i−1j
LEMMALet a be a vector of Fk
qThen
detV (a) =∏
1≤r<s≤k
(as − ar)
Proof is left as an exercise
17/32
/k
EXAMPLE
Let n ≤ qLet a = (a1, . . . , an) be an n-tuple of mutually distinct elements of Fq
Let k be an integer such that 0 ≤ k ≤ nDefine the matrices Gk (a) and G ′k (a) by
Gk (a) =
1 · · · 1a1 · · · an...
. . ....
ak−11 · · · ak−1
n
and G ′k (a) =
1 · · · 1 0a1 · · · an 0...
. . ....
...
ak−11 · · · ak−1
n 1
The codes with generator matrix Gk (a) and G ′k (a) are MDS codes
18/32
/k
PROOF
Consider a k × k submatrix of G (a)Then this is a Vandermonde matrix and its determinant is not zerosince the ai are mutually distinct
So any system of k columns of Gk (a) is independentHence Gk (a) is the generator matrix of an MDS code
The proof for G ′k (a) is similar and is left as an exercise
19/32
/k
Reed-Solomon codes
These are called Reed-Solomon codes or RS codesand are the prime examples of MDS codes
These codes will be treated later in more detail
The previous proposition showed the existence of MDS codes over Fq
with parameters [n, k , n − k + 1] for all possible values of k and nsuch that
0 ≤ k ≤ n ≤ q + 1
20/32
/k
EXAMPLE
Let q be a power of 2 and n = q + 2 and Fq = {a1, a2, . . . , aq}Consider the code C with generator matrix 1 1 . . . 1 0 0
a1 a2 . . . aq 0 1a2
1 a22 . . . a2
q 1 0
Then any 3 columns of this matrix are independentThe only remaining nontrivial case to check is∣∣∣∣∣∣
1 1 0ai aj 1a2i a2
j 0
∣∣∣∣∣∣ = −(a2j − a2
i ) = (ai − aj )26= 0, in characteristic 2
Hence C is a [q + 2, 3, q] code
21/32
/k
REMARK
Let G be generator matrix of an [n, k ]MDS codeThen every k columns of G are independentIn other words: the code is systematic at any k positions
So any k symbols of the codewords may be taken as message symbols
This is another reason for the name MDS:
maximum distance separable
22/32
/k
COROLLARY
Let C be an [n, k , d ] code
Then C is MDS if and only iffor any given d coordinate positionsthere is a minimum weight codewordwith the set of these positions as support
Furthermore two codewords of an MDS code of minimum weightwith the same support are a nonzero multiple of each other
23/32
/k
PROOF - 1
Let G be a generator matrix of CThen G has rank kSo there exist k positions j1, j2, . . . , jksuch that the columns of G at these positions are independentThe complement of these k positions consists of n − k elements
Suppose d ≤ n − kChoose a subset {i1, i2, . . . , id } of d elements in this complementLet c be a codeword with support that is contained in {i1, i2, . . . , id }Then c is zero at the positions j1, j2, . . . , jkHence c = 0 and the support of c is empty
24/32
/k
PROOF - 2
If C is MDS, then d = n − k + 1Let {i1, i2, . . . , id } be a set of d coordinate positionsThen the complement of this set consists of j1, j2, . . . , jk−1
Let jk = i1 and use j1, j2, . . . , jk for systematic encodingSo there is a unique codeword c such thatcjk = 1 and cj = 0 for all j = j1, j2, . . . , jk−1
Hence c is a nonzero codeword of weight at most d and supportcontained in {i1, i2, . . . , id }Therefore c is a codeword of weight d and support equal to {i1, i2, . . . , id }since d is the minimum weight of the code
25/32
/k
PROOF - 3
Furthermore, let c′ be another codeword of weight d andsupport equal to {i1, i2, . . . , id }
Then c ′j = 0 for all j = j1, j2, . . . , jk−1 and c ′jk 6= 0So c′ and c ′jk c are two codewords that coincide at j1, j2, . . . , jkC is systematic at j1, j2, . . . , jkHence c′ = c ′jk c
26/32
/k
Number of min. weight codewords
It follows from the Corollary that for an [n, k ]MDS codethe number of nonzero codewords of minimum weight n − k + 1 is
(q − 1)
(n
n − k + 1
)Next week we will introduce the weight distribution of a linear codeUsing the above result the weight distribution of an MDS codecan be completely determined
27/32
/k
REMARK
Let C be an [n, k , n − k + 1] codeThen it is systematic at the first k positionsHence C has a generator matrix of the form (Ik |A )
It is left as an exercise to show thatevery square submatrix of A is nonsingular
The converse is also true
28/32
/k
Cauchy matrix - 1
Let n ≤ qLet a, b, r and s be vectors of Fk
q such that ai 6= bj for all i , j
Let C (a,b) be the k × k Cauchy matrix with entries
1ai − bj
Let C (a,b; r, s) be the k × k generalized Cauchy matrix with entries
risjai − bj
29/32
/k
Cauchy matrix - 2
Let k be an integer such that 0 ≤ k ≤ nLet A (a) be the k × (n − k ) matrix with entries 1/(aj+k − ai ) for1 ≤ i ≤ k , 1 ≤ j ≤ n − kThen the Cauchy code Ck (a) is the code with generator matrix
(Ik |A (a))
If ri is not zero for all i , then A (a, r) is the k × (n − k ) matrix with entries
rj+k r−1i
aj+k − aifor 1 ≤ i ≤ k , 1 ≤ j ≤ n − k
The generalized Cauchy code Ck (a, r) is the code with generator matrix
(Ik |A (a, r))
30/32
/k
LEMMA
Let a, b, r and s be vectors of Fkq such that ai 6= bj for all i , j
Then
detC (a,b; r, s) =n∏
i=1
rin∏
j=1
sj
∏i<j (ai − aj )(bj − bi )∏n
i ,j=1(ai − bj )
Proof is left to the reader
31/32
/k
PROPOSITION
Let n ≤ qLet a be an n-tuple of mutually distinct elements of Fq
and r an n-tuple of nonzero elements of Fq
Let k be an integer such that 0 ≤ k ≤ n
Then the generalized Cauchy code Ck (a, r) is an [n, k , n − k + 1] code
32/32
/k
PROOF
Every square t × t submatrix of A is a Cauchy matrix of the form
C ((ai1, . . . , ait ), (ak+j1, . . . , ak+jt ); (b−1i1
, . . . ,b−1it
), (bk+j1, . . . ,bk+jt ))
The determinant of this matrix is not zero by the Lemmasince the entries of a are mutually distinct andthe entries of r are not zero
Hence (Ik |A (a, r)) is the generator matrix of an MDS code