Changeset d2565e in git


Ignore:
Timestamp:
Oct 5, 2018, 10:43:53 AM (6 years ago)
Author:
Christian Eder
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'b4f17ed1d25f93d46dbe29e4b499baecc2fd51bb')
Children:
6a90def7fff1b00098dfc583573c8d69900f6b36
Parents:
0d6b906b73a53bc8c2e154c4c951b319a70bcd8a
git-author:
Christian Eder <ederc@mathematik.uni-kl.de>2018-10-05 10:43:53+02:00
git-committer:
Christian Eder <ederc@mathematik.uni-kl.de>2018-10-05 12:37:42+02:00
Message:
adds tail reducer for the cutting down the coefficients of tail terms when computing over Z
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/GBEngine/kInline.h

    r0d6b906 rd2565e  
    10251025 *
    10261026 ***************************************************************/
     1027KINLINE int ksReducePolyTailLC_Z(LObject* PR, TObject* PW, LObject* Red)
     1028{
     1029  BOOLEAN ret;
     1030  number mult, rest;
     1031  TObject red = *PW;
     1032  red.Copy();
     1033  rest = n_QuotRem(pGetCoeff(Red->p), pGetCoeff(red.p),
     1034          &mult, currRing->cf);
     1035  red.Mult_nn(rest);
     1036
     1037  assume(PR->GetLmCurrRing() != red.GetLmCurrRing());
     1038  ret = ksReducePolyLC(Red, &red, NULL, &mult);
     1039  red.Delete();
     1040  red.Clear();
     1041
     1042  return ret;
     1043}
     1044
     1045KINLINE int ksReducePolyTail_Z(LObject* PR, TObject* PW, LObject* Red)
     1046{
     1047  BOOLEAN ret;
     1048  number coef;
     1049
     1050  assume(PR->GetLmCurrRing() != PW->GetLmCurrRing());
     1051  ret = ksReducePoly(Red, PW, NULL, &coef);
     1052
     1053  if (!ret)
     1054  {
     1055    if (! n_IsOne(coef, currRing->cf))
     1056    {
     1057      PR->Mult_nn(coef);
     1058      // HANNES: mark for Normalize
     1059    }
     1060    n_Delete(&coef, currRing->cf);
     1061  }
     1062  return ret;
     1063}
     1064
    10271065KINLINE int ksReducePolyTail(LObject* PR, TObject* PW, LObject* Red)
    10281066{
Note: See TracChangeset for help on using the changeset viewer.