#### D.14.3.2 satstd

Procedure from library `customstd.lib` (see customstd_lib).

Usage:
satstd(I[,J]); I ideal, J optional ideal

Assume:
J generated by variables

Purpose:
computes a standard basis of I and, if possible,
divides each polynomial during the computation by the variables in J. By default, J is assumed to be the ideal generated by all variables.

Note:
Even if I contains a monomial generated by the variables in J, there is no guarantee that it is found during the computation. If it is found, however, 1 is immediately returned.

Note:
The result is a standard basis of a partially saturated ideal wrt. the the variables in J.
If the I is homogeneous and the ordering dp, the result is completely saturated wrt. to the last variable (wrt. to the first for Dp).

Example:
 ```LIB "customstd.lib"; ring r = 0,(x,y,z,u,v),dp; ideal I = x2+x,y2+y,z2+z; // returns normal standard basis, no changes during (trivial) computation satstd(I,ideal(u,v)); ==> _[1]=z2+z ==> _[2]=y2+y ==> _[3]=x2+x // returns x+1 instead of x2+x satstd(I,ideal(x)); ==> _[1]=x+1 ==> _[2]=z2+z ==> _[3]=y2+y // returns standard basis with elements of degree up to 8 (instead of 16) deg(satstd(I^8)); ==> 8 ```

User manual for Singular version 4.3.1, 2022, generated by texi2html.