Changeset e78236 in git


Ignore:
Timestamp:
May 31, 2023, 1:27:32 PM (11 months ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', '2a584933abf2a2d3082034c7586d38bb6de1a30a')
Children:
2a45f43424a5f5b8bc30e399dac03c3a2b624f3b
Parents:
8eeddafc83e9d052d7ffa21597c4229513b7e886
Message:
format
Location:
Singular/LIB
Files:
23 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/algebra.lib

    r8eedda re78236  
    7676    //-----------------
    7777    // ---------- create new ring with extra variables --------------------
    78     list l3; 
     78    list l3;
    7979    for (int zz = 1; zz <= n; zz++)
    8080    {
     
    188188  { int m=ncols(S);
    189189  // ---------- create new ring with extra variables --------------------
    190     list l4; 
     190    list l4;
    191191    for (int xx = 1; xx <= n; xx++)
    192192    {
     
    295295  //the intersection of ideal nett=(p-y(0),I[1]-y(1),...)
    296296  //with the ring k[y(0),...,y(n)] is computed, the result is ker
    297   list l5; 
     297  list l5;
    298298  for (int xx = 1; xx <= n; xx++)
    299299  {
     
    390390    if ( tt == 1 )
    391391    {
    392       list l6; 
     392      list l6;
    393393      for (@xx = 1; @xx <= m; @xx++)
    394394      {
     
    402402    }
    403403 // ---------- create new ring with extra variables --------------------
    404     list l7; 
     404    list l7;
    405405    for (@xx = n; @xx >= 1; @xx--)
    406406    {
     
    436436 // order
    437437       {
    438         list l8; 
     438        list l8;
    439439        for (@xx = n; @xx >=1; @xx--)
    440440        {
     
    542542    // algDependent is called with "bestoption" if tt = 0
    543543    def S = L[2];
    544     list l9; 
     544    list l9;
    545545    for (int xx = 1; xx <= n; xx++)
    546546    {
     
    694694    int ii,t=1,1;
    695695  // ------------ create new ring with extra variables ---------------------
    696     list l10; 
     696    list l10;
    697697    for (int yy = 1; yy <= n; yy++)
    698698    {
     
    774774    int ii,t = 1,1;
    775775  // ------------ create new ring with extra variables ---------------------
    776     list l11; 
     776    list l11;
    777777    for (int yy = 1; yy <= n; yy++)
    778778    {
     
    10991099
    11001100  // --------------------------- enlarging ring -----------------------------
    1101   list l12; 
     1101  list l12;
    11021102  for (int yy = 1; yy <= m; yy++)
    11031103  {
  • Singular/LIB/autgradalg.lib

    r8eedda re78236  
    12471247  for (ii = 1; ii <= n0; ii++)
    12481248  {
    1249    l3[ii] = "T("+string(ii)+")"; 
     1249   l3[ii] = "T("+string(ii)+")";
    12501250  }
    12511251  for (ii = 1; ii <= n0*n; ii++)
     
    18051805  for (ii = 1; ii <= n0; ii++)
    18061806  {
    1807    l4[ii] = "T("+string(ii)+")"; 
     1807   l4[ii] = "T("+string(ii)+")";
    18081808  }
    18091809  for (ii = 1; ii <= n1; ii++)
     
    30603060  for (int ii = 1; ii <= size(V); ii++)
    30613061  {
    3062    l5[ii] = "T("+string(ii)+")"; 
     3062   l5[ii] = "T("+string(ii)+")";
    30633063  }
    30643064  ring S = create_ring(ring_list(RR)[1], l5, "dp", "no_minpoly");
  • Singular/LIB/customstd.lib

    r8eedda re78236  
    6767NOTE:    The result is a standard basis of a partially saturated ideal wrt. the
    6868         the variables in J.
    69          If the I is homogeneous and the ordering dp, the result is completely 
     69         If the I is homogeneous and the ordering dp, the result is completely
    7070         saturated wrt. to the last variable (wrt. to the first for Dp).
    7171KEYWORDS: standard bases, saturation
  • Singular/LIB/dmod.lib

    r8eedda re78236  
    697697  return(@R2);
    698698  string  strr1 = "Printing from ALTannfsBM";     // comment by sachin
    699   strr1;    // comment by sachin 
     699  strr1;    // comment by sachin
    700700}
    701701example
     
    43044304  // continue with dp 1,1,1,1...
    43054305  tmp[1] = "dp";  // string
    4306   iv=1:Nnew; 
    4307   kill s; 
     4306  iv=1:Nnew;
     4307  kill s;
    43084308  kill NName;
    43094309  tmp[2]      = iv;
     
    46054605@*           for the given rational number n
    46064606ASSUME: basering is commutative, the number n is rational.
    4607 NOTE: Activate the output ring by @code{setring} command. 
     4607NOTE: Activate the output ring by @code{setring} command.
    46084608In the ring the ideal called @code{annfalpha} is exported.
    46094609@* We compute the real annihilator for any rational value of n (both
    4610 @*    generic and exceptional). The implementation fixes a bug in 
     4610@*    generic and exceptional). The implementation fixes a bug in
    46114611@*    the Algorithm 5.3.15 from Saito-Sturmfels-Takayama.
    46124612DISPLAY: If printlevel=1, progress debug messages will be printed,
     
    46154615"
    46164616{
    4617    // using dmodideal.lib 
     4617   // using dmodideal.lib
    46184618  ideal f = F;
    46194619  ideal alpha = n;
     
    46254625  "EXAMPLE:"; echo = 2;
    46264626  ring r = 0,(x,y),dp;
    4627   poly F = x3-y2; 
    4628   bernsteinBM(F); // the roots of Bernstein-Sato poly: -7/6, -1, -5/6 
     4627  poly F = x3-y2;
     4628  bernsteinBM(F); // the roots of Bernstein-Sato poly: -7/6, -1, -5/6
    46294629  // *** first example: generic root
    4630   def A = annfspecial(F,-5/6); 
     4630  def A = annfspecial(F,-5/6);
    46314631  setring A; print(annfalpha); kill A; setring r;
    46324632  // *** second example:  exceptional root since its distance to -1 is integer 2
  • Singular/LIB/dmodapp.lib

    r8eedda re78236  
    137137  - changed charVariety: no homogenization is needed
    138138  - changed inForm: code is much simpler using jet
    139  
     139
    140140  06.04.20 by VL:
    141141  - engine updated with 2 more modular choices
     
    300300      // modular slimgb with final exactness check
    301301      J = ncmodslimgb(I,1);
    302   } 
     302  }
    303303  return(J);
    304304}
  • Singular/LIB/dmodvar.lib

    r8eedda re78236  
    141141   l1[size(l1)+1] = "z("+string(zz)+")";
    142142  }
    143   ring @Z = create_ring(0, l1, ORD);   
     143  ring @Z = create_ring(0, l1, ORD);
    144144  list L = ringlist(@Z)[3];
    145145  kill @Z;
  • Singular/LIB/equising.lib

    r8eedda re78236  
    509509      else // no minpoly given
    510510      {
    511         list l5; 
     511        list l5;
    512512        for (int zz = 1; zz <= npars(basering); zz++)
    513513        {
     
    12761276  {
    12771277    ideal qIdeal = ideal(basering);
    1278     ring ESSring = create_ring("("+ string(char(basering))+ "," + parstr(myRing) +")", "("+ varstr(basering)+")", "("+ ordstr(basering) +")"); 
     1278    ring ESSring = create_ring("("+ string(char(basering))+ "," + parstr(myRing) +")", "("+ varstr(basering)+")", "("+ ordstr(basering) +")");
    12791279    execute(minPolyStr);
    12801280    // basering has changed to ESSring
  • Singular/LIB/ffsolve.lib

    r8eedda re78236  
    854854
    855855  def ring_for_var_change = addNvarsTo(original_ring, number_of_monomials, "@y", 2);
    856  
     856
    857857  setring ring_for_var_change;
    858858  if( prime_field == 0)
  • Singular/LIB/finvar.lib

    r8eedda re78236  
    439439    }
    440440    if (minpoly<>0 && mol_flag==0)
    441     { 
     441    {
    442442      if (v)
    443443      { "  Since it is impossible for this program to calculate the Molien series for";
     
    710710        {
    711711          rl[1][1]=0;
    712         } 
     712        }
    713713        def newring=ring(rl);
    714714        setring newring;
    715        
     715
    716716      }
    717717    }
     
    728728      {
    729729        rl[1][1]=0;
    730       } 
     730      }
    731731      def newring=ring(rl);
    732732      setring newring;
     
    11061106    if (minpoly==0)
    11071107    { if (i>size(chst))
    1108       { 
     1108      {
    11091109         ring newring = create_ring(0, "("+varstr(br)+")", "("+ordstr(br)+")");
    11101110      }
     
    11191119        {
    11201120          rl[1][1]=0;
    1121         } 
     1121        }
    11221122        def newring=ring(rl);
    1123         setring newring; 
     1123        setring newring;
    11241124      }
    11251125    }
     
    11361136      {
    11371137        rl[1][1]=0;
    1138       } 
     1138      }
    11391139      def newring=ring(rl);
    1140       setring newring; 
     1140      setring newring;
    11411141      execute("minpoly="+minp);
    11421142    }
  • Singular/LIB/freegb.lib

    r8eedda re78236  
    28652865RETURN: list L
    28662866NOTE: - L[1] is NF(p,I)
    2867       - L[2] is the list of expressions [i,l_(ij),r_(ij)] with \sum_(i,j) l_(ij) g_i r_(ij) = p - NF(p,I) 
     2867      - L[2] is the list of expressions [i,l_(ij),r_(ij)] with \sum_(i,j) l_(ij) g_i r_(ij) = p - NF(p,I)
    28682868      - procedure lpGBPres2Poly, applied to L, reconstructs p
    28692869EXAMPLE: example lpDivision; shows examples
     
    29372937  "EXAMPLE:"; echo = 2;
    29382938  ring r = 0,(x,y),dp;
    2939   ring R = freeAlgebra(r, 4); 
     2939  ring R = freeAlgebra(r, 4);
    29402940  ideal I = x*x + y*y - 1; // 2D sphere
    29412941  ideal J = twostd(I); // compute a two-sided Groebner basis
     
    29672967  "EXAMPLE:"; echo = 2;
    29682968  ring r = 0,(x,y),dp;
    2969   ring R = freeAlgebra(r, 4); 
     2969  ring R = freeAlgebra(r, 4);
    29702970  ideal I = x*x + y*y - 1; // 2D sphere
    29712971  ideal J = twostd(I); // compute a two-sided Groebner basis
    29722972  J; // it is finite and nice
    29732973  poly h = x*x*y-y*x*x+x*y;
    2974   list L = lpDivision(h,J); 
     2974  list L = lpDivision(h,J);
    29752975  L[1]; // what means that the normal form (or the remainder) of h wrt J is x*y
    29762976  lpGBPres2Poly(L,J); // we see, that it is equal to h from above
     
    37853785}
    37863786
    3787 proc testLift(ideal M, matrix T) 
     3787proc testLift(ideal M, matrix T)
    37883788"USAGE: testLift(M,T); module M, matrix T
    37893789RETURN: module
  • Singular/LIB/gmssing.lib

    r8eedda re78236  
    196196  }
    197197
    198   ring G = create_ring(string(charstr(@R)), "("+s+","+varstr(@R)+")", "(ws("+string(deg(highcorner(g))+2*gmsmaxdeg)+"),"+os+",c)"); 
     198  ring G = create_ring(string(charstr(@R)), "("+s+","+varstr(@R)+")", "(ws("+string(deg(highcorner(g))+2*gmsmaxdeg)+"),"+os+",c)");
    199199
    200200  poly gmspoly=imap(@R,t);
  • Singular/LIB/hnoether.lib

    r8eedda re78236  
    29372937    string pa=parstr(altring);
    29382938    list rl=ringlist(altring);
    2939     rl=rl[1]; rl[1]=p; 
     2939    rl=rl[1]; rl[1]=p;
    29402940    ring HNhelpring=ring(rl);
    29412941    execute("poly mipo="+mipl+";");  // Minimalpolynom in Polynom umgewandelt
  • Singular/LIB/involut.lib

    r8eedda re78236  
    602602  if (Par=="") // if there are no parameters
    603603  {
    604     ring @@@KK = create_ring(0, "("+varstr(@B)+","+@ss+")", "dp"); //new ring with new variables 
     604    ring @@@KK = create_ring(0, "("+varstr(@B)+","+@ss+")", "dp"); //new ring with new variables
    605605  }
    606606  else //if there exist parameters
     
    656656  if ( Par=="" ) //initializes the ring of relations
    657657  {
    658     ring @@KK = create_ring(0, "("+@ss+")", "dp"); 
     658    ring @@KK = create_ring(0, "("+@ss+")", "dp");
    659659  }
    660660  else
    661661  {
    662     ring @@KK = create_ring("(0,"+Par+")", "("+@ss+")", "dp"); 
     662    ring @@KK = create_ring("(0,"+Par+")", "("+@ss+")", "dp");
    663663  }
    664664
     
    812812  if (( Par=="" ) && (n!=0)) //initializes the ring of relations
    813813  {
    814     ring @@KK = create_ring(0, "("+@ss+")", "dp"); 
     814    ring @@KK = create_ring(0, "("+@ss+")", "dp");
    815815  }
    816816  if (( Par=="" ) && (n==0)) //initializes the ring of relations
     
    820820  if ( Par!="" )
    821821  {
    822     ring @@KK = create_ring("(0,"+Par+")", "("+@ss+")", "dp"); 
     822    ring @@KK = create_ring("(0,"+Par+")", "("+@ss+")", "dp");
    823823  }
    824824  //  basering;
  • Singular/LIB/moddiq.lib

    r8eedda re78236  
    1212
    1313REFERENCES:
    14   M. Noro, K. Yokoyama: Usage of Modular Techniques for Efficient Computation of Ideal Operations. 
    15   Math.Comput.Sci. 12: 1, 1-32. (2017). 
     14  M. Noro, K. Yokoyama: Usage of Modular Techniques for Efficient Computation of Ideal Operations.
     15  Math.Comput.Sci. 12: 1, 1-32. (2017).
    1616
    1717PROCEDURES:
     
    4949    ring r=0,x(1..6),dp;
    5050    ideal i=cyclic(6);
    51     ideal j=-15*var(5)+16*var(6)^3-60*var(6)^2+225*var(6)-4,2*var(5)^2-7*var(5)+2*var(6)^2-7*var(6)+28,(4*var(6)-1)*var(5)-var(6)+4,4*var(1)+var(5)+var(6),4*var(2)+var(5)+var(6),4*var(3)+var(5)+var(6),4*var(4)+var(5)+var(6); 
     51    ideal j=-15*var(5)+16*var(6)^3-60*var(6)^2+225*var(6)-4,2*var(5)^2-7*var(5)+2*var(6)^2-7*var(6)+28,(4*var(6)-1)*var(5)-var(6)+4,4*var(1)+var(5)+var(6),4*var(2)+var(5)+var(6),4*var(3)+var(5)+var(6),4*var(4)+var(5)+var(6);
    5252    modQuotient(i,modQuotient(i,j));
    5353    ideal id2=x(1)^2+x(1)*x(2)*x(3),x(2)^2-x(3)^3*x(2),x(3)^3+x(2)^5*x(1)*x(3);
     
    5555}
    5656
    57 /* test if a prime number p is permissible for an ideal I 
     57/* test if a prime number p is permissible for an ideal I
    5858 * i.e. it does not divide the denominator of any of the coefficients
    5959 * or numerator of any of the leading coefficients */
     
    130130        }
    131131    }
    132    
     132
    133133    /* test if Gp is in (Ip:Jp) */
    134134    ideal GpJp=Gp*Jp;
     
    175175    ring r=0,x(1..6),dp;
    176176    ideal i=cyclic(6);
    177     ideal j=-15*var(5)+16*var(6)^3-60*var(6)^2+225*var(6)-4,2*var(5)^2-7*var(5)+2*var(6)^2-7*var(6)+28,(4*var(6)-1)*var(5)-var(6)+4,4*var(1)+var(5)+var(6),4*var(2)+var(5)+var(6),4*var(3)+var(5)+var(6),4*var(4)+var(5)+var(6); 
     177    ideal j=-15*var(5)+16*var(6)^3-60*var(6)^2+225*var(6)-4,2*var(5)^2-7*var(5)+2*var(6)^2-7*var(6)+28,(4*var(6)-1)*var(5)-var(6)+4,4*var(1)+var(5)+var(6),4*var(2)+var(5)+var(6),4*var(3)+var(5)+var(6),4*var(4)+var(5)+var(6);
    178178    modSat(i,modSat(i,j)[1])[1];
    179179    poly F     = x(1)^5+x(2)^5+(x(1)-x(2))^2*x(1)*x(2)*x(3);
     
    190190/* find entries in modresults which come from unlucky primes.
    191191 * For this, sort the entries into categories depending on their leading
    192  * ideal and return the indices in all but the biggest category. 
     192 * ideal and return the indices in all but the biggest category.
    193193 * Referring to Modstd::deleteUnlickyPrimes_std. */
    194194static proc deleteUnluckyPrimes_sat(alias list modresults)
     
    290290        }
    291291    }
    292    
     292
    293293    /* test if Gp is in (Ip:Jp^\infty) */
    294294    for (i = ncols(Gp); i > 0; i--)
  • Singular/LIB/ncModslimgb.lib

    r8eedda re78236  
    66                         defined over the rationals using modular techniques.
    77
    8 AUTHORS: Wolfram Decker, Christian Eder, Viktor Levandovskyy, and 
     8AUTHORS: Wolfram Decker, Christian Eder, Viktor Levandovskyy, and
    99Sharwan K. Tiwari shrawant@gmail.com
    1010
     
    4545NOTE:  - If the given algebra and ideal are graded (it is not checked by this command), then the computed Groebner
    4646basis will be exact. Otherwise, the result will be correct with a very high probability.
    47 - The optional parameter `exactness` justifies, whether the final (expensive) 
     47- The optional parameter `exactness` justifies, whether the final (expensive)
    4848verification step will be performed or not (exactness=0, default value is 1).
    4949- The optional parameter `ncores` (default value is 1) provides an integer to use
  • Singular/LIB/ncrat.lib

    r8eedda re78236  
    728728    }
    729729  }
    730   s = s + ")"; 
     730  s = s + ")";
    731731  ring NCRING = create_ring("(0, I)", s, "dp");
    732732  minpoly = I^2+1;
  • Singular/LIB/numerDecom.lib

    r8eedda re78236  
    611611         l2[size(l2)+1] = "z("+string(ii)+")";
    612612        }
    613         ring T(qq) = create_ring("(complex,16,I)", l2, "dp"); 
     613        ring T(qq) = create_ring("(complex,16,I)", l2, "dp");
    614614        list W(qq-1)=var(1);
    615615       }
  • Singular/LIB/pfd.lib

    r8eedda re78236  
    1616matrix of rational functions given as one (possibly very big) txt-file.
    1717If you use the library pfd.lib, please cite the corresponding paper
    18 [J. Boehm, M. Wittmann, Z. Wu, Y. Xu, Y. Zhang: 'IBP reduction coefficients 
     18[J. Boehm, M. Wittmann, Z. Wu, Y. Xu, Y. Zhang: 'IBP reduction coefficients
    1919made simple'] (preprint 2020).
    2020
  • Singular/LIB/primdec.lib

    r8eedda re78236  
    40424042   ideal F=imap(R,F);
    40434043
    4044    list l2; 
     4044   list l2;
    40454045   for (int zz = 1; zz <= m; zz++)
    40464046   {
  • Singular/LIB/ratgb.lib

    r8eedda re78236  
    297297  def LGG = groebner(LG); // cosmetics
    298298  int d = dim(LGG);
    299   int Ddim = d; 
     299  int Ddim = d;
    300300  dbprint(ppl,"the D-dimension is "+string(d));
    301301  export Ddim;
  • Singular/LIB/realclassify.lib

    r8eedda re78236  
    273273          a1=int(a);
    274274          b1=int(b);
    275           t1=int(t);         
     275          t1=int(t);
    276276          g1=gcd(gcd(a1,b1),t1 div a1);
    277277          setring C;
  • Singular/LIB/resolve.lib

    r8eedda re78236  
    734734    l3[size(l3)+1] = "y("+string(ii)+")";
    735735   }
    736    ring S = create_ring(ring_list(R)[1], l3, "dp", "no_minpoly"); 
     736   ring S = create_ring(ring_list(R)[1], l3, "dp", "no_minpoly");
    737737   list resu;
    738738   list B;
  • Singular/LIB/surfex.lib

    r8eedda re78236  
    286286                                    string str_num_mp = "number "+parstr(1)+"="+
    287287                                        decstr2ratstr(rootminpoly())+";";
    288                                     ring Iring = create_ring(0, "("+string(coords)+")", "dp"); 
     288                                    ring Iring = create_ring(0, "("+string(coords)+")", "dp");
    289289                                    basering;
    290290                                    execute(str_num_mp);
     
    306306                            string str_tmp_l = "ideal eqd_tmp = "+string(tmp_l)+";";
    307307                            def cur_ring = basering;
    308                             ring Iring = create_ring("(real,30)", "("+string(coords)+")", "("+ordstr(oring)+")"); 
     308                            ring Iring = create_ring("(real,30)", "("+string(coords)+")", "("+ordstr(oring)+")");
    309309//                            basering;
    310310                            execute(str_I);
Note: See TracChangeset for help on using the changeset viewer.