Home Online Manual
Back: linearpart
Forward: solvelinearpart
FastBack: ffsolve_lib
FastForward: solve_lib
Up: presolve_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.8.2.9 tolessvars

Procedure from library presolve.lib (see presolve_lib).

tolessvars(id [,s1,s2] ); id poly/ideal/vector/module/matrix, s1=string (new ordering)
[default: s1="dp" or "ds" depending on whether the first block of the old ordering is a p- or an s-ordering, respectively]

If id contains all vars of the basering: empty list.
Else: ring R with the same char as the basering, but possibly less variables (only those variables which actually occur in id). In R an object IMAG (image of id under imap) is stored.

If printlevel >=0, display ideal of vars, which have been omitted from the old ring.

LIB "presolve.lib";
ring r  = 0,(x,y,z),dp;
ideal i = y2-x3,x-3,y-2x;
def R_r = tolessvars(i,"lp");
==> // variables which did not occur:
==> z
==> // 'tolessvars' created a ring, in which an object IMAG is stored.
==> // To access the object, type (if the name R was assigned to the return v\
==>         setring R; IMAG; 
setring R_r;
==> // ring: (0),(x,y),(lp(2),C);
==> // minpoly = 0
==> // objects belonging to this ring:
==> // IMAG                           [0]  ideal, 3 generator(s)
==> IMAG[1]=-x3+y2
==> IMAG[2]=x-3
==> IMAG[3]=-2x+y
kill R_r;