Elementary Functions#

Various simple properties of a module can be retrieved using the following functions.

BaseRing(M): ModDed -> Rng#
CoefficientRing(M): ModDed -> Rng#

The Dedekind domain which \(M\) is a module over.

Degree(M): ModDed -> RngIntElt#

The dimension of the vector space the module \(M\) embeds into.

Ngens(M): ModDed -> RngIntElt#
NumberOfGenerators(M): ModDed -> RngIntElt#

The minimum number of vectors and ideals which generate the module \(M\).

M . i: ModDed, RngIntElt -> ModTupRngElt#

The vector of the \(ith\) vector and ideal pair generating the module \(M\).

Determinant(M): ModDed -> RngOrdIdl#
Determinant(M): ModDed -> RngFunOrdIdl#

The determinant of the module \(M\).

Dimension(M): ModDed -> RngIntElt#

The dimension of the vector space spanned by the module \(M\) over its coefficient ring. This is the same as the number of generators of a pseudo basis of \(M\).

Contents(M): ModDed -> RngOrdFracIdl#
UseBasis: BoolElt                    Default: false

The contents of the module \(M\), ie. the gcd of the ideals obtained by multiplying the coefficient ideals by the ideal generated by the coefficients in the corresponding generators. The parameter UseBasis decides whether a pseudo basis or pseudo generators are used.

Simplify(M): ModDed -> ModDed#
UseBasis: BoolElt                    Default: false

Computes a module of contents \(1\) by scaling each coefficient ideal by the inverse of the contents of the module \(M\). The parameter UseBasis determines if the operations are performed on the pseudo generators or the pseudo basis of \(M\).

EmbeddingSpace(M): ModDed -> Mod#

The canonical vector space containing the module \(M\), ie.. \(M\) tensored with the field of fractions of the coefficient ring.

Example: elementary (ex-5e5c19)#

The use of some elementary functions on a module is shown below.

> P<x> := PolynomialRing(Rationals());
> P<y> := PolynomialRing(P);
> F<c> := FunctionField(x^2 - y);
> M := MaximalOrderFinite(F);
> Vs := RModule(M, 2);
> s := [Vs | [1, 3], [2, 3]];
> Mods := Module(s);
> CoefficientRing(Mods);
Maximal Equation Order of F over Univariate Polynomial Ring in x over Rational
Field
> Mods.1;
(1 0)
> Determinant(Mods);
Ideal of M
Generator:
-3
> Vs := RSpace(M, 2);
> s := [Vs | [1, 3], [2, 3]];
> Mods := Module(s);
> sMods := sub<Mods | Mods!Vs![1, 3]>;
> qMods := quo<Mods | sMods>;
> Degree(Mods);
2
> Ngens(Mods);
2
> Ngens(sMods);
1
> Degree(sMods);
2
> Degree(qMods);
2
> Ngens(qMods);
2
> Determinant(Mods);
Ideal of M
Basis:
[1]
> Determinant(sMods);
>>   Determinant(sMods);
               ^
Runtime error in `Determinant': Module must be square
> Determinant(qMods);
Ideal of M
Basis:
[1]

Run in calculator