|
7.10.1.4 lpHilbert
Procedure from library fpadim.lib (see fpadim_lib).
- Usage:
- lpHilbert(G[,degbound,n]); G an ideal, degbound, n optional integers
- Return:
- intvec, containing the coefficients of the Hilbert series
- Purpose:
- Compute the truncated Hilbert series of K<X>/<G> up to a degree bound
- Assume:
- - basering is a Letterplace ring.
- if you specify a different degree bound degbound,
degbound <= attrib(basering,uptodeg) holds.
- Theory:
- Hilbert series of an algebra K<X>/<G> is sum_(i>=0) h_i t^i,
where h_i is the K-dimension of the space of monomials of degree i,
not contained in <G>. For finitely presented algebras Hilbert series NEED
NOT be a rational function, though it happens often. Therefore in general
there is no notion of a Hilbert polynomial.
- Note:
- - If degbound is set, there will be a degree bound added. 0 means no
degree bound. Default: attrib(basering,uptodeg).
- n is the number of variables, which can be set to a different number.
Default: attrib(basering, lV).
- In the output intvec I, I[k] is the (k-1)-th coefficient of the Hilbert
series, i.e. h_(k-1) as above.
Example:
| LIB "fpadim.lib";
ring r = 0,(x,y),dp;
def R = freeAlgebra(r, 5); // constructs a Letterplace ring
setring R; // sets basering to Letterplace ring
ideal G = y*y,x*y*x; // G is a Groebner basis
lpHilbert(G); // procedure with default parameters
==> 1,2,3,4,4,4
lpHilbert(G,3,2); // invokes procedure with degree bound 3 and (same) 2 variables
==> 1,2,3,4
| See also:
ncHilb_lib.
|