Changeset 2320884 in git for kernel


Ignore:
Timestamp:
Sep 17, 2013, 5:14:12 PM (11 years ago)
Author:
Martin Lee <martinlee84@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
7dcef65573794dbfd723491c96152310303af9c9
Parents:
d0792a7653a0b3fa805d49a36ef8f5b6f9e12615
git-author:
Martin Lee <martinlee84@web.de>2013-09-17 17:14:12+02:00
git-committer:
Martin Lee <martinlee84@web.de>2013-09-25 17:47:57+02:00
Message:
chg: replaced all n_* with np* functions to reduce overhead
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/tgb_internal.h

    rd0792a r2320884  
    6464#include <kernel/kstd1.h>
    6565#include <polys/kbuckets.h>
     66#include <libpolys/coeffs/modulop.h>
    6667
    6768class PolySimple
     
    621622    //assume(impl.find(p_Copy(term,currRing))==impl.end());
    622623    //assume(len==pLength(nf));
    623     assume(n_IsOne(p_GetCoeff(term,currRing),currRing->cf));
     624    assume(npIsOne(p_GetCoeff(term,currRing),currRing->cf));
    624625    if (term==nf)
    625626    {
     
    789790    number coef_bak=p_GetCoeff(t,c->r);
    790791
    791     p_SetCoeff(t,n_Init(1,c->r->cf),c->r);
    792     assume(n_IsOne(p_GetCoeff(c->strat->S[i],c->r),c->r->cf));
     792    p_SetCoeff(t,npInit(1,c->r->cf),c->r);
     793    assume(npIsOne(p_GetCoeff(c->strat->S[i],c->r),c->r->cf));
    793794    number coefstrat=p_GetCoeff(c->strat->S[i],c->r);
    794795
     
    796797    poly exp_diff=cache->temp_term;
    797798    p_ExpVectorDiff(exp_diff,t,c->strat->S[i],c->r);
    798     p_SetCoeff(exp_diff,n_Neg(n_Invers(coefstrat,c->r->cf),c->r->cf),c->r);
     799    p_SetCoeff(exp_diff,npNeg(npInvers(coefstrat,c->r->cf),c->r->cf),c->r);
    799800    p_Setm(exp_diff,c->r);
    800801    assume(c->strat->S[i]!=NULL);
     
    816817  } else {
    817818    number coef_bak=p_GetCoeff(t,c->r);
    818     number one=n_Init(1, c->r->cf);
     819    number one=npInit(1, c->r->cf);
    819820    p_SetCoeff(t,one,c->r);
    820821
     
    933934  const tgb_uint32 prime=n_GetChar(currRing->cf);
    934935  const tgb_uint32 c=F4mat_to_number_type(coef);
    935   assume(!(n_IsZero(coef,currRing->cf)));
     936  assume(!(npIsZero(coef,currRing->cf)));
    936937  for(j=0;j<len;j=j+256)
    937938  {
     
    957958      int idx=idx_array[i];
    958959      assume(bpos<256);
    959       assume(!(n_IsZero((number)(long) buffer[bpos],currRing->cf)));
    960       temp_array[idx]=F4mat_to_number_type(n_Add((number)(long) temp_array[idx], (number)(long) buffer[bpos++],currRing->cf));
     960      assume(!(npIsZero((number)(long) buffer[bpos],currRing->cf)));
     961      temp_array[idx]=F4mat_to_number_type(npAddM((number)(long) temp_array[idx], (number)(long) buffer[bpos++],currRing->cf));
    961962      assume(idx<temp_size);
    962963    }
     
    979980  const tgb_uint32 prime=n_GetChar(currRing->cf);
    980981  const tgb_uint32 c=F4mat_to_number_type(coef);
    981   assume(!(n_IsZero(coef,currRing->cf)));
     982  assume(!(npIsZero(coef,currRing->cf)));
    982983  for(j=0;j<len;j=j+256)
    983984  {
     
    10041005      assume(bpos<256);
    10051006      //assume(!(npIsZero((number) buffer[bpos])));
    1006       temp_array[i]=F4mat_to_number_type(n_Add((number)(long) temp_array[i], (number)(long) buffer[bpos++],currRing->cf));
     1007      temp_array[i]=F4mat_to_number_type(npAddM((number)(long) temp_array[i], (number)(long) buffer[bpos++],currRing->cf));
    10071008      assume(i<temp_size);
    10081009    }
     
    10291030  for(i=0;i<len;i++)
    10301031  {
    1031       temp_array[i]=F4mat_to_number_type(n_Add((number)(long) temp_array[i], (number)(long) row[i],currRing->cf));
     1032      temp_array[i]=F4mat_to_number_type(npAddM((number)(long) temp_array[i], (number)(long) row[i],currRing->cf));
    10321033      assume(i<temp_size);
    10331034  }
     
    10541055  {
    10551056
    1056       temp_array[i]=F4mat_to_number_type(n_Sub((number)(long) temp_array[i], (number)(long) row[i],currRing->cf));
     1057      temp_array[i]=F4mat_to_number_type(npSubM((number)(long) temp_array[i], (number)(long) row[i],currRing->cf));
    10571058      assume(i<temp_size);
    10581059  }
     
    10741075        {
    10751076          int idx=idx_array[j];
    1076           temp_array[idx]=F4mat_to_number_type(   (number_type)(long)n_Add((number) (long)temp_array[idx],(number)(long) coef_array[j],currRing->cf));
     1077          temp_array[idx]=F4mat_to_number_type(   (number_type)(long)npAddM((number) (long)temp_array[idx],(number)(long) coef_array[j],currRing->cf));
    10771078          assume(idx<temp_size);
    10781079        }
     
    10921093        {
    10931094          int idx=idx_array[j];
    1094           temp_array[idx]=F4mat_to_number_type(  (number_type)(long) n_Sub((number) (long)temp_array[idx],(number)(long) coef_array[j],currRing->cf));
     1095          temp_array[idx]=F4mat_to_number_type(  (number_type)(long) npSubM((number) (long)temp_array[idx],(number)(long) coef_array[j],currRing->cf));
    10951096          assume(idx<temp_size);
    10961097        }
     
    11041105   int temp_size=cache->nIrreducibleMonomials;
    11051106   memset(temp_array,0,temp_size_bytes);
    1106    number minus_one=n_Init(-1,currRing->cf);
     1107   number minus_one=npInit(-1,currRing->cf);
    11071108   int i;
    11081109   for(i=0;i<len;i++)
     
    11551156         if (red.ref->value_len==NoroCache<number_type>::backLinkCode)
    11561157         {
    1157            temp_array[red.ref->term_index]=F4mat_to_number_type( n_Add((number)(long) temp_array[red.ref->term_index],red.coef,currRing->cf));
     1158           temp_array[red.ref->term_index]=F4mat_to_number_type( npAddM((number)(long) temp_array[red.ref->term_index],red.coef,currRing->cf));
    11581159         }
    11591160         else
     
    12031204    assume(coef_array[j]!=0);
    12041205    CoefIdx<number_type> ci;
    1205     ci.coef=F4mat_to_number_type(n_Mult((number)(long) coef,(number)(long) coef_array[j],currRing->cf));
     1206    ci.coef=F4mat_to_number_type(npMultM((number)(long) coef,(number)(long) coef_array[j],currRing->cf));
    12061207    ci.idx=idx_array[j];
    12071208    pairs[pos++]=ci;
     
    12181219      assume(coef_array[j]!=0);
    12191220      CoefIdx<number_type> ci;
    1220       ci.coef=F4mat_to_number_type(n_Mult((number)(long) coef,(number)(long) coef_array[j],currRing->cf));
     1221      ci.coef=F4mat_to_number_type(npMultM((number)(long) coef,(number)(long) coef_array[j],currRing->cf));
    12211222      assume(ci.coef!=0);
    12221223      ci.idx=j;
     
    12531254      assume(coef_array[j]!=0);
    12541255      CoefIdx<number_type> ci;
    1255       ci.coef=F4mat_to_number_type(n_Neg((number)(long) coef_array[j],currRing->cf));
     1256      ci.coef=F4mat_to_number_type(npNegM((number)(long) coef_array[j],currRing->cf));
    12561257      assume(ci.coef!=0);
    12571258      ci.idx=j;
     
    12801281    assume(coef_array[j]!=0);
    12811282    CoefIdx<number_type> ci;
    1282     ci.coef=F4mat_to_number_type(n_Neg((number)coef_array[j],currRing->cf));
     1283    ci.coef=F4mat_to_number_type(npNegM((number)coef_array[j],currRing->cf));
    12831284    ci.idx=idx_array[j];
    12841285    pairs[pos++]=ci;
     
    13081309  CoefIdx<number_type>* pairs=(CoefIdx<number_type>*) cache->tempBuffer; //omalloc(together*sizeof(CoefIdx<number_type>));
    13091310  int pos=0;
    1310   const number one=n_Init(1, currRing->cf);
    1311   const number minus_one=n_Init(-1, currRing->cf);
     1311  const number one=npInit(1, currRing->cf);
     1312  const number minus_one=npInit(-1, currRing->cf);
    13121313  for(i=0;i<len;i++)
    13131314  {
     
    13881389    else
    13891390    {
    1390       pairs[act].coef=F4mat_to_number_type(n_Add((number)(long)pairs[act].coef,(number)(long)pairs[i].coef,currRing->cf));
     1391      pairs[act].coef=F4mat_to_number_type(npAddM((number)(long)pairs[act].coef,(number)(long)pairs[i].coef,currRing->cf));
    13911392    }
    13921393  }
     
    15551556    for(i=startIndices[row];i<ncols;i++)
    15561557    {
    1557       row_array[i]=F4mat_to_number_type(n_Mult((number)(long) row_array[i],(number)(long) coef,currRing->cf));
     1558      row_array[i]=F4mat_to_number_type(npMult((number)(long) row_array[i],(number)(long) coef,currRing->cf));
    15581559    }
    15591560  }
     
    15671568    assume(start<ncols);
    15681569    int other_row;
    1569     assume(!(n_IsZero((number)(long) row_array[start],currRing->cf)));
    1570     if (!(n_IsOne((number)(long) coef,currRing->cf)))
    1571       multiplyRow(r,F4mat_to_number_type(n_Invers((number)(long) coef,currRing->cf)));
    1572     assume(n_IsOne((number)(long) row_array[start],currRing->cf));
     1570    assume(!(npIsZero((number)(long) row_array[start],currRing->cf)));
     1571    if (!(npIsOne((number)(long) coef,currRing->cf)))
     1572      multiplyRow(r,F4mat_to_number_type(npInvers((number)(long) coef,currRing->cf)));
     1573    assume(npIsOne((number)(long) row_array[start],currRing->cf));
    15731574    int lastIndex=modP_lastIndexRow(row_array, ncols);
    1574     number minus_one=n_Init(-1, currRing->cf);
     1575    number minus_one=npInit(-1, currRing->cf);
    15751576    for (other_row=r+1;other_row<nrows;other_row++)
    15761577    {
     
    15801581        int i;
    15811582        number_type* other_row_array=rows[other_row];
    1582         number coef2=n_Neg((number)(long) other_row_array[start],currRing->cf);
     1583        number coef2=npNeg((number)(long) other_row_array[start],currRing->cf);
    15831584        if (coef2==minus_one)
    15841585        {
     
    15861587          {
    15871588            if (row_array[i]!=zero)
    1588               other_row_array[i]=F4mat_to_number_type(n_Sub((number)(long) other_row_array[i], (number)(long) row_array[i],currRing->cf));
     1589              other_row_array[i]=F4mat_to_number_type(npSubM((number)(long) other_row_array[i], (number)(long) row_array[i],currRing->cf));
    15891590          }
    15901591      }
     
    15951596          {
    15961597            if (row_array[i]!=zero)
    1597             other_row_array[i]=F4mat_to_number_type(n_Add(n_Mult(coef2,(number)(long) row_array[i],currRing->cf),(number)(long) other_row_array[i],currRing->cf));
     1598            other_row_array[i]=F4mat_to_number_type(npAddM(npMult(coef2,(number)(long) row_array[i],currRing->cf),(number)(long) other_row_array[i],currRing->cf));
    15981599          }
    15991600        }
    16001601        updateStartIndex(other_row,start);
    1601         assume(n_IsZero((number)(long) other_row_array[start],currRing->cf));
     1602        assume(npIsZero((number)(long) other_row_array[start],currRing->cf));
    16021603      }
    16031604    }
     
    16061607  {
    16071608    number_type* row_array=rows[row];
    1608     assume((lower_bound<0)||(n_IsZero((number)(long) row_array[lower_bound],currRing->cf)));
     1609    assume((lower_bound<0)||(npIsZero((number)(long) row_array[lower_bound],currRing->cf)));
    16091610    int i;
    16101611    //number_type zero=npInit(0);
     
    16611662    for(i=startIndices[row];i<ncols;i++)
    16621663    {
    1663       row_array[i]=F4mat_to_number_type(n_Mult((number)(long) row_array[i],(number)(long) coef,currRing->cf));
     1664      row_array[i]=F4mat_to_number_type(npMult((number)(long) row_array[i],(number)(long) coef,currRing->cf));
    16641665    }
    16651666  }
     
    16901691    {
    16911692      assume(startIndices[i]<ncols);
    1692       assume(!(n_IsZero((number)(long) rows[i][startIndices[i]],currRing->cf)));
     1693      assume(!(npIsZero((number)(long) rows[i][startIndices[i]],currRing->cf)));
    16931694      assume(startIndices[i]>=i);
    16941695      updateLastReducibleIndex(i,nonZeroUntil+1);
     
    17191720    number_type zero=0;//npInit(0);
    17201721    number_type* row_array=rows[r];
    1721     assume((!(n_IsZero((number)(long) row_array[start],currRing->cf))));
     1722    assume((!(npIsZero((number)(long) row_array[start],currRing->cf))));
    17221723    assume(start<ncols);
    17231724    int other_row;
    1724     if (!(n_IsOne((number)(long) row_array[r],currRing->cf)))
     1725    if (!(npIsOne((number)(long) row_array[r],currRing->cf)))
    17251726    {
    17261727      //it should be one, but this safety is not expensive
    1727       multiplyRow(r, F4mat_to_number_type(n_Invers((number)(long) row_array[start],currRing->cf)));
     1728      multiplyRow(r, F4mat_to_number_type(npInvers((number)(long) row_array[start],currRing->cf)));
    17281729    }
    17291730    int lastIndex=modP_lastIndexRow(row_array, ncols);
     
    17361737      {
    17371738        number_type* other_row_array=rows[other_row];
    1738         number coef=n_Neg((number)(long) other_row_array[start],currRing->cf);
    1739         assume(!(n_IsZero(coef,currRing->cf)));
     1739        number coef=npNeg((number)(long) other_row_array[start],currRing->cf);
     1740        assume(!(npIsZero(coef,currRing->cf)));
    17401741        int i;
    17411742        assume(start>startIndices[other_row]);
     
    17431744        {
    17441745          if (row_array[i]!=zero)
    1745             other_row_array[i]=F4mat_to_number_type(n_Add(n_Mult(coef,(number)(long)row_array[i],currRing->cf),(number)(long)other_row_array[i],currRing->cf));
     1746            other_row_array[i]=F4mat_to_number_type(npAddM(npMult(coef,(number)(long)row_array[i],currRing->cf),(number)(long)other_row_array[i],currRing->cf));
    17461747        }
    17471748        updateLastReducibleIndex(other_row,r);
Note: See TracChangeset for help on using the changeset viewer.