|
D.6.12.3 esStratum
Procedure from library equising.lib (see equising_lib).
- Usage:
- esStratum(F[,m,L]); F poly, m int, L list
- Assume:
- F defines a deformation of a reduced bivariate polynomial f
and the characteristic of the basering does not divide mult(f).
If nv is the number of variables of the basering, then the first
nv-2 variables are the deformation parameters.
If the basering is a qring, ideal(basering) must only depend
on the deformation parameters.
- Compute:
- equations for the stratum of equisingular deformations with
fixed (trivial) section.
- Return:
- list l: either consisting of a list and an integer, where
| l[1][1]=ideal defining the equisingularity stratum
l[1][2]=ideal defining the part of the equisingularity stratum where all
equimultiple sections through the non-nodes of the reduced total
transform are trivial sections
l[2]=1 if some error has occurred, l[2]=0 otherwise;
| or consisting of a ring and an integer, where
| l[1]=ESSring is a ring extension of basering containing the ideal ES
(describing the ES-stratum), the ideal ES_all_triv (describing the
part with trivial equimultiple sections) and the polynomial p_F=F,
l[2]=1 if some error has occurred, l[2]=0 otherwise.
|
- Note:
- L is supposed to be the output of hnexpansion (with the given ordering
of the variables appearing in f).
If m is given, the ES Stratum over A/maxideal(m) is computed.
This procedure uses execute or calls a procedure using
execute .
printlevel>=2 displays additional information.
Example:
| LIB "equising.lib";
int p=printlevel;
printlevel=1;
ring r = 0,(a,b,c,d,e,f,g,x,y),ds;
poly F = (x2+2xy+y2+x5)+ax+by+cx2+dxy+ey2+fx3+gx4;
list M = esStratum(F);
M[1][1];
==> _[1]=g
==> _[2]=f
==> _[3]=b
==> _[4]=a
==> _[5]=-4c+4d-4e+d2-4ce
printlevel=3; // displays additional information
esStratum(F,2) ; // ES-stratum over Q[a,b,c,d,e,f,g] / <a,b,c,d,e,f,g>^2
==> //
==> // Compute HN expansion
==> // ---------------------
==> // finished
==> //
==> // Blowup Step 1 completed
==> // Blowup Step 2 completed
==> // Blowup Step 3 completed
==> // 1 branch finished
==> //
==> // Elimination starts:
==> // -------------------
==> //
==> // Remove superfluous equations:
==> // -----------------------------
==> // finished
==> //
==> // output of 'esStratum' is a list consisting of:
==> // _[1][1] = ideal defining the equisingularity stratum
==> // _[1][2] = ideal defining the part of the equisingularity stratum
==> // where all equimultiple sections are trivial
==> // _[2] = 0
==> [1]:
==> [1]:
==> _[1]=b
==> _[2]=a
==> _[3]=c-d+e
==> _[4]=g
==> _[5]=f
==> [2]:
==> _[1]=g
==> _[2]=f
==> _[3]=d-2e
==> _[4]=c-e
==> _[5]=b
==> _[6]=a
==> [2]:
==> 0
ideal I = f-fa,e+b;
qring q = std(I);
poly F = imap(r,F);
esStratum(F);
==> //
==> // Compute HN expansion
==> // ---------------------
==> // finished
==> //
==> // Blowup Step 1 completed
==> // Blowup Step 2 completed
==> // Blowup Step 3 completed
==> // 1 branch finished
==> //
==> // Elimination starts:
==> // -------------------
==> //
==> // Remove superfluous equations:
==> // -----------------------------
==> // finished
==> //
==> // output of 'esStratum' is a list consisting of:
==> // _[1][1] = ideal defining the equisingularity stratum
==> // _[1][2] = ideal defining the part of the equisingularity stratum
==> // where all equimultiple sections are trivial
==> // _[2] = 0
==> [1]:
==> [1]:
==> _[1]=e
==> _[2]=a
==> _[3]=-4c+4d+d2
==> _[4]=g
==> [2]:
==> _[1]=g
==> _[2]=e
==> _[3]=d
==> _[4]=c
==> _[5]=a
==> [2]:
==> 0
printlevel=p;
| See also:
esIdeal;
isEquising.
|