The following functions deal with homogeneous modules. Homogeneity depends
on the column weights, just as in graded polynomial rings.
MinimalBasis(M) : ModMPol -> [ ModMPolElt ]
Given a homogeneous module M, return a minimal basis of M. A basis is minimal if no proper subset of it generates the same submodule as it.
Given a set or sequence S of homogeneous module elements from a module M, return a minimal basis of the submodule of M generated by S. A basis is minimal if no proper subset of it generates the same submodule as it.
Given a homogeneous submodule M of the generic module G, return the Hilbert series H_(G/M)(t) of the quotient module G/M as an element of the univariate function field over the ring of integers.
> P<x, y, z> := PolynomialRing(RationalField(), 3); > M := Module(P, 3); > S := sub<M | [x, 0, z], [x^5 + y^5, z^5, y^3*x^2]>; > IsHomogeneous(S); true > H<t> := HilbertSeries(S); > H; 1/(t^2 - 2*t + 1)