MCPcopy Create free account
hub / github.com/Singular/Singular / kInterRedOld

Function kInterRedOld

kernel/GBEngine/kstd1.cc:3452–3544  ·  view source on GitHub ↗

2 *interreduces F */ old version

Source from the content-addressed store, hash-verified

3450*/
3451// old version
3452ideal kInterRedOld (ideal F,const ideal Q)
3453{
3454 int j;
3455 kStrategy strat = new skStrategy;
3456
3457 ideal tempF = F;
3458 ideal tempQ = Q;
3459
3460#ifdef HAVE_PLURAL
3461 if(rIsSCA(currRing))
3462 {
3463 const unsigned int m_iFirstAltVar = scaFirstAltVar(currRing);
3464 const unsigned int m_iLastAltVar = scaLastAltVar(currRing);
3465 tempF = id_KillSquares(F, m_iFirstAltVar, m_iLastAltVar, currRing);
3466
3467 // this should be done on the upper level!!! :
3468 // tempQ = SCAQuotient(currRing);
3469
3470 if(Q == currRing->qideal)
3471 tempQ = SCAQuotient(currRing);
3472 }
3473#endif
3474
3475// if (TEST_OPT_PROT)
3476// {
3477// writeTime("start InterRed:");
3478// mflush();
3479// }
3480 //strat->syzComp = 0;
3481 strat->kAllAxis = (currRing->ppNoether) != NULL;
3482 strat->kNoether=pCopy((currRing->ppNoether));
3483 strat->ak = id_RankFreeModule(tempF,currRing);
3484 initBuchMoraCrit(strat);
3485 strat->NotUsedAxis = (BOOLEAN *)omAlloc(((currRing->N)+1)*sizeof(BOOLEAN));
3486 for (j=(currRing->N); j>0; j--) strat->NotUsedAxis[j] = TRUE;
3487 strat->enterS = enterSBba;
3488 strat->posInT = posInT17;
3489 strat->initEcart = initEcartNormal;
3490 strat->sl = -1;
3491 strat->tl = -1;
3492 strat->tmax = setmaxT;
3493 strat->T = initT();
3494 strat->R = initR();
3495 strat->sevT = initsevT();
3496 if (rHasLocalOrMixedOrdering(currRing)) strat->honey = TRUE;
3497 initS(tempF, tempQ, strat);
3498 if (TEST_OPT_REDSB)
3499 strat->noTailReduction=FALSE;
3500 updateS(TRUE,strat);
3501 if (TEST_OPT_REDSB && TEST_OPT_INTSTRATEGY)
3502 completeReduce(strat);
3503 //else if (TEST_OPT_PROT) PrintLn();
3504 cleanT(strat);
3505 if (strat->kNoether!=NULL) pLmFree(&strat->kNoether);
3506 omFreeSize((ADDRESS)strat->T,strat->tmax*sizeof(TObject));
3507 omFreeSize((ADDRESS)strat->ecartS,IDELEMS(strat->Shdl)*sizeof(int));
3508 omFreeSize((ADDRESS)strat->sevS,IDELEMS(strat->Shdl)*sizeof(unsigned long));
3509 omFreeSize((ADDRESS)strat->NotUsedAxis,((currRing->N)+1)*sizeof(BOOLEAN));

Callers 7

jjStdJanetBasisFunction · 0.85
idInterRedFunction · 0.85
syMinStep1Function · 0.85
syResolventeFunction · 0.85
k_sca_gr_bbaFunction · 0.85
k_sca_bbaFunction · 0.85
kInterRedFunction · 0.85

Calls 15

rIsSCAFunction · 0.85
scaFirstAltVarFunction · 0.85
scaLastAltVarFunction · 0.85
id_KillSquaresFunction · 0.85
SCAQuotientFunction · 0.85
initBuchMoraCritFunction · 0.85
initTFunction · 0.85
initRFunction · 0.85
initsevTFunction · 0.85
rHasLocalOrMixedOrderingFunction · 0.85
initSFunction · 0.85
updateSFunction · 0.85

Tested by

no test coverage detected