Changeset 64e7cb in git for factory/facHensel.cc


Ignore:
Timestamp:
Jun 22, 2011, 12:19:52 PM (12 years ago)
Author:
Martin Lee <martinlee84@…>
Branches:
(u'spielwiese', '0d6b7fcd9813a1ca1ed4220cfa2b104b97a0a003')
Children:
6f30b8f0100530412045adfaaae98447428ef7fb
Parents:
50a2aa95106a901b7b3b189d3724a19e186db0f7
Message:
prepare Hensel lifting for char= 0 case


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

Legend:

Unmodified
Added
Removed
  • factory/facHensel.cc

    r50a2aa9 r64e7cb  
    3636mulNTL (const CanonicalForm& F, const CanonicalForm& G)
    3737{
    38   if (F.inCoeffDomain() || G.inCoeffDomain())
     38  if (F.inCoeffDomain() || G.inCoeffDomain() || getCharacteristic() == 0)
    3939    return F*G;
    4040  ASSERT (F.isUnivariate() && G.isUnivariate(), "expected univariate polys");
     
    7474    return mod (F,G);
    7575
     76  if (getCharacteristic() == 0)
     77    return mod (F, G);
     78
    7679  ASSERT (F.isUnivariate() && G.isUnivariate(), "expected univariate polys");
    7780  ASSERT (F.level() == G.level(), "expected polys of same level");
     
    109112  else if (F.isUnivariate() && G.inCoeffDomain())
    110113    return div (F,G);
     114
     115  if (getCharacteristic() == 0)
     116    return div (F, G);
    111117
    112118  ASSERT (F.isUnivariate() && G.isUnivariate(), "expected univariate polys");
     
    794800    return mod (F*G, M);
    795801
    796   if (CFFactory::gettype() != GaloisFieldDomain &&
     802  if (getCharacteristic() > 0 && CFFactory::gettype() != GaloisFieldDomain &&
    797803      (((degF-degG) < 50 && degF > degG) || ((degG-degF) < 50 && degF <= degG)))
    798804    return mulMod2NTLFq (F, G, M);
Note: See TracChangeset for help on using the changeset viewer.