|
5.1.124 stdhilb
Procedure from library standard.lib (see standard_lib).
- Syntax:
stdhilb ( ideal_expression )
stdhilb ( ideal_expression, intvec_expression )
- Type:
- ideal
- Purpose:
- Computes the standard basis of the given ideal in the basering,
via a Hilbert driven standard basis computation.
If the ideal is homogeneous then the optional second argument
will be used as 1st Hilbert function.
If the ideal is not homogeneous and if the ordering is either
dp or non-global then std is called. For other
orderings, stdhilb computes the Hilbert series of the
homogenized ideal (by applying std in a ring with dp
ordering) and uses the result to navigate the standard basis
computation with respect to the given ordering.
- Assume:
- The optional second argument is the output of
hilb(j,1) , where
j is a standard basis for the given (homogeneous) ideal.
Example:
| ring r=0,(w,x,y,z),lp;
ideal i=y3+x2w,x2y+x2w,x3-x2w,z4-x2w2-yw3;
ideal i1=stdhilb(i); i1;
==> i1[1]=z12
==> i1[2]=yz8
==> i1[3]=y2z4
==> i1[4]=xy3+y4
==> i1[5]=x2z4
==> i1[6]=x2y-y3
==> i1[7]=x3+x2y
==> i1[8]=wy3-x3y
==> i1[9]=wx2-x3
==> i1[10]=w3y+w2x2-z4
// the latter computation is equivalent to:
ring R=0,(w,x,y,z),dp;
ideal i=y3+x2w,x2y+x2w,x3-x2w,z4-x2w2-yw3;
intvec v=hilb(std(i),1);
setring r;
ideal i2=std(i,v); i2;
==> i2[1]=z12
==> i2[2]=yz8
==> i2[3]=y2z4
==> i2[4]=xy3+y4
==> i2[5]=x2z4
==> i2[6]=x2y-y3
==> i2[7]=x3+x2y
==> i2[8]=wy3-x3y
==> i2[9]=wx2-x3
==> i2[10]=w3y+w2x2-z4
| See also:
groebner;
std;
stdfglm.
|