Changeset 13f494 in git for factory


Ignore:
Timestamp:
Jul 7, 2011, 9:02:01 AM (13 years ago)
Author:
Martin Lee <martinlee84@…>
Branches:
(u'spielwiese', '2a584933abf2a2d3082034c7586d38bb6de1a30a')
Children:
3b77086d506b6745e947edd3c323b6687e2d521c
Parents:
42281d63800a31c74efe7fb9afecba0a2d1cbe9d
Message:
use new division and divisibility test in gcd over Q(a)


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

Legend:

Unmodified
Added
Removed
  • factory/algext.cc

    r42281d6 r13f494  
    459459  if(fail)
    460460    return;
    461   bool divides = true;
    462   CanonicalForm tmp;
    463461  // f /= cf
    464   tryDivide(f,cf,M,tmp,divides,fail); // 'divides' is not checked
     462  f.tryDiv (cf, M, fail);
    465463  if(fail)
    466464    return;
    467   f = tmp;
    468465  // g /= cg
    469   tryDivide(g,cg,M,tmp,divides,fail); // 'divides' is not checked
     466  g.tryDiv (cg, M, fail);
    470467  if(fail)
    471468    return;
    472   g = tmp;
    473469  if(f.inCoeffDomain())
    474470  {
     
    509505  FFGenerator gen = FFGenerator();
    510506  Variable x= Variable (1);
     507  bool divides= true;
    511508  for(FFGenerator gen = FFGenerator(); gen.hasItems(); gen.next())
    512509  {
     
    552549          return;
    553550        divides = true;
    554         tryDivide(gm,cf,M,g_image,divides,fail); // 'divides' is ignored
     551        g_image= gm;
     552        g_image.tryDiv (cf, M, fail);
    555553        if(fail)
    556554          return;
    557         tryDivide(f,g_image,M,tmp,divides,fail); // trial division (f)
     555        divides= tryFdivides (g_image,f, M, fail); // trial division (f)
    558556        if(fail)
    559557          return;
    560558        if(divides)
    561559        {
    562           tryDivide(g,g_image,M,tmp,divides,fail); // trial division (g)
     560          bool divides2= tryFdivides (g_image,g, M, fail); // trial division (g)
    563561          if(fail)
    564562            return;
    565           if(divides)
     563          if(divides2)
    566564          {
    567565            result = NN(reduce (c*g_image, M));
Note: See TracChangeset for help on using the changeset viewer.