|
D.5.4.3 jungfib
Procedure from library resjung.lib (see resjung_lib).
- Usage:
- jungfib(J[,is_noeth]);
J = ideal
j = int
- Assume:
- J = two dimensional ideal
- Return:
- a list l of rings
l[i] is a ring containing two Ideals: QIdeal and BMap.
BMap defines a birational morphism from V(QIdeal)-->V(J), such that
V(QIdeal) has only quasi-ordinary singularities.
If is_noeth=1 the algorithm assumes J is in noether position with respect to
the last two variables. As a default or if is_noeth = 0 the algorithm computes
a coordinate change such that J is in noether position.
NOTE: since the noether position algorithm is randomized the performance
can vary significantly.
Example:
| LIB "resjung.lib";
//Computing a resolution of singularities of the variety z2-x3-y3
ring r = 0,(x,y,z),dp;
ideal I = z2-x3-y3;
//The ideal is in noether position
list l = jungfib(I,1);
def R1 = l[1];
def R2 = l[2];
setring R1;
QIdeal;
==> QIdeal[1]=x(2)^6*y(1)^4-x(2)^6*y(1)^3-x^3
BMap;
==> BMap[1]=x
==> BMap[2]=x(2)^2*y(1)
==> BMap[3]=x(2)^3*y(1)^2
setring R2;
QIdeal;
==> QIdeal[1]=x(1)^6*y(0)^3-x(1)^6*y(0)^2+x^3
BMap;
==> BMap[1]=x
==> BMap[2]=x(1)^2*y(0)
==> BMap[3]=x(1)^3*y(0)
|
|