Operations with Linear Transformations

Throughout this section, V is a subspace of K(m), W is a subspace of K(n) and a is a linear transformation belonging to HomK(V, W). See also the chapter on general matrices for many other functions applicable to such matrices (e.g., EchelonForm).

v * a : ModTupFldElt, ModMatFldElt -> ModTupFldElt
a(v) : ModMatFldElt, ModTupFldElt -> ModTupFldElt
Given an element v belonging to the vector space V, and an element a belonging to HomK(V, W), return the image of v under the linear transformation a as an element of the vector space W.
a * b : ModMatRngElt, ModMatRngElt -> ModMatRngElt
Given a matrix a belonging to K(m x n) and a matrix b belonging to K(n x p), for some integers m, n, p, form the product of a and b as an element of K(m x p).
Domain(a) : ModMatRngElt -> ModTupRng
The domain of the linear transformation a belonging to HomK(V, W), returned as a subspace of V.
Codomain(a) : ModMatRngElt -> ModTupRng
The codomain of the linear transformation a belonging to HomK(V, W), returned as a subspace of W.
Image(a) : ModMatRngElt -> ModTupRng, Map, Map
The image of the linear transformation a belonging to HomK(V, W), returned as a subspace of W.
Rank(a) : ModMatRngElt -> RngIntElt
The dimension of the image of the linear transformation a, i.e., the rank of the matrix a.
Kernel(a) : ModMatRngElt -> ModTupFld, Map
NullSpace(a) : ModMatRngElt -> ModTupFld, Map
The kernel of the linear transformation a belonging to HomK(V, W), returned as a subspace of V.
Cokernel(a) : ModMatRngElt -> ModTupFld, Map
The cokernel of the linear transformation a belonging to HomK(V, W).

Example ModFld_LinearTrans (H29E14)

We illustrate the map operations for matrix spaces in the following example:
> Q := RationalField();
> Q2 := VectorSpace(Q, 2);
> Q3 := VectorSpace(Q, 3);
> Q4 := VectorSpace(Q, 4);
> H23 := Hom(Q2, Q3);
> H34 := Hom(Q3, Q4);
> x := Q2 ! [ -1, 2 ];
> a := H23 ! [ 1/2, 3, 0,  2/3, 4/5, -1 ];
> a;
[1/2   3   0]
[2/3 4/5  -1]
> Domain(a);
Full Vector space of degree 2 over Rational Field
> Codomain(a);
Full Vector space of degree 3 over Rational Field
> x*a;
( 5/6 -7/5   -2)
> b := H34 ! [ 2, 0, 1, -1/2,  1, 0, 3/2, 4,  4/5, 6/7, 0, -9/7];
> b;
[   2    0    1 -1/2]
[   1    0  3/2    4]
[ 4/5  6/7    0 -9/7]
> c := a*b;
> c;
[      4       0       5    47/4]
[    4/3    -6/7   28/15 436/105]
> x*c;
(     -4/3     -12/7    -19/15 -1447/420)
> Image(c);
Vector space of degree 4, dimension 2 over Rational Field
Echelonized basis:
(     1      0    5/4  47/16)
(     0      1  -7/30 -11/40)
> Kernel(c);
Vector space of degree 2, dimension 0 over Rational Field
> Rank(c);
2
> EchelonForm(c);
[     1      0    5/4  47/16]
[     0      1  -7/30 -11/40]
V2.28, 13 July 2023