|
D.5.15.4 resolve
Procedure from library resolve.lib (see resolve_lib).
- Usage:
- resolve (J); or resolve (J,i[,k]);
J ideal
i,k int
- Compute:
- a resolution of J,
if i > 0 debugging is turned on according to the following switches:
j1: value 0 or 1; turn off or on correctness checks in all steps
j2: value 0 or 2; turn off or on debugCenter
j3: value 0 or 4; turn off or on debugBlowUp
j4: value 0 or 8; turn off or on debugCoeff
j5: value 0 or 16:turn off or on debugging of Intersection with E^-
j6: value 0 or 32:turn off or on stop after pass through the loop
i=j1+j2+j3+j4+j5+j6
- Return:
- a list l of 2 lists of rings
l[1][i] is a ring containing a basic object BO, the result of the
resolution.
l[2] contains all rings which occurred during the resolution process
- Note:
- result may be viewed in a human readable form using presentTree()
Example:
| LIB "resolve.lib";
ring R=0,(x,y,z),dp;
ideal J=x3+y5+yz2+xy4;
list L=resolve(J,0);
def Q=L[1][7];
setring Q;
showBO(BO);
==>
==> ==== Ambient Space:
==> _[1]=0
==>
==> ==== Ideal of Variety:
==> _[1]=x(1)^4*x(3)^2*y(1)+x(1)^2+y(1)+1
==>
==> ==== Exceptional Divisors:
==> [1]:
==> _[1]=1
==> [2]:
==> _[1]=y(1)
==> [3]:
==> _[1]=1
==> [4]:
==> _[1]=x(1)
==> [5]:
==> _[1]=x(3)
==>
==> ==== Images of variables of original ring:
==> _[1]=x(1)^6*x(3)^5*y(1)^2
==> _[2]=x(1)^4*x(3)^3*y(1)
==> _[3]=x(1)^7*x(3)^6*y(1)^2
==>
|
|