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

D.4.18.1 modStd

Procedure from library modstd.lib (see modstd_lib).

Usage:
modStd(I[, exactness]); I ideal/module, exactness int

Return:
a standard basis of I

Note:
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(default), the procedure computes a standard basis of I for sure; if exactness = 0, it computes a standard basis of I with high probability.

Example:
 
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;
==> 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;
==> 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;
==> 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.