Changeset f7f084 in git
- Timestamp:
- Nov 28, 2013, 8:16:24 PM (10 years ago)
- 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
- Location:
- kernel
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/kstd1.cc
rfaa12b1 rf7f084 1422 1422 // standard basis computations 1423 1423 strat->red = redSig; 1424 //strat-> incremental = TRUE;1424 //strat->sbaOrder = 1; 1425 1425 strat->currIdx = 1; 1426 1426 } … … 2253 2253 } 2254 2254 2255 ideal kSba(ideal F, ideal Q, tHomog h,intvec ** w, int incremental, int arri, intvec *hilb,int syzComp,2255 ideal kSba(ideal F, ideal Q, tHomog h,intvec ** w, int sbaOrder, int arri, intvec *hilb,int syzComp, 2256 2256 int newIdeal, intvec *vw) 2257 2257 { … … 2263 2263 BOOLEAN delete_w=(w==NULL); 2264 2264 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; 2273 2266 if (arri!=0) 2274 2267 { -
kernel/kstd2.cc
rfaa12b1 rf7f084 63 63 64 64 // counts sba's reduction steps 65 #if SBA_PR NT_REDUCTION_STEPS65 #if SBA_PRINT_REDUCTION_STEPS 66 66 long sba_reduction_steps; 67 67 long sba_interreduction_steps; … … 1675 1675 // induced Schreyer order. 1676 1676 // The corresponding orders are computed in sbaRing(), depending 1677 // on the flag strat-> incremental1677 // on the flag strat->sbaOrder 1678 1678 #if SBA_PRINT_ZERO_REDUCTIONS 1679 1679 long zeroreductions = 0; … … 1701 1701 ring sRing, currRingOld; 1702 1702 currRingOld = currRing; 1703 if (strat-> incremental)1703 if (strat->sbaOrder == 1) 1704 1704 { 1705 1705 sRing = sbaRing(strat); … … 1804 1804 else strat->noClearS=TRUE; 1805 1805 } 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) 1807 1807 { 1808 1808 strat->currIdx = pGetComp(strat->L[strat->Ll].sig); … … 1969 1969 // remove sigsafe label since it is no longer valid for the next element to 1970 1970 // be reduced 1971 if (strat-> incremental)1971 if (strat->sbaOrder == 1) 1972 1972 { 1973 1973 for (int jj = 0; jj<strat->tl+1; jj++) … … 2017 2017 // enter into S, L, and T 2018 2018 //if ((!TEST_OPT_IDLIFT) || (pGetComp(strat->P.p) <= strat->syzComp)) 2019 if(!strat-> incremental)2019 if(!strat->sbaOrder == 1) 2020 2020 { 2021 2021 BOOLEAN overwrite = TRUE; … … 2229 2229 } 2230 2230 #endif 2231 if (strat-> incremental&& sRing!=currRingOld)2231 if (strat->sbaOrder == 1 && sRing!=currRingOld) 2232 2232 { 2233 2233 rChangeCurrRing (currRingOld); -
kernel/kutil.cc
rfaa12b1 rf7f084 5937 5937 strat->S = strat->Shdl->m; 5938 5938 strat->sig = (poly *)omAlloc0(i*sizeof(poly)); 5939 if ( !strat->incremental)5939 if (strat->sbaOrder != 1) 5940 5940 { 5941 5941 strat->syz = (poly *)omAlloc0(i*sizeof(poly)); … … 5999 5999 // => we can keep the underlying monomial order and get a Schreyer 6000 6000 // order without any bigger overhead 6001 if ( !strat->incremental)6001 if (strat->sbaOrder != 1) 6002 6002 { 6003 6003 p_ExpVectorAdd (h.sig,F->m[i],currRing); … … 6036 6036 } 6037 6037 /* 6038 if ( !strat->incremental)6038 if (strat->sbaOrder != 1) 6039 6039 { 6040 6040 for(j=0;j<i;j++) … … 7341 7341 *****************************************/ 7342 7342 //strat->rewCrit1 = faugereRewCriterion; 7343 if (strat-> incremental)7343 if (strat->sbaOrder == 1) 7344 7344 { 7345 7345 strat->syzCrit = syzCriterionInc; … … 7765 7765 omFreeSize((ADDRESS)strat->syz,(strat->syzmax)*sizeof(poly)); 7766 7766 omFreeSize((ADDRESS)strat->sevSyz,(strat->syzmax)*sizeof(unsigned long)); 7767 if (strat-> incremental)7767 if (strat->sbaOrder == 1) 7768 7768 { 7769 7769 omFreeSize(strat->syzIdx,(strat->syzidxmax)*sizeof(int)); … … 8254 8254 { 8255 8255 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) 8258 8258 { 8259 8259 if (r->order[0] == ringorder_C || r->order[0] == ringorder_c) … … 8298 8298 } 8299 8299 8300 // not incremental=> use Schreyer order8300 // not sbaOrder == 1 => use Schreyer order 8301 8301 // this is done by a trick when initializing the signatures 8302 8302 // in initSLSba(): -
kernel/kutil.h
rfaa12b1 rf7f084 310 310 // syzygy of component i comes up 311 311 // important for signature-based algorithms 312 BOOLEAN incremental;312 unsigned sbaOrder; 313 313 unsigned long currIdx; 314 314 int max_lower_index;
Note: See TracChangeset
for help on using the changeset viewer.