Changeset 7ef5b6 in git


Ignore:
Timestamp:
Sep 24, 2010, 5:15:05 PM (14 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', '38077648e7239f98078663eb941c3c979511150a')
Children:
f9c3c3dfd663c955942c98e53c85fa5af50c427a
Parents:
22a129e7a48031d6420b3e495ec7f895ad49c0d2
Message:
format

git-svn-id: file:///usr/local/Singular/svn/trunk@13278 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/primdecint.lib

    r22a129 r7ef5b6  
    2929proc primdecZ(ideal I, list #)
    3030"USAGE:  primdecZ(I); I ideal
    31 NOTE:    If size(#) > 0, then #[1] is the number of available processors for 
    32          the computation. Parallelization is just applicable using 32-bit Singular 
     31NOTE:    If size(#) > 0, then #[1] is the number of available processors for
     32         the computation. Parallelization is just applicable using 32-bit Singular
    3333         version since MP-links are not compatible with 64-bit Singular version.
    3434RETURN:  a list pr of primary ideals and their associated primes:
     
    4242   if(size(I)==0){return(list(ideal(0),ideal(0)));}
    4343
    44    
     44
    4545   //--------------------  Initialize optional parameters  ------------------------
    4646   if(size(#) > 0)
     
    6969            "========================================================================";
    7070            n = 1;
    71          } 
     71         }
    7272         ideal TES = #[2];
    7373      }
     
    7979   }
    8080
    81    
     81
    8282   if(deg(I[1])==0)
    8383   {
     
    8888      ideal J=stdZ(I);
    8989   }
    90    
     90
    9191   ideal K,N;
    9292   def R=basering;
     
    108108      number q=imap(R,q);
    109109      //=== computes the primes occuring in a generator of I intersect Z
    110  
    111      
    112      
     110
     111
     112
    113113      list L = primefactors(q);
    114      
    115 
    116      
     114
     115
     116
    117117      list A;
    118      
     118
    119119      ideal J = imap(R,J);
    120120
    121121
    122      
     122
    123123      for(j=1;j<=size(L[3]);j++)
    124124      {
     
    126126
    127127      }
    128      
     128
    129129      if(printlevel >= 10)
    130130      {
     
    157157         if(t > 60) { t = 60; }
    158158         int i_sleep = system("sh", "sleep "+string(t));
    159          
     159
    160160         j = n + 2;
    161  
     161
    162162         while(j <= size(L[3]) + 1)
    163163         {
     
    167167               {
    168168                  A[size(A)+1] = read(l(i));                             // read the result from l(i)
    169                  
     169
    170170                  if(j <= size(L[3]))
    171171                  {
     
    198198      }
    199199
    200      
     200
    201201      setring R;
    202202      list A = imap(Rhelp,A);
    203       if(printlevel >= 10) 
    204       { 
     203      if(printlevel >= 10)
     204      {
    205205         "A is computed in "+string(rtimer - RT)+" seconds.";
    206206      }
     
    209209      //=== computes for all p in L the minimal associated primes of IZ/p[variables]
    210210         p = int(A[i][2]);
    211          if(printlevel >= 10) 
    212          {
    213             "p = "+string(p); 
     211         if(printlevel >= 10)
     212         {
     213            "p = "+string(p);
    214214            RT = rtimer;
    215215         }
     
    240240               K=B[j];
    241241               //=== compute maximal independent set for KZ/p[variables]
    242              
     242
    243243               setring S;
    244244               J=imap(R,K);
     
    268268            {
    269269               K=B[j][2],p;
    270                K=stdZ(K);             
     270               K=stdZ(K);
    271271               Q=B[j][1],p;
    272272               Q=stdZ(Q);
     
    291291         }
    292292      }
    293      
     293
    294294      setring R;
    295295      if(!ex){return(P);}
    296296      J=stdZ(J);
    297       TQ=intersectZ(TQ,TES);   
     297      TQ=intersectZ(TQ,TES);
    298298      if(size(reduce(TQ,J))!=0)
    299299      {
     
    304304         while(size(reduce(intersectZ(W,TQ),J))!=0)
    305305         {
    306             //W=stdZ(addIdealZ(I,K^m)); 
     306            //W=stdZ(addIdealZ(I,K^m));
    307307            W=stdZ(addIdealZ(I,specialPowerZ(K,m)));
    308308            m++;
     
    347347   if(h!=1)
    348348   {
    349        M=primdecZ(J,n,Y);       
     349       M=primdecZ(J,n,Y);
    350350       j=0;
    351351       //=== remove useless primary ideals
     
    401401"
    402402{
    403    if(size(I)==0){return(list(ideal(0)));} 
     403   if(size(I)==0){return(list(ideal(0)));}
    404404   if(deg(I[1])==0)
    405405   {
     
    425425      number q=imap(R,q);
    426426      //=== computes the primes occuring in a generator of I intersect Z
    427       list L=PollardRho(q,5000,1); 
     427      list L=PollardRho(q,5000,1);
    428428      for(i=1;i<=size(L);i++)
    429429      {
     
    435435         setring S;
    436436         ideal J=imap(R,J);
    437          list A=minAssGTZ(J);   
     437         list A=minAssGTZ(J);
    438438         setring R;
    439439         B=imap(S,A);
     
    460460   ideal J=imap(R,J);
    461461   J=std(J);
    462    //=== the primary decomposition over Q which gives the primary decomposition 
     462   //=== the primary decomposition over Q which gives the primary decomposition
    463463   //=== of I:h for a suitable integer h
    464464   list pr=minAssGTZ(J);
     
    536536"
    537537{
    538    if(size(I)==0){return(0);} 
     538   if(size(I)==0){return(0);}
    539539   if(deg(I[1])==0)
    540540   {
     
    562562      number q=imap(R,q);
    563563      //=== computes the primes occuring in a generator of I intersect Z
    564       list L=PollardRho(q,5000,1); 
     564      list L=PollardRho(q,5000,1);
    565565      for(i=1;i<=size(L);i++)
    566566      {
     
    573573         ideal J=imap(R,J);
    574574         j=nvars(R)-dim(std(J));
    575          if(j<m){m=j;}   
     575         if(j<m){m=j;}
    576576         setring Rhelp;
    577577         kill S;
     
    587587   J=std(J);
    588588   m=nvars(R)-dim(J);
    589    //=== the height over Q 
     589   //=== the height over Q
    590590   //=== of I:h for a suitable integer h
    591591   setring R;
     
    628628"
    629629{
    630    if(size(I)==0){return(ideal(0));} 
     630   if(size(I)==0){return(ideal(0));}
    631631   if(deg(I[1])==0)
    632632   {
     
    653653      number q=imap(R,q);
    654654      //=== computes the primes occuring in a generator of I intersect Z
    655       list L=PollardRho(q,5000,1); 
     655      list L=PollardRho(q,5000,1);
    656656      for(i=1;i<=size(L);i++)
    657657      {
     
    663663         setring S;
    664664         ideal J=imap(R,J);
    665          ideal A=radical(J);   
     665         ideal A=radical(J);
    666666         setring R;
    667667         B=imap(S,A);
     
    758758      number s;
    759759      //=== computes the primes occuring in a generator of I intersect Z
    760       list L=PollardRho(q,5000,1); 
     760      list L=PollardRho(q,5000,1);
    761761      list Le;
    762762      for(i=1;i<=size(L);i++)
     
    791791            {
    792792               //=== p is of multiplicity >1 in q
    793                list A=minAssGTZ(J); 
     793               list A=minAssGTZ(J);
    794794               j=0;
    795795               while(j<size(A))
     
    825825                  N=stdZ(N);
    826826                  Q=extractZ(N,j,IS,B);
    827                   TQ=intersectZ(TQ,Q);         
     827                  TQ=intersectZ(TQ,Q);
    828828               }
    829829               setring Rhelp;
     
    831831            else
    832832            {
    833                //=== p is of multiplicity 1 in q we can compute the 
     833               //=== p is of multiplicity 1 in q we can compute the
    834834               //=== equidimensional part directly
    835835               ideal E=equidimMax(J);
     
    853853   ideal J=imap(R,J);
    854854   J=std(J);
    855    //=== the equidimensional part over Q which gives the equdimensional part 
     855   //=== the equidimensional part over Q which gives the equdimensional part
    856856   //=== of I:h for a suitable integer h
    857857   ideal E=1;
     
    866866   //=== find h in Z such that I is the intersection of I:h and I,h
    867867   //=== and I:h =IQ[variables] intersected with Z[varables]
    868    int h =coefZ(J)[2];         
     868   int h =coefZ(J)[2];
    869869   J=J,h;
    870870   //=== call equidimensional part over Z for I,h
     
    872872   if(h!=1)
    873873   {
    874        M=equidimZ(J); 
     874       M=equidimZ(J);
    875875       if(he==heightZ(M))
    876876       {
    877877          E=intersectZ(M,E);
    878        }   
     878       }
    879879   }
    880880   return(E);
     
    902902
    903903{
    904    
     904
    905905   def R = basering;
    906  
    907    list rp = ringlist(R); 
     906
     907   list rp = ringlist(R);
    908908   rp[1] = p;
    909909   def Rp = ring(rp);
     
    915915      list A = minAssGTZ(J);
    916916      setring R;
    917      
     917
    918918      list A = imap(Rp,A);
    919919
    920920      return(list(A,p,nu));
    921  
    922    }
    923    
     921
     922   }
     923
    924924   else
    925    
    926    {
    927      
     925
     926   {
     927
    928928      list A = primdecGTZ(J);
    929      
     929
    930930      setring R;
    931      
     931
    932932      list A = imap(Rp,A);
    933      
     933
    934934      return(list(A,p,nu));
    935    
    936    } 
     935
     936   }
    937937
    938938}
     
    963963static proc coefZ(ideal I)
    964964{
    965    //assume === IQ[variables]=<g_1,...,g_s>, Groebner basis, g_i in Z[variables] 
    966    //=== computes an integer h such that 
     965   //assume === IQ[variables]=<g_1,...,g_s>, Groebner basis, g_i in Z[variables]
     966   //=== computes an integer h such that
    967967   //=== <g_1,...,g_s>Z[variables]:h^infinity = IQ[variables] intersected with Z[variables]
    968968   //=== returns a list with IQ[variables] intersected with Z[variables] and h
     
    10451045   def R=basering;
    10461046   ideal P=B[j];
    1047    
     1047
    10481048   //=== first compute a pseudo primary ideal I, radical of I is P
    10491049   //=== method of Eisenbud
    1050    //ideal I=addIdealZ(J,specialPowerZ(P,20)); 
    1051  
     1050   //ideal I=addIdealZ(J,specialPowerZ(P,20));
     1051
    10521052   //=== method of Shimoyama-Yokoyama
    1053    poly s=separatorsZ(j,B);   
     1053   poly s=separatorsZ(j,B);
    10541054   ideal I=satZ(J,s);
    10551055   //=== size(L)=0 means P is maximal ideal and I is primary
     
    10681068         ideal I=imap(S,I);
    10691069         I[1]=0;
    1070          I=simplify(I,2); 
    1071          //=== this is our way to obtain the coefficients in Z[u] of the 
     1070         I=simplify(I,2);
     1071         //=== this is our way to obtain the coefficients in Z[u] of the
    10721072         //=== leading terms of the Groebner basis above
    10731073         string quotring=prepareQuotientring(nvars(basering)-L[1][3]);
     
    11041104      {
    11051105         if(deg(C[i])>0){h=h*C[i];}  //das muss noch besser gemacht werden, nicht ausmultiplizieren!
    1106       } 
     1106      }
    11071107      setring Shelp;
    11081108      poly h=imap(R,h);
    1109       ideal fac=factorize(h,1);     
     1109      ideal fac=factorize(h,1);
    11101110      setring R;
    11111111      ideal fac=imap(Shelp,fac);
    11121112      for(i=1;i<=size(fac);i++)
    11131113      {
    1114          I=satZ(I,fac[i]); 
     1114         I=satZ(I,fac[i]);
    11151115      }
    11161116   }
     
    11901190static proc maxIndependSet (ideal j)
    11911191{
    1192  
     1192
    11931193//=== this is from primdec.lib, it is static there, should be imported later if it is no more static
    11941194  int n,k,di;
    1195  
     1195
    11961196  list resu,hilf;
    11971197  if(size(j)==0)
     
    14211421         y2z2w+(-y*4+2*y^3-y^2)*z3;
    14221422
    1423 ring R4=integer,(w,z,y,x),dp; 
     1423ring R4=integer,(w,z,y,x),dp;
    14241424ideal I=-2*yxzw+(-yx-y^2+y)*z^2,
    14251425         xw^2-yz^2,
     
    14521452        -y^2*(z+2)^2+2*(z+2)^4+x2-y2+(z+2)^2,
    14531453        y3z9+3y2z10+3yz11+z12-y2z2+2z4;
    1454  
    1455 ring R9=integer,(w,z,y,x),dp; 
     1454
     1455ring R9=integer,(w,z,y,x),dp;
    14561456ideal I=630,
    14571457        ((y^2-y)*x-y^3+y^2)*z^2,
    14581458        (x-y)*zw,
    14591459        (x-y^2)*zw+(-y^2+y)*z^2,
    1460         (-x^2+x)*w^2+(-yx+y)*zw; 
    1461 
    1462 ring R10=integer,(w,z,y,x),dp; 
     1460        (-x^2+x)*w^2+(-yx+y)*zw;
     1461
     1462ring R10=integer,(w,z,y,x),dp;
    14631463ideal I=1260,
    14641464        -yxzw+(-y^2+y)*z^2,
    14651465        (-x^2+x)*w^2-yxzw,
    14661466        ((-y^2+y)*x-y^3+2*y^2-y)*z^3,
    1467         (y^2-y)*z^2*w+(-y^2+y)*z^2*w+(-y^2+y)*z^3; 
     1467        (y^2-y)*z^2*w+(-y^2+y)*z^2*w+(-y^2+y)*z^3;
    14681468
    14691469ring R11=integer,(w,z,y,x),dp;
    1470 ideal I=(4*y^2*x^2+(4*y^3+4*y^2-y)*x-y^2-y)*z^2, 
    1471 Â         (x+y+1)*zw+(-4*y^2*x-4*y^3-4*y^2)*z^2, 
    1472 Â         (-x-2*y^2 - 2*y - 1)*zw + (8*y^3*x + 8*y^4 + 8*y^3 + 2*y^2+y)*z^2,   
    1473          ((y^3 + y^2)*x - y^2 - y)*z^2, 
    1474          (y +1)*zw + (-y^3 -y^2)*z^2, 
    1475          (x + 1)*zw +(- y^2 -y)*z^2, 
    1476          (x^2 +x)*w^2 + (-yx - y)*zw; 
    1477 
    1478 ring R12=integer,(w,z,y,x),dp; 
     1470ideal I=(4*y^2*x^2+(4*y^3+4*y^2-y)*x-y^2-y)*z^2,
     1471         (x+y+1)*zw+(-4*y^2*x-4*y^3-4*y^2)*z^2,
     1472         (-x-2*y^2 - 2*y - 1)*zw + (8*y^3*x + 8*y^4 + 8*y^3 + 2*y^2+y)*z^2,
     1473         ((y^3 + y^2)*x - y^2 - y)*z^2,
     1474         (y +1)*zw + (-y^3 -y^2)*z^2,
     1475         (x + 1)*zw +(- y^2 -y)*z^2,
     1476         (x^2 +x)*w^2 + (-yx - y)*zw;
     1477
     1478ring R12=integer,(w,z,y,x),dp;
    14791479ideal I=72,
    14801480        ((y^3 + y^2)*x - y^2 - y)*z^2,
     
    14821482        (x + 1)*zw + (-y^2 -y)*z^2, (x^2 + x)*w^2 + (-yx - y)*zw;
    14831483
    1484 ring R13=integer,(w,z,y,x),dp; 
     1484ring R13=integer,(w,z,y,x),dp;
    14851485ideal I= (((12*y+8)*x^2 +(2*y+2)*x)*zw +((-15*y^2 -4*y)*x-4*y^2 -y)*z^2,
    1486         -x*w^2 +((-12*y -8)*x+2*y)*zw +(15*y^2+4*y)*z^2, 
    1487         (81*y^4*x^2 +(-54*y^3 -12*y^2)*x-12*y^3 -3*y^2)*z^3,  
    1488         (-24*yx+6*y^2-6*y)*z^2*w + (-81*y^4*x + 81*y^3 + 24*y^2)*z^3, 
    1489         (48*x^2 + (-30*y + 12)*x - 6*y)*z^2*w + ((81*y^3 -54*y^2 -24*y)*x-21*y^2 -6*y)*z^3, 
    1490         (-96*yx-18*y^3 +18*y^2-24*y)*z^2*w +(243*y^5*x-243*y^4 +72*y^3+48*y^2)*z^3, 
    1491          6*y*z^2*w^2 +((576*y+384)*x^2 + (-81*y^3 -306*y^2 -168*y+96)*x+81*y^2-18*y)*z^3*w +((-720*y^2 - 192*y)*x + 450*y^3 - 60*y^2 - 48*y)*z^4); 
    1492 
    1493 ring R14=integer,(x(1),x(2),x(3),x(4)),dp; 
     1486        -x*w^2 +((-12*y -8)*x+2*y)*zw +(15*y^2+4*y)*z^2,
     1487        (81*y^4*x^2 +(-54*y^3 -12*y^2)*x-12*y^3 -3*y^2)*z^3, 
     1488        (-24*yx+6*y^2-6*y)*z^2*w + (-81*y^4*x + 81*y^3 + 24*y^2)*z^3,
     1489        (48*x^2 + (-30*y + 12)*x - 6*y)*z^2*w + ((81*y^3 -54*y^2 -24*y)*x-21*y^2 -6*y)*z^3,
     1490        (-96*yx-18*y^3 +18*y^2-24*y)*z^2*w +(243*y^5*x-243*y^4 +72*y^3+48*y^2)*z^3,
     1491         6*y*z^2*w^2 +((576*y+384)*x^2 + (-81*y^3 -306*y^2 -168*y+96)*x+81*y^2-18*y)*z^3*w +((-720*y^2 - 192*y)*x + 450*y^3 - 60*y^2 - 48*y)*z^4);
     1492
     1493ring R14=integer,(x(1),x(2),x(3),x(4)),dp;
    14941494ideal I= 181*49^2,
    14951495         x(4)^4,
    14961496         x(1)*x(4)^3,
    14971497         x(1)*x(2)*x(4)^2,
    1498          x(2)^2*x(4)^2, 
     1498         x(2)^2*x(4)^2,
    14991499         x(2)^2*x(3)*x(4),
    1500          x(1)*x(2)*x(3)*x(4), 
     1500         x(1)*x(2)*x(3)*x(4),
    15011501         x(1)*x(3)^2*x(4),
    1502          x(3)^3*x(4); 
    1503 
    1504  
     1502         x(3)^3*x(4);
     1503
     1504
    15051505ring R15=integer,(x,y,z),dp;  
    15061506ideal I=32003*181*64,
    15071507        ((z^2-z)*y^2 + (z^2 -z)*y)*x; (z*y^3 + z*y^2)*x,
    1508         (y^4 - y^2)*x, (z^2 - z)*y*x^2, (y^3 - y^2)*x^2, 
     1508        (y^4 - y^2)*x, (z^2 - z)*y*x^2, (y^3 - y^2)*x^2,
    15091509        (z^3 - z^2)*x^4 + (2*z^3 -2*z^2)*x^3 + (z^3 -z^2)*x^2,
    1510         z*y^2*x^2, z*y*x^4 +z*y*x^3, 
    1511         2*y^2*x^4 +6*y^2*x^3 +6*y^2*x^2 + (y^3 +y^2)*x, z*x^5 + (z^2 +z)*x^4 + (2*z^2 -z)*x^3 + (z^2 -z)*x^2, 
    1512         y*x^6 + 3*y*x^5 + 3*y*x^4 + y*x^3; 
    1513 
    1514 
    1515 ring R16=integer,(x(1),x(2),x(3),x(4),x(5)),dp; 
    1516 ideal I=x(5)^5, 
     1510        z*y^2*x^2, z*y*x^4 +z*y*x^3,
     1511        2*y^2*x^4 +6*y^2*x^3 +6*y^2*x^2 + (y^3 +y^2)*x, z*x^5 + (z^2 +z)*x^4 + (2*z^2 -z)*x^3 + (z^2 -z)*x^2,
     1512        y*x^6 + 3*y*x^5 + 3*y*x^4 + y*x^3;
     1513
     1514
     1515ring R16=integer,(x(1),x(2),x(3),x(4),x(5)),dp;
     1516ideal I=x(5)^5,
    15171517        x(1)*x(5)^4,
    1518         x(1)*x(2)*x(5)^3, 
    1519         x(2)^2*x(5)^3, 
    1520         x(2)^2*x(3)*x(5)^2, 
    1521         x(1)*x(2)*x(3)*x(5)^2, 
    1522         x(1)*x(3)^2*x(5)^2,  
    1523         x(3)^3*x(5)^2, 
     1518        x(1)*x(2)*x(5)^3,
     1519        x(2)^2*x(5)^3,
     1520        x(2)^2*x(3)*x(5)^2,
     1521        x(1)*x(2)*x(3)*x(5)^2,
     1522        x(1)*x(3)^2*x(5)^2, 
     1523        x(3)^3*x(5)^2,
    15241524        x(3)^3*x(4)*x(5),
    1525         x(1)*x(3)^2*x(4)*x(5), 
    1526         x(1)*x(2)*x(3)*x(4)*x(5), 
    1527         x(2)^2*x(3)*x(4)*x(5), 
    1528         x(2)^2*x(4)^2*x(5),  
     1525        x(1)*x(3)^2*x(4)*x(5),
     1526        x(1)*x(2)*x(3)*x(4)*x(5),
     1527        x(2)^2*x(3)*x(4)*x(5),
     1528        x(2)^2*x(4)^2*x(5), 
    15291529        x(1)*x(2)*x(4)^2*x(5),
    1530         x(1)*x(4)^3*x(5), 
    1531         x(4)^4*x(5); 
     1530        x(1)*x(4)^3*x(5),
     1531        x(4)^4*x(5);
    15321532      I=intersectZ(I,ideal(64*181,x(1)^2));
    15331533
    15341534ring R17=integer,(x,y,z),dp;  
    15351535ideal I=374,
    1536         (z+2)^8-140z6+2622*(z+2)^4-1820*(z+2)^2+169, 
    1537 Â Â Â Â     17y*(z+2)^4-374*y*(z+2)^2+221y+2z7-281z5+5240z3-3081z, 
    1538 Â Â Â    Â  204y2+136yz3-3128yz+z6-149z4+2739z2+117, 
    1539 Â Â Â Â     17xz4-374xz2+221x+2z7-281z5+5240z3-3081z, 
    1540 Â Â Â Â     136xy-136xz-136yz+2z6-281z4+5376z2-3081, 
    1541 Â Â Â Â     204x2+136xz3-3128xz+z6-149z4+2739z2+117; 
    1542 
    1543 ring R18=integer,(B,D,F,b,d,f),dp; 
     1536        (z+2)^8-140z6+2622*(z+2)^4-1820*(z+2)^2+169,
     1537        17y*(z+2)^4-374*y*(z+2)^2+221y+2z7-281z5+5240z3-3081z,
     1538      Â  204y2+136yz3-3128yz+z6-149z4+2739z2+117,
     1539        17xz4-374xz2+221x+2z7-281z5+5240z3-3081z,
     1540        136xy-136xz-136yz+2z6-281z4+5376z2-3081,
     1541        204x2+136xz3-3128xz+z6-149z4+2739z2+117;
     1542
     1543ring R18=integer,(B,D,F,b,d,f),dp;
    15441544ideal I=6,
    1545         (b-d)*(B-D)-2*F+2, 
    1546         (b-d)*(B+D-2*F)+2*(B-D), 
    1547         (b-d)^2-2*(b+d)+f+1, 
     1545        (b-d)*(B-D)-2*F+2,
     1546        (b-d)*(B+D-2*F)+2*(B-D),
     1547        (b-d)^2-2*(b+d)+f+1,
    15481548        B^2*b^3-1,
    15491549        D^2*d^3-1,
    1550         F^2*f^3-1; 
     1550        F^2*f^3-1;
    15511551
    15521552ring R19=integer,(a,b,c,d,e,f),dp;
     
    15791579ring R22=integer,(s,p,S,P,T,F,f),dp;  
    15801580ideal I=35,
    1581         2*T-S*s-2*F+2, 
    1582         8*F*p-4*p*S-2*F*s^2+S*s^2+4*T-2*S*s, 
    1583         -2*s-4*p+s^2+f+1, 
    1584         s*T^2-p*s*P-p*S*T-2, 
    1585         p^3*P^2-1, 
    1586         F^2*f^3-1; 
     1581        2*T-S*s-2*F+2,
     1582        8*F*p-4*p*S-2*F*s^2+S*s^2+4*T-2*S*s,
     1583        -2*s-4*p+s^2+f+1,
     1584        s*T^2-p*s*P-p*S*T-2,
     1585        p^3*P^2-1,
     1586        F^2*f^3-1;
    15871587*/
Note: See TracChangeset for help on using the changeset viewer.