Accessing Module Information

This section deals with the underlying vector space of a module \(M\), which is a module over the algebra \(A\).

The Underlying Vector Space

M . i: ModRng, RngIntElt -> ModElt

Given an \(A\)-module \(M\) and a positive integer \(i\), return the \(i\)-th generator of \(M\).

CoefficientRing(M): ModRng -> Rng
BaseRing(M): ModRng -> Rng

Given an \(A\)-module \(M\), where \(A\) is an algebra over the field \(K\), return \(K\).

Generators(M): ModRng -> { ModRngElt }

The generators for the \(A\)-module \(M\), returned as a set.

Parent(u): ModRngElt -> ModRng

Given an element \(u\) belonging to the \(A\)-module \(M\), return \(M\).

The Action Algebra

Action(M): ModRng -> AlgMat
RightAction(M): ModRng -> AlgMat

Given an \(A\)-module \(M\), return the matrix algebra \(A\) giving the action of \(A\) on \(M\).

MatrixGroup(M): ModGrp -> GrpMat
Check: BoolElt                    Default: true

Given an \(R[G]\)-module \(M\), return the matrix group whose generators are the (invertible) generators of the acting algebra of \(M\).

ActionGenerator(M, i): ModRng, RngIntElt -> AlgMatElt

The \(i\)-th generator of the (right) acting matrix algebra for the module \(M\).

NumberOfActionGenerators(M): ModRng -> RngIntElt
Ngens(M): ModTupRng -> RngIntElt

The number of action generators (the number of generators of the algebra) for the \(A\)-module \(M\).

Group(M): ModGrp -> Grp

Given an \(R[G]\)-module \(M\), return the group \(G\).

Example: Access Functions for a Matrix Algebra Module (ex-891476)

Run in calculator (opens in a new tab)

We illustrate the use of several of these access functions by applying them to the \(6\)-dimensional representation of a matrix algebra defined over \({\bf F}_{2}\).

> F2 := GF(2);
> F := MatrixAlgebra(F2, 6);
> A := sub< F |
>   [ 1,0,0,1,0,1,
>     0,1,0,0,1,1,
>     0,1,1,1,1,0,
>     0,0,0,1,1,0,
>     0,0,0,1,0,1,
>     0,1,0,1,0,0 ],
>   [ 0,1,1,0,1,0,
>     0,0,1,1,1,1,
>     1,0,0,1,0,1,
>     0,0,0,1,0,0,
>     0,0,0,0,1,0,
>     0,0,0,0,0,1 ] >;
> T := RModule(F2, 6);
> M := RModule(T, A);
> Dimension(M);
6
> BaseRing(M);
Finite field of size 2

We set \(R\) to be the name of the matrix ring associated with \(M\). Using the generator subscript notation, we can access the matrices giving the (right) action of \(A\).

> R := RightAction(M);
> R.1;
[1 0 0 1 0 1]
[0 1 0 0 1 1]
[0 1 1 1 1 0]
[0 0 0 1 1 0]
[0 0 0 1 0 1]
[0 1 0 1 0 0]
> R.2;
[0 1 1 0 1 0]
[0 0 1 1 1 1]
[1 0 0 1 0 1]
[0 0 0 1 0 0]
[0 0 0 0 1 0]
[0 0 0 0 0 1]

We display full details of the module.

> M: Maximal;
Module M of dimension 6 with base ring GF(2)
Generators of acting algebra:

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

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

Run in calculator (opens in a new tab)