|  |  D.2.8.18 subrInterred Procedure from librarypoly.lib(see  poly_lib).
 
Example:Usage:
subrInterred(mon,sm,iv);
sm: ideal in a ring r with n + s variables,
 e.g. x_1,..,x_n and t_1,..,t_s
 mon: ideal with monomial generators (not divisible by
any of the t_i) such that sm is contained in the module
k[t_1,..,t_s]*mon[1]+..+k[t_1,..,t_s]*mon[size(mon)]
 iv: intvec listing the variables which are supposed to be used
as x_i
 
Return:
list l:
l[1]=the monomials from mon in the order used
 l[2]=their coefficients after interreduction
 l[3]=l[1]*l[2]
 
Purpose:
Do interred only w.r.t. a subset of variables.
The procedure returns an interreduced system of generators of
sm considered as a k[t_1,..,t_s]-submodule of the free module
k[t_1,..,t_s]*mon[1]+..+k[t_1,..,t_s]*mon[size(mon)]).
 
 |  | LIB "poly.lib";
ring r=0,(x,y,z),dp;
ideal i=x^2+x*y^2,x*y+x^2*y,z;
ideal j=x^2+x*y^2,x*y,z;
ideal mon=x^2,z,x*y;
intvec iv=1,3;
subrInterred(mon,i,iv);
==> [1]:
==>    _[1,1]=z
==>    _[1,2]=xy
==>    _[1,3]=x2
==> [2]:
==>    _[1]=gen(1)
==>    _[2]=y2*gen(2)-gen(2)
==>    _[3]=y*gen(2)+gen(3)
==> [3]:
==>    _[1,1]=z
==>    _[1,2]=xy3-xy
==>    _[1,3]=xy2+x2
subrInterred(mon,j,iv);
==> [1]:
==>    _[1,1]=z
==>    _[1,2]=xy
==>    _[1,3]=x2
==> [2]:
==>    _[1]=gen(1)
==>    _[2]=gen(2)
==>    _[3]=gen(3)
==> [3]:
==>    _[1,1]=z
==>    _[1,2]=xy
==>    _[1,3]=x2
 | 
 
 |