| LIB "polybori.lib";
ring r0=2,x(1..4),lp;
poly f1=x(1)^2+2*x(2)*(x(3))-x(4)^3;
poly f2=x(1)^2-x(3)*x(1);
poly f3=x(2)+5-2*x(1);
poly f4=x(1)*x(2)-x(3);
ideal I=f1,f2,f3,f4;
boolean_std(I); // implicitely add x(i)^2-x(i)
==> _[1] = x(1) + x(4)
==> _[2] = x(3) + x(4)
==> _[3] = x(2) + 1
==>
bideal bI=I; // alternative syntax
bideal re = std(bI); // Continue PolyBoRi computations
std(re[1..2]);
==> _[1] = x(1) + x(4)
==> _[2] = x(3) + x(4)
==>
ring r1=0,x,Dp;
poly f1=x3+2*x+1;
poly f2=x10-x5+2x;
poly f3=19;
ideal I=f1,f2,f3;
boolean_std(I);
==> _[1] = 1
==>
ring r2=32003,(x,y,z),Dp;
poly f1=xz+y+20*x^2*y;
poly f2=32002*xy+xz2+y;
ideal I=f1,f2;
boolean_std(I);
==> _[1] = x*z
==> _[2] = y
==>
ring r2=32003,(x,y,z),Dp;
==> // ** redefining r2 (ring r2=32003,(x,y,z),Dp;)
poly f1=xyz+20*x^2*y-3*xz+15;
poly f2=32002*xy+z2;
poly f3=19*x5y;
ideal I=f1,f2,f3;
boolean_std(I);
==> _[1] = 1
==>
|