Resolution
Global GMS
ES Strata
Build. Blocks
Comb. Appl.
HCA Proving
Arrangements
Branches
Classify
Coding
Deformations
Equidim Part
Existence
Finite Groups
Flatness
Genus
Hilbert Series
Membership
Nonnormal Locus
Normalization
Primdec
Puiseux
Plane Curves
Saturation
Solving
Space Curves
Spectrum
Transversals and Tangents: SINGULAR example
   LIB "primdec.lib"; option(redSB);

Treating s and t as variables, we now define the ideal I and the excess components:

  ring R = 0, (s,t,a,b,c,d,e,f,g,h,k,l), (dp(2), dp(10));
  ideal I = el-g^2, ek-gf, ak-dc, ah-c^2;
  matrix M[2][5] =    s  ,    1-s   ,       -2     ,   1-t    ,   t   ,
                   al-d^2, 2*(bl-dg), 2*(2bk-cg-df), 2*(bh-cf), eh-f^2;
  I = I + minor(M,2);
  I=std(I);         // standard basis of I

  matrix Q[4][4] =  a , b , c , d ,
                    b , e , f , g ,
                    c , f , h , k ,
                    d , g , k , l ;
  ideal E1 = std(minor(Q,2));
  ideal E2 = g, f, e, d, c, b, a;  // intersection at L1
  ideal E3 = l, k, h, g, f, d, c;  // intersection at L2
Now remove the excess components from I:
  I=sat(I,E1)[1];   // approximately 80 seconds
  I=sat(I,E2)[1];   // approximately 40 seconds
  I=sat(I,E3)[1];   // approximately 30 seconds
Decompose the resulting ideal, making sure that computations will be done in the complement of <st(t-1)(s-1)(s-t)>:
  ideal L = s, t, t-1, s-1, s-t;
  list F = facstd(I, L);   // approximately 2-5 minutes
                           // depending on the random seed
  size(F);
==>
  8     // for some random seeds also 7 or 9
     
Note that to a certain extent the output of facstd depends on the random seed used at the start of SINGULAR .
Main Page

KL, 06/03 http://www.singular.uni-kl.de