In coding theory, a generator matrix is a matrix whose rows form a basis for a linear code.
The codewords are all of the linear combinations of the rows of this matrix, that is, the linear code is the row space of its generator matrix.
If G is a matrix, it generates the codewords of a linear code C by where w is a codeword of the linear code C, and s is any input vector.
Both w and s are assumed to be row vectors.
[1] A generator matrix for a linear
, where n is the length of a codeword, k is the number of information bits (the dimension of C as a vector subspace), d is the minimum distance of the code, and q is size of the finite field, that is, the number of symbols in the alphabet (thus, q = 2 indicates a binary code, etc.).
The number of redundant bits is denoted by
The standard form for a generator matrix is,[2] where
When the generator matrix is in standard form, the code C is systematic in its first k coordinate positions.
[3] A generator matrix can be used to construct the parity check matrix for a code (and vice versa).
If the generator matrix G is in standard form,
, then the parity check matrix for C is[4] where
This is a consequence of the fact that a parity check matrix of
is a generator matrix of the dual code
The generator matrices of equivalent codes can be obtained from one another via the following elementary operations:[6] Thus, we can perform Gaussian elimination on G. Indeed, this allows us to assume that the generator matrix is in the standard form.
generate equivalent codes.