Since a code is a finite dimensional vector space over a finite field, it only has finitely many elements. To represent a code in a computer one may of course store all the elements. But there must be a simpler way of representing a code than by listing all of its elements, right? Yes, there is and this motivates the following definition.
A code is often represented by simply giving a
generator matrix.
To compute a generator matrix of a given code
of length
, first determine a basis for the code
as a vector space over
,
then put these basis vectors into a
matrix, where
.
(a) its sum with another row, or
(b) its scalar multiple with any non-zero element of
,
is called an elementary row operation.
If
is any matrix with entries in a field
then
(a) swapping any two columns, or
(b) replacing any column of
by
its scalar multiple with any non-zero element of
,
is called a simple column operation.
proof:
The rows of
still form a basis for the
vector space
over
.
However, if we swap the first two columns of
, to get
These are called generalized
(or shortened or extended) Reed-Solomon codes.
(As we shall see later, in the context of cyclic codes,
Reed-Solomon codes have
.)
Note the parameters satisfy the Singleton bound,
so these are MDS codes.
The generator matrix for
is
of the form
.
The encoding matrix of a linear code
of dinension
is an
matrix
whose image is
.
To compute the encoding matrix from the
generator matrix is easy.
The proof of this is left as an exercise.
Many general properties about a linear code may be reduced to a corresponding property of its generator matrix. Can one determine the minimum distance of a code from its generator matrix? The following result answers this.
proof:
By definition of
, there is a code word
in
having exactly
non-zero
entries. Thus by definition of
,
there are
columns of
which are linearly
dependent. If there were
columns of
which are linearly
independent then there would be (by definition
of
) a code word
in
having exactly
non-zero
entries. This would contradict the definition
of
.