|
5.1.45 hilb
Syntax:
hilb ( ideal_expression )
hilb ( module_expression )
hilb ( ideal_expression, int_expression )
hilb ( module_expression, int_expression )
hilb ( ideal_expression, int_expression , intvec_expression )
hilb ( module_expression, int_expression , intvec_expression )
Type:
- none (if called with one argument)
intvec (if called with two or three arguments)
Purpose:
- computes the (weighted) Hilbert series of the graded ring defined by the ideal
generated by the leading terms of the input, respectively of the graded module
coker(L(M)) where L(M) denotes the matrix
with column entries the leading terms of the input.
If hilb is called with one argument, then the 1st and 2nd Hilbert series
are computed and additional information (dimension and degree) are displayed.
If hilb is called with two arguments and if n=1 or n=2 is the second
argument, then the nth Hilbert series is returned as an intvec.
If an integer vector w is given as 3rd argument, then the Hilbert
series is computed with respect to the weights w (by default, all
weights are set to 1).
Caution:
- The last entry of the returned intvec is not part of the actual Hilbert series,
but is used in the Hilbert driven standard basis computation (see stdhilb).
Note:
- If the input is homogeneous w.r.t. the weights and a standard basis, the result is
the (weighted) Hilbert series of the input ideal, resp. module.
The additional information displayed when calling hilb with
one argument has to be interpreted as follows:
If the input is homogeneous and a standard basis then the dimension and degree
of the projetive variety defined by the input ideal, respectively module, are
displayed. With one exception: if the projective dimension is -1, the affine
dimension 0 and the degree of the projective cone are displayed.
If the input is not homogeneous but a standard basis with respect to a degree
ordering, then the dimension of the affine variety and
the degree of the projective variety defined by the homogenization of the
ideal are displayed.
Example:
| ring R=32003,(x,y,z),dp;
ideal i=x2,y2,z2;
ideal s=std(i);
hilb(s);
==> // 1 t^0
==> // -3 t^2
==> // 3 t^4
==> // -1 t^6
==>
==> // 1 t^0
==> // 3 t^1
==> // 3 t^2
==> // 1 t^3
==> // dimension (affine) = 0
==> // degree = 8
hilb(s,1);
==> 1,0,-3,0,3,0,-1,0
hilb(s,2);
==> 1,3,3,1,0
intvec w=2,2,2;
hilb(s,1,w);
==> 1,0,0,0,-3,0,0,0,3,0,0,0,-1,0
|
See
Hilbert function;
ideal;
intvec;
module;
std;
stdhilb.
|