Home Online Manual
Back: modstd_lib
Forward: monomialideal_lib
FastBack: modnormal_lib
FastForward: monomialideal_lib
Up: modstd_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.4.12.1 modStd

Procedure from library modstd.lib (see modstd_lib).

modStd(I[, exactness]); I ideal, exactness int

a standard basis of I

The procedure computes a standard basis of I (over the rational numbers) by using modular methods.
An optional parameter 'exactness' can be provided. If exactness = 1, the procedure computes a standard basis of I for sure; if exactness = 0, it computes a standard basis of I with high probability.

LIB "modstd.lib";
ring R1 = 0, (x,y,z,t), dp;
ideal I = 3x3+x2+1, 11y5+y3+2, 5z4+z2+4;
ideal J = modStd(I);
==> J[1]=x3+1/3x2+1/3
==> J[2]=z4+1/5z2+4/5
==> J[3]=y5+1/11y3+2/11
I = homog(I, t);
J = modStd(I);
==> J[1]=x3+1/3x2t+1/3t3
==> J[2]=z4+1/5z2t2+4/5t4
==> J[3]=y5+1/11y3t2+2/11t5
ring R2 = 0, (x,y,z), ds;
ideal I = jacob(x5+y6+z7+xyz);
ideal J = modStd(I, 0);
==> J[1]=xy+7z6
==> J[2]=xz+6y5
==> J[3]=yz+5x4
==> J[4]=x5-7/5z7
==> J[5]=y6-7/6z7
==> J[6]=z8
ring R3 = 0, x(1..4), lp;
ideal I = cyclic(4);
ideal J1 = modStd(I, 1);   // default
ideal J2 = modStd(I, 0);
size(reduce(J1, J2));
==> 0
size(reduce(J2, J1));
==> 0
See also: modular.