Ignore:
Timestamp:
Jan 18, 2019, 10:34:56 AM (5 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
2986f2519b013685239f8f01cce4e34349a4a8b4937c89ec020469703d18b67056c4ad5c6dbf4459
Parents:
69b0fe5724f956a5da5de2c12339c615ec66a644
Message:
fix: doc (arnoldclassify.lib)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/arnoldclassify.lib

    r69b0fe5 r078a4a  
    6666proc arnoldClassify( poly fPoly )
    6767"USAGE:   arnoldClassify (f); f poly
    68 ASSUME:  The basering is local of characteristic at most 13 and f defines an
     68ASSUME:  The basering is local of characteristic 0 and f defines an
    6969         isolated singularity from Arnol'd's list of corank at most 2.
    70 COMPUTE: singularity class respect to right equivalence and
     70COMPUTE: singularity class with respect to right equivalence and
    7171         invariants used in the process of classification
    7272RETURN:  Singularity class of f of type singclass containing
     
    178178{
    179179//* Classifies Singularities of Corank 2; Series D,J,E,W,X,Y,Z
    180  def br = basering;
    181180
    182181//* Zero 4-jet is no listed singularity
     
    227226
    228227  //* Reduce number of variables
    229   def br = basering;
    230   list L = ringlist(br);
     228  def @br = basering;
     229  list L = ringlist(@br);
    231230  if( size(L[1]) == 0 )
    232   { ring redbr = char(basering), (x(1..f.Corank)), (c,ds); }
     231  { ring red@br = char(basering), (x(1..f.Corank)), (c,ds); }
    233232  else{
    234233    number m = leadcoef(L[1][4][1]);
    235     ring redbr = (char(basering),t), (x(1..f.Corank)), (c,ds);
    236     number m = imap(br, m);
     234    ring red@br = (char(basering),t), (x(1..f.Corank)), (c,ds);
     235    number m = imap(@br, m);
    237236    minpoly = m;
    238237  }
    239    map MapReduce = br, maxideal(1);
     238   map MapReduce = @br, maxideal(1);
    240239  poly fPoly = MapReduce( fPoly );
    241240 }
     
    411410   f.Class = "Y["+string(f.k)+","+string(f.r)+","+string(f.s)+"]";
    412411   f.Modality = 3*f.k - 2;
     412   f.NormalForm, f.Restrictions = NormalFormAndRestrictionsDB(f.Series);
    413413   return( f );
    414414  }
     
    427427   f.Class = "Y["+string(f.k)+","+string(f.r)+","+string(f.s)+"]";
    428428   f.Modality = 3*f.k - 2;
     429   f.NormalForm, f.Restrictions = NormalFormAndRestrictionsDB(f.Series);
    429430   return( f );
    430431  }
     
    895896ASSUME:  base ring is local, f in maxideal(2) has isolated critical point at 0
    896897COMPUTE: result of Splitting Lemma applied to f
    897 RETURN:  poly g in maxideal(3) right equivalent to f
     898RETURN:  polynomial g in maxideal(3) right equivalent to f
    898899EXAMPLE: example arnoldMorseSplit; shows an example
    899900"
    900901{
    901902//* save basering
    902  def br = basering;
     903 def @br = basering;
    903904 int n = nvars(basering);
    904905
     
    914915//* requirement for procedure morse_arnold
    915916 ring ring_ext = char(basering), (x(1..n)), (c, ds);
    916  map Phi = br, maxideal(1);
     917 map Phi = @br, maxideal(1);
    917918
    918919
     
    921922
    922923//* Define inverse map to map f back into original ring
    923  setring br;
     924 setring @br;
    924925 map Phi_inverse = ring_ext, maxideal(1);
    925926
     
    950951
    951952//* save basering;
    952  def br = basering;
     953 def @br = basering;
    953954 n = nvars(basering);
    954955
     
    993994
    994995   //* Find coordinate change Phi2 such that Q(0) != 0
    995    Phi2 = br, maxideal(1);  //* Identity
     996   Phi2 = @br, maxideal(1);  //* Identity
    996997   while( Q == 0 && i<n && k <= n ){
    997998    B2 = maxideal(1);
    998999    B2[k]= var(k)+ var(i);
    999     Phi2 = br, B2;
     1000    Phi2 = @br, B2;
    10001001    imagef = Phi2( f );
    10011002    Q = Coeff( jet(imagef,2), var(i), var(i)^2);
     
    10121013     B2 = maxideal(1);
    10131014     B2[i] = var(i) - P;
    1014      Phi2 = br, B2;
     1015     Phi2 = @br, B2;
    10151016     f = Phi2(f);
    10161017     f = jet(f, Determinacy);
     
    10221023 i = i+1;
    10231024 }
    1024  Phi = br, B1;
     1025 Phi = @br, B1;
    10251026 f = Phi(f);
    10261027 return( f );
     
    10601061
    10611062//* save basering;
    1062  def br = basering;
     1063 def @br = basering;
    10631064 n = nvars(basering);
    10641065
     
    10811082
    10821083//* Reorder variables
    1083  map Phi = br, B;
     1084 map Phi = @br, B;
    10841085 return (Phi(f));
    10851086}
     
    11481149proc arnoldDeterminacy( I, list # )
    11491150"USAGE:   arnoldDeterminacy( I[, m]); I poly or ideal, m int.
    1150 ASSUME:  the basering is local, I is (the Jacobian ideal of) a poly f
     1151ASSUME:  the basering is local, I is the Jacobian ideal of a polynomial f
    11511152         with isolated critical point at 0, m is the Milnor number of f
    11521153COMPUTE: determinacy bound k for f w.r.t. right equivalence
    1153 RETURN:  int k s.th. f is right-k-determined, -1 for infinity
     1154RETURN:  integer k s.th. f is right-k-determined, -1 for infinity
    11541155NOTE:    uses [Cor. A.9.7,GP12]
    11551156EXAMPLE: example arnoldDeterminacy; shows an example"
     
    14221423  if(size(polys) == 0 ){
    14231424    //* Define ring for the NF; NF given in C(x,y)
    1424     def br = basering;
     1425    def @br = basering;
    14251426      if(defined(RingNF) != 0 ) { kill RingNF; }
    14261427    ring RingNF=char(basering),(x,y),(c, ds);
    1427     map Conv = br,maxideal(1);
     1428    map Conv = @br,maxideal(1);
    14281429
    14291430    string nf_str = specialformDB(Series);
     
    14391440
    14401441   //* Define ring for the NF; NF given in C(x,y)
    1441     def br = basering;
     1442    def @br = basering;
    14421443     if(defined(RingNF) != 0 ) { kill RingNF; }
    14431444     ring RingNF=char(basering),(x,y),(c, ds);
    1444      map Conv = br,maxideal(1);
     1445     map Conv = @br,maxideal(1);
    14451446
    14461447   //* Map Polynomial parameter
     
    14791480
    14801481 //* Map poly nf back to basering;
    1481  setring br;
     1482 setring @br;
    14821483 map ConvBack = RingNF, maxideal(1);
    14831484  return( ConvBack(nf) );
     
    17391740        f.SpecialForm = \"((x + y^k)^2 + y^(2*k+s))*(x2 + y^(2*k+r))\";
    17401741        f.Restrictions = \"(jet(a,0)!=0)&&(deg(a)<=(k-2))&&(k>1)&&(jet(b,0)!=0)
    1741         &&(1<=s)&&(s<=7)\";";
     1742        &&(1<=s)&&(s<=r)\";";
    17421743        write(l, "Y[k,r,s]", s);
    17431744
     
    17511752        f.NormalForm = \" x^(4+r)+ a(y)*x2*y2 + y^(4+s)\";
    17521753        f.SpecialForm = \" x^(4+r)+ x2*y2 + y^(4+s)\";
    1753         f.Restrictions = \"(deg(a)==0)&&(jet(a,0)!=0)&&(1<=s)&&(s<=7)\";";
     1754        f.Restrictions = \"(deg(a)==0)&&(jet(a,0)!=0)&&(1<=s)&&(s<=r)\";";
    17541755        write(l, "Y[1,r,s]", s);
    17551756
Note: See TracChangeset for help on using the changeset viewer.