Intersections of modules can taken. Several other functions are also available.
Return the intersection of the modules M1 and M2.
The module dual to M.
The elementary divisors (ideals) of the torsion part of the quotient R-module M/N: For N⊆M we get T(M/N) isomorphic to direct-sum i=1n R/(frac Ai) The (frac Ai) are unique if we require R⊆(frac A1) ⊆ ... ⊆(frac An). The (frac Ai) are called the elementary divisors (or elementary ideals) of M/N. This corresponds to the Smith normal form for integral matrices.
The Steinitz class of the module M.
The Steinitz (almost--free) form of the module M.
> P<x> := PolynomialRing(Rationals()); > P<y> := PolynomialRing(P); > F<c> := FunctionField(y^3 - x^3*y^2 + y - x^7); > M := MaximalOrderFinite(F); > Vs := RSpace(M, 2); > s := [Vs | [1, Random(M, 3)], [Random(M, 3), 3]]; > Mods := Module(s); > qMods := quo<Mods | Mods!s[2]>; > Basis(Mods); [ ([ 1, 0, 0 ] [ 2*x^2 - 3*x + 1/2, -2/3*x^2 - x + 1/3, 2/3*x^2 - 2*x + 1/2 ]), ([ -x^2 + x + 2/3, -1/3*x^2 - 1, -3/2*x^2 - 2/3*x + 1 ] [ 3, 0, 0 ]) ] > Basis(qMods); [ ([ 1, 0, 0 ] [ 2*x^2 - 3*x + 1/2, -2/3*x^2 - x + 1/3, 2/3*x^2 - 2*x + 1/2 ]), ([ -x^2 + x + 2/3, -1/3*x^2 - 1, -3/2*x^2 - 2/3*x + 1 ] [ 3, 0, 0 ]) ] > PseudoBasis(Mods) eq PseudoBasis(qMods); > Vs := RModule(M, 2); > s := [Vs | [Random(M, 3), Random(M, 3)], [2, 3]]; > Mods := Module(s); > sMods := sub<Mods | Mods!s[1]>; > Mods meet sMods; Module over Maximal Equation Order of F over Univariate Polynomial Ring in x over Rational Field Ideal of M Generator: (x + 1)*c^2 + (-3/2*x^2 - 3/2*x)*c + 1/2*x^2 + 2/3*x + 1/2 > ElementaryDivisors(Mods, sMods); [ Ideal of M Basis: [1 0 0] [0 1 0] [0 0 1], Ideal of M Generator: 0 ] > Dual(Mods); Module over Maximal Equation Order of F over Univariate Polynomial Ring in x over Rational Field Fractional ideal of M Generator: (-3*x^4 + 21*x^3 + 20*x^2 + 80*x - 387)/(x^17 - 24*x^16 + 192*x^15 - 510*x^14 - 94/3*x^13 + 304/3*x^12 + 902/3*x^11 - 3109/3*x^10 - 389/9*x^9 + 664/9*x^8 + 1094/3*x^7 - 1540/3*x^6 - 101/9*x^5 + 128/3*x^4 + 2000/27*x^3 - 4361/9*x^2 - 427*x + 2056)*c^2 + (-3*x^9 + 48*x^8 - 189*x^7 - 24*x^6 + 3*x^5 - 48*x^4 + 195*x^3 - 3*x^2 - x + 24)/(x^17 - 24*x^16 + 192*x^15 - 510*x^14 - 94/3*x^13 + 304/3*x^12 + 902/3*x^11 - 3109/3*x^10 - 389/9*x^9 + 664/9*x^8 + 1094/3*x^7 - 1540/3*x^6 - 101/9*x^5 + 128/3*x^4 + 2000/27*x^3 - 4361/9*x^2 - 427*x + 2056)*c + (3*x^12 - 48*x^11 + 192*x^10 + 3*x^9 - 20*x^8 - 56*x^7 + 192*x^6 + 3*x^5 - 5*x^4 - 8*x^3 + 272/3*x^2 + 128*x - 771)/(x^17 - 24*x^16 + 192*x^15 - 510*x^14 - 94/3*x^13 + 304/3*x^12 + 902/3*x^11 - 3109/3*x^10 - 389/9*x^9 + 664/9*x^8 + 1094/3*x^7 - 1540/3*x^6 - 101/9*x^5 + 128/3*x^4 + 2000/27*x^3 - 4361/9*x^2 - 427*x + 2056) car Ideal of M Generator: 1/3 > Dual(sMods); Module over Maximal Equation Order of F over Univariate Polynomial Ring in x over Rational Field Fractional ideal of M Generator: (3/2*x^6 + 3*x^5 - 3/4*x^4 - 4*x^3 - 25/12*x^2 - 5/6*x - 1/2)/(x^17 + 3*x^16 + 21/4*x^15 + 27/4*x^14 + 1/24*x^13 - 247/24*x^12 - 173/24*x^11 + 61/24*x^10 + 305/72*x^9 + 17/72*x^8 - 4*x^7 - 53/12*x^6 - 1/8*x^5 + 23/6*x^4 + 377/108*x^3 + 23/18*x^2 + 1/3*x + 1/8)*c^2 + (-5/2*x^9 - 5*x^8 - 1/4*x^7 + 9/2*x^6 + 13/4*x^5 + 5/4*x^4 - 3/4*x^3 - 7/4*x^2 - 3/4*x)/(x^17 + 3*x^16 + 21/4*x^15 + 27/4*x^14 + 1/24*x^13 - 247/24*x^12 - 173/24*x^11 + 61/24*x^10 + 305/72*x^9 + 17/72*x^8 - 4*x^7 - 53/12*x^6 - 1/8*x^5 + 23/6*x^4 + 377/108*x^3 + 23/18*x^2 + 1/3*x + 1/8)*c + (x^12 + 2*x^11 - 1/2*x^10 - 7/2*x^9 - 8/3*x^8 - 5/12*x^7 + 11/4*x^6 + 19/4*x^5 - 1/4*x^4 - 25/6*x^3 - 67/36*x^2 - 1/3*x - 1/4)/(x^17 + 3*x^16 + 21/4*x^15 + 27/4*x^14 + 1/24*x^13 - 247/24*x^12 - 173/24*x^11 + 61/24*x^10 + 305/72*x^9 + 17/72*x^8 - 4*x^7 - 53/12*x^6 - 1/8*x^5 + 23/6*x^4 + 377/108*x^3 + 23/18*x^2 + 1/3*x + 1/8) > SteinitzClass(Mods) eq SteinitzClass(sMods); false > SteinitzForm(Mods); Module over Maximal Equation Order of F over Univariate Polynomial Ring in x over Rational Field Ideal of M Generator: 3 car Ideal of M Generator: 1 > SteinitzForm(sMods); Module over Maximal Equation Order of F over Univariate Polynomial Ring in x over Rational Field Ideal of M Generator: 1