|
3.3 eliminate
Syntax:
eliminate ( ideal_expression, product_of_ring_variables)
eliminate ( module_expression, product_of_ring_variables)
eliminate ( ideal_expression, product_of_ring_variables, intvec_hilb )
eliminate ( module_expression, product_of_ring_variables, intvec_hilb )
Type:
- the same as the type of the first argument
Purpose:
- eliminates variables occurring as factors of the second argument from an
ideal, resp. module, by intersecting it with the subring not containing
these variables.
Note: eliminate does not need a special ordering nor a Groebner basis as input.
Example:
| ring r=0,(e,f,h,a),Dp;
matrix d[4][4];
d[1,2]=-h; d[1,3]=2*e; d[2,3]=-2*f;
ncalgebra(1,d); // this is U(sl_2), tensored with K[a] over K
option(redSB);
option(redTail);
poly p=4*e*f+h^2-2*h-a; // this is central element with parameter
ideal I=e^3,f^3, h^3-4*h,p;
ideal J=eliminate(I,e*f*h);
// this will give us the central character of I
J;
==> J[1]=a3-32a2+192a
// now we try to eliminate h,
// that is to intersect I with subalgebra [e,f]
// which is not admissible subalgebra!
eliminate(I,h);
==> ? no elimination is possible: subalgebra is not admissible
==> ? error occurred in line 15: `eliminate(I,h); `
eliminate(I,a);
==> _[1]=h3-4h
==> _[2]=fh2-2fh
==> _[3]=f3
==> _[4]=eh2+2eh
==> _[5]=2efh-h2-2h
==> _[6]=e3
|
See
ideal;
module;
std.
|