Singular Manual: arnoldNormalForm

| #### D.6.3.3 arnoldNormalForm Procedure from library `arnoldclassify.lib` (see arnoldclassify_lib). Usage: arnoldNormalForm( S [, l]), S string or singclass, l list Assume: If S is of type string, then S is the name of a singularity series as listed by arnoldListAllSeries() and l may contain suitable integer parameters k,r,s. Otherwise S of type singclass is a singularity class from Arnol'd's list. Optional suitable polynomial parameters a,b,c,d can be appended to l. If a,b,c,d are not given, valid values are chosen automatically. Return: string NF is the normal form of the series S if no parameters given, or poly NF is the normal form of the class S with parameters k,r,s. Example:
    LIB "arnoldclassify.lib";
    ring R = 0, (x,y), ds;
    poly a,b,c,d;
    a= 1+y2;
    c= 3+y;
    int k = 5;
    int r = 4;
    int s = 3;
    arnoldNormalForm ("W[12k+1]", k,r,s,a,b,c,d);
    ==> x4+x2y11+x2y13+xy16+3y22+y23
    def f = _;
    def sf = arnoldClassify( f );
    arnoldNormalForm(sf, a,b,c,d);
    ==> x4+x2y11+x2y13+xy16+3y22+y23
    arnoldNormalForm("W[12k+1]");
    ==> x4+x*y^(3*k+1)+y^(4*k+2)
    arnoldNormalForm(sf);
    ==> x4+xy16+y22

User manual for Singular version 4.3.2, 2023, generated by texi2html.