# Singular          #### D.8.2.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 ==> _=z2+v2+c2-1 ==> _=f2+w2-1 ==> _=e2+d2-1 fastelim(i,xytua,1,0,1); //with hilb,minbase ==> _=z2+v2+c2-1 ==> _=f2+w2-1 ==> _=e2+d2-1 ```

### Misc 