Changeset f7f084 in git


Ignore:
Timestamp:
Nov 28, 2013, 8:16:24 PM (10 years ago)
Author:
Christian Eder
Branches:
(u'spielwiese', 'd1b01e9d51ade4b46b745d3bada5c5f3696be3a8')
Children:
f397dc928c632a2acc5076b2121dcedf217f5494
Parents:
faa12b153d136fe6d92324f9d140a98f250566f5
git-author:
Christian Eder <ederc@mathematik.uni-kl.de>2013-11-28 20:16:24+01:00
git-committer:
Christian Eder <ederc@mathematik.uni-kl.de>2013-12-12 13:51:26+01:00
Message:
changes incremental flag to sbaOrder, no longer BOOLEAN
=> preparation in order to introduce more module orders for sba
Location:
kernel
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • kernel/kstd1.cc

    rfaa12b1 rf7f084  
    14221422  // standard basis computations
    14231423  strat->red          = redSig;
    1424   //strat->incremental  = TRUE;
     1424  //strat->sbaOrder  = 1;
    14251425  strat->currIdx      = 1;
    14261426}
     
    22532253}
    22542254
    2255 ideal kSba(ideal F, ideal Q, tHomog h,intvec ** w, int incremental, int arri, intvec *hilb,int syzComp,
     2255ideal kSba(ideal F, ideal Q, tHomog h,intvec ** w, int sbaOrder, int arri, intvec *hilb,int syzComp,
    22562256          int newIdeal, intvec *vw)
    22572257{
     
    22632263  BOOLEAN delete_w=(w==NULL);
    22642264  kStrategy strat=new skStrategy;
    2265   if (incremental!=0)
    2266   {
    2267     strat->incremental = TRUE;
    2268   }
    2269   else
    2270   {
    2271     strat->incremental = FALSE;
    2272   }
     2265  strat->sbaOrder = sbaOrder;
    22732266  if (arri!=0)
    22742267  {
  • kernel/kstd2.cc

    rfaa12b1 rf7f084  
    6363
    6464// counts sba's reduction steps
    65 #if SBA_PRNT_REDUCTION_STEPS
     65#if SBA_PRINT_REDUCTION_STEPS
    6666long sba_reduction_steps;
    6767long sba_interreduction_steps;
     
    16751675  //    induced Schreyer order.
    16761676  // The corresponding orders are computed in sbaRing(), depending
    1677   // on the flag strat->incremental
     1677  // on the flag strat->sbaOrder
    16781678#if SBA_PRINT_ZERO_REDUCTIONS
    16791679  long zeroreductions           = 0;
     
    17011701  ring sRing, currRingOld;
    17021702  currRingOld  = currRing;
    1703   if (strat->incremental)
     1703  if (strat->sbaOrder == 1)
    17041704  {
    17051705    sRing = sbaRing(strat);
     
    18041804      else strat->noClearS=TRUE;
    18051805    }
    1806     if (strat->incremental && pGetComp(strat->L[strat->Ll].sig) != strat->currIdx)
     1806    if (strat->sbaOrder == 1 && pGetComp(strat->L[strat->Ll].sig) != strat->currIdx)
    18071807    {
    18081808      strat->currIdx  = pGetComp(strat->L[strat->Ll].sig);
     
    19691969    // remove sigsafe label since it is no longer valid for the next element to
    19701970    // be reduced
    1971     if (strat->incremental)
     1971    if (strat->sbaOrder == 1)
    19721972    {
    19731973      for (int jj = 0; jj<strat->tl+1; jj++)
     
    20172017      // enter into S, L, and T
    20182018      //if ((!TEST_OPT_IDLIFT) || (pGetComp(strat->P.p) <= strat->syzComp))
    2019       if(!strat->incremental)
     2019      if(!strat->sbaOrder == 1)
    20202020      {
    20212021        BOOLEAN overwrite = TRUE;
     
    22292229  }
    22302230#endif
    2231   if (strat->incremental && sRing!=currRingOld)
     2231  if (strat->sbaOrder == 1 && sRing!=currRingOld)
    22322232  {
    22332233    rChangeCurrRing (currRingOld);
  • kernel/kutil.cc

    rfaa12b1 rf7f084  
    59375937  strat->S      =   strat->Shdl->m;
    59385938  strat->sig    =   (poly *)omAlloc0(i*sizeof(poly));
    5939   if (!strat->incremental)
     5939  if (strat->sbaOrder != 1)
    59405940  {
    59415941    strat->syz    = (poly *)omAlloc0(i*sizeof(poly));
     
    59995999      // => we can keep the underlying monomial order and get a Schreyer
    60006000      //    order without any bigger overhead
    6001       if (!strat->incremental)
     6001      if (strat->sbaOrder != 1)
    60026002      {
    60036003        p_ExpVectorAdd (h.sig,F->m[i],currRing);
     
    60366036      }
    60376037      /*
    6038       if (!strat->incremental)
     6038      if (strat->sbaOrder != 1)
    60396039      {
    60406040        for(j=0;j<i;j++)
     
    73417341   *****************************************/
    73427342  //strat->rewCrit1     = faugereRewCriterion;
    7343   if (strat->incremental)
     7343  if (strat->sbaOrder == 1)
    73447344  {
    73457345    strat->syzCrit  = syzCriterionInc;
     
    77657765  omFreeSize((ADDRESS)strat->syz,(strat->syzmax)*sizeof(poly));
    77667766  omFreeSize((ADDRESS)strat->sevSyz,(strat->syzmax)*sizeof(unsigned long));
    7767   if (strat->incremental)
     7767  if (strat->sbaOrder == 1)
    77687768  {
    77697769    omFreeSize(strat->syzIdx,(strat->syzidxmax)*sizeof(int));
     
    82548254{
    82558255  int n = rBlocks(r); // Including trailing zero!
    8256   // if incremental => use (C,monomial order from r)
    8257   if (strat->incremental)
     8256  // if sbaOrder == 1 => use (C,monomial order from r)
     8257  if (strat->sbaOrder == 1)
    82588258  {
    82598259    if (r->order[0] == ringorder_C || r->order[0] == ringorder_c)
     
    82988298  }
    82998299
    8300   // not incremental => use Schreyer order
     8300  // not sbaOrder == 1 => use Schreyer order
    83018301  // this is done by a trick when initializing the signatures
    83028302  // in initSLSba():
  • kernel/kutil.h

    rfaa12b1 rf7f084  
    310310                // syzygy of component i comes up
    311311                // important for signature-based algorithms
    312   BOOLEAN incremental;
     312  unsigned sbaOrder;
    313313  unsigned long currIdx;
    314314  int max_lower_index;
Note: See TracChangeset for help on using the changeset viewer.