#### D.6.8.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 occured,  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 trival equimultiple sections) and the polynomial p_F=F,
        l[2]=1 if some error has occured,  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.

User manual for Singular version 4-0-3, 2016, generated by texi2html.