Singleton bound


In coding theory, the Singleton bound, named after Richard Collom Singleton, is a relatively crude upper bound on the size of an arbitrary block code with block length, size and minimum distance.

Statement of the bound

The minimum distance of a set of codewords of length is defined as
where is the Hamming distance between and. The expression represents the maximum number of possible codewords in a -ary block code of length and minimum distance .
Then the Singleton bound states that

Proof

First observe that the number of -ary words of length is, since each letter in such a word may take one of different values, independently of the remaining letters.
Now let be an arbitrary -ary block code of minimum distance. Clearly, all codewords are distinct. If we puncture the code by deleting the first letters of each codeword, then all resulting codewords must still be pairwise different, since all of the original codewords in have Hamming distance at least from each other. Thus the size of the altered code is the same as the original code.
The newly obtained codewords each have length
and thus, there can be at most of them. Since was arbitrary, this bound must hold for the largest possible code with these parameters, thus:

Linear codes

If is a linear code with block length, dimension and minimum distance over the finite field with elements, then the maximum number of codewords is and the Singleton bound implies:
so that
which is usually written as
In the linear code case a different proof of the Singleton bound can be obtained by observing that rank of the parity check matrix is. Another simple proof follows from observing that the rows of any generator matrix in standard form have weight at most.

History

The usual citation given for this result is, but according to the result can be found in a 1953 paper of Komamiya.

MDS codes

Linear block codes that achieve equality in the Singleton bound are called MDS codes. Examples of such codes include codes that have only two codewords, codes that use the whole of , codes with a single parity symbol and their dual codes. These are often called trivial MDS codes.
In the case of binary alphabets, only trivial MDS codes exist.
Examples of non-trivial MDS codes include Reed-Solomon codes and their extended versions.
MDS codes are an important class of block codes since, for a fixed and, they have the greatest error correcting and detecting capabilities. There are several ways to characterize MDS codes:
The last of these characterizations permits, by using the MacWilliams identities, an explicit formula for the complete weight distribution of an MDS code.

Arcs in projective geometry

The linear independence of the columns of a generator matrix of an MDS code permits a construction of MDS codes from objects in finite projective geometry. Let be the finite projective space of dimension over the finite field. Let be a set of points in this projective space represented with homogeneous coordinates. Form the matrix whose columns are the homogeneous coordinates of these points. Then,