Home Online Manual
Top
Back: elimpartanyr
Forward: findvars
FastBack:
FastForward:
Up: presolve_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.8.3.5 fastelim

Procedure from library presolve.lib (see presolve_lib).

Usage:
fastelim(i,p[h,o,a,b,e,m]); i=ideal, p=polynomial; h,o,a,b,e=integers
p: product of variables to be eliminated;
Optional parameters:
 
  - h !=0: use Hilbert-series driven std-basis computation
  - o !=0: use proc valvars for a - hopefully - optimal ordering of vars
  - a !=0: order vars to be eliminated w.r.t. increasing complexity
  - b !=0: order vars not to be eliminated w.r.t. increasing complexity
  - e !=0: use elimpart first to eliminate easy part
  - m !=0: compute a minimal system of generators
(default: h,o,a,b,e,m = 0,1,0,0,0,0)

Return:
ideal obtained from i by eliminating those variables, which occur in p

Example:
 
LIB "presolve.lib";
ring s=31991,(e,f,x,y,z,t,u,v,w,a,b,c,d),dp;
ideal i = w2+f2-1, x2+t2+a2-1,  y2+u2+b2-1, z2+v2+c2-1,
d2+e2-1, f4+2u, wa+tf, xy+tu+ab;
fastelim(i,xytua,1,1);       //with hilb,valvars
==> _[1]=z2+v2+c2-1
==> _[2]=f2+w2-1
==> _[3]=e2+d2-1
fastelim(i,xytua,1,0,1);     //with hilb,minbase
==> _[1]=z2+v2+c2-1
==> _[2]=f2+w2-1
==> _[3]=e2+d2-1