[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
The Standard Form

The Standard Form

StandardForm(C) : Code -> Code, Map
Given an [n, k] linear code C, return the standard form D of C. A code is in standard form if the first k components of the code words correspond to the information set. Magma returns one of the many codes in standard form which is isomorphic to C. (The same code is returned each time.) Thus, the effect of this function is to return a code D whose generators come from the generator matrix of C with its columns permuted, so that the submatrix consisting of the first k columns of the generator matrix for D is the identity matrix. Two values are returned:

Example Code_StandardForm (H58E14)

We construct a Reed-Muller code C and its standard form S and then map a codeword of C into S.

> C := ReedMullerCode(1, 4);         
> C;
[16, 5, 8] Reed-Muller Code (r = 1, m = 4) over GF(2)
Generator matrix:
[1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1]
[0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1]
[0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1]
[0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1]
[0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1]
> S, f := StandardForm(C);
> u := C.1;
> u;
(1 0 0 1 0 1 1 0 0 1 1 0 1 0 0 1)
> f(u);
(1 0 0 0 0 1 1 1 0 1 1 0 1 0 0 1)

[Next] [Prev] [Right] [Left] [Up] [Index] [Root]