[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
The Reduced Form of a Matrix Module

The Reduced Form of a Matrix Module

Reduce(H) : ModMatRng -> ModMatRng, Map
Suppose H is a matrix module whose elements have domain A and codomain B. Suppose first that A and B are tuple modules (R-spaces, R-modules, or RG-modules) and that A has degree a and dimension d while B has degree b and dimension e. (For the reduced cases (R-modules or RG-modules), a equals d and b equals e). The elements of H have the natural representation with respect to the standard embedded basis of the generic modules of A and B. Thus H has degree a by b. So one can multiply a 1 by a vector of A directly by an element h of H (in the natural matrix way) to get a 1 by b vector of B. Now suppose A and B are in the embedded form (R-space) and h is in H. Then h is an a by b matrix but there is a corresponding d by e matrix h' which gives the same transformation of h from A to B but is with respect to the bases of A and B. We call h' the reduced form of h. Also, there is the reduced module H' corresponding to H. This function constructs the reduced module H' corresponding to H, together with the epimorphism f from H onto H'. Note that if A and B are in reduced form, then H' is the same as H.

Suppose secondly that A and B are matrix modules themselves. Suppose A = Hom(D_1, C_1), B = Hom(D_1, C_2), and H = Hom(A, B) with the right multiplication action. Suppose also that A has degree r by s and dimension d while B has degree r by t, and dimension e. Then H would have degree s by t so an element h of H would be s by t and would multiply a r by s element of A on the right to yield an r by t element of B. Then the reduced matrix h' corresponding to a matrix h of H would be a d by e matrix corresponding to the bases of A and B. This function similarly constructs the reduced module H' corresponding to H, together with the epimorphism f from H onto H'. Note also that in this case the domain and codomains of H' are the generic R-spaces (tuple modules) corresponding to A (of dimension d) and B (of dimension e). Similarly, for the left multiplication action there is the corresponding reduced module constructed in the obvious way.

Note also that the kernel of the epimorphism f is the submodule of H which consists of all matrices which transform all elements of A to the zero element of B.


Example HMod_Reduce (H43E4)

We demonstrate the function Reduce for a homomorphism module from one vector space to another.

> V1 := sub<VectorSpace(GF(3), 3) | [1,0,1], [0,1,2]>;
> V2 := sub<VectorSpace(GF(3), 4) | [1,1,0,2], [0,0,1,2]>;
> H := Hom(V1, V2);
> H;
KMatrixSpace of 3 by 4 matrices and dimension 8 over GF(3)
> R, f := Reduce(H);
> R;
Full KMatrixSpace of 2 by 2 matrices over GF(3)
> H.1;
[1 0 0 0]
[0 1 0 2]
[0 1 0 2]
> f(H.1);
[1 0]
[0 0]
> V1.1;
(1 0 1)
> V1.1 * H.1;
(1 1 0 2)
> Coordinates(V2, V1.1 * H.1);
[ 1, 0 ]
> Coordinates(V2, V1.2 * H.1);
[ 0, 0 ]
> Kernel(f): Maximal;
KMatrixSpace of 3 by 4 matrices and dimension 4 over GF(3)
Echelonized basis:

[1 0 0 0] [2 0 0 0] [2 0 0 0]

[0 1 0 0] [0 2 0 0] [0 2 0 0]

[0 0 1 0] [0 0 2 0] [0 0 2 0]

[0 0 0 1] [0 0 0 2] [0 0 0 2] > R.1@@f; [1 0 0 0] [0 1 0 2] [0 1 0 2]


Example HMod_ReduceHom (H43E5)

We demonstrate the function Reduce for a homomorphism module from one homomorphism module to another. Note that the reduced module has the same dimension as the original module but larger degrees!

> V1 := VectorSpace(GF(3), 2);
> V2 := VectorSpace(GF(3), 3);
> V3 := VectorSpace(GF(3), 4);
> H1 := Hom(V1, V2);
> H2 := Hom(V1, V3);
> H := Hom(H1, H2, "right");
> H1;
Full KMatrixSpace of 2 by 3 matrices over GF(3)
> H2;
Full KMatrixSpace of 2 by 4 matrices over GF(3)
> H;
Full KMatrixSpace of 3 by 4 matrices over GF(3)
> R,f := Reduce(H);
> R;
KMatrixSpace of 6 by 8 matrices and dimension 12 over GF(3)
> X := H.1;
> X;
[1 0 0 0]
[0 0 0 0]
[0 0 0 0]
> f(X);
[1 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0]
[0 0 0 0 1 0 0 0]
[0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0]
> Domain(X);
Full KMatrixSpace of 2 by 3 matrices over GF(3)
> Domain(f(X));
Full Vector space of degree 6 over GF(3)
> Image(X): Maximal;
KMatrixSpace of 2 by 4 matrices and dimension 2 over GF(3)
Echelonized basis:

[1 0 0 0] [0 0 0 0]

[0 0 0 0] [1 0 0 0]

> Image(f(X)); Vector space of degree 8, dimension 2 over GF(3) Echelonized basis: (1 0 0 0 0 0 0 0) (0 0 0 0 1 0 0 0) > Kernel(X): Maximal; KMatrixSpace of 2 by 3 matrices and dimension 4 over GF(3) Echelonized basis:

[0 1 0] [0 0 0]

[0 0 1] [0 0 0]

[0 0 0] [0 1 0]

[0 0 0] [0 0 1]

> Kernel(f(X)): Maximal; Vector space of degree 6, dimension 4 over GF(3) Echelonized basis: (0 1 0 0 0 0) (0 0 1 0 0 0) (0 0 0 0 1 0) (0 0 0 0 0 1)


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