HorizontalConversionFieldMat( M, F )
HorizontalConversionFieldMat
returns the matrix M with its elements
converted from a field <F>=GF(q^m), q prime, to a field GF(q). Each
element is replaced by its representation over the latter field, placed
horizontally in the matrix.
If M is a k by n matrix, the result is a k*m by n*m matrix. The new word length of the resulting code is equal to n*m, because each element of GF(q^m) can be represented in GF(q) using m elements. The new dimension is equal to k*m because the new matrix should be a basis for the same number of vectors as the old one.
ConversionFieldCode
uses horizontal conversion to convert a code (see
ConversionFieldCode).
gap> M := Z(9)*[[1,2],[2,1]];; PrintArray(M); [ [ Z(3^2), Z(3^2)^5 ], [ Z(3^2)^5, Z(3^2) ] ] gap> DefaultField( Flat(M) ); GF(3^2) gap> HCFM := HorizontalConversionFieldMat(M, GF(9));; PrintArray(HCFM); [ [ 0*Z(3), Z(3)^0, 0*Z(3), Z(3) ], [ Z(3)^0, Z(3)^0, Z(3), Z(3) ], [ 0*Z(3), Z(3), 0*Z(3), Z(3)^0 ], [ Z(3), Z(3), Z(3)^0, Z(3)^0 ] ] gap> DefaultField( Flat(HCFM) ); GF(3)
A similar function is VerticalConversionFieldMat
(see
VerticalConversionFieldMat).
GAP 3.4.4