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.
- 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
UseBasisdecides 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
UseBasisdetermines 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 Functions on a Module (ex-5e5c19)
Run in calculator (opens in a new tab)
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]