![]() |
#include <kernel/mod2.h>
#include <unistd.h>
#include <omp.h>
#include <kernel/structs.h>
#include <kernel/GBEngine/kutil.h>
#include <omalloc/omalloc.h>
#include <kernel/polys.h>
#include <polys/monomials/p_polys.h>
#include <polys/templates/p_Procs.h>
#include <kernel/ideals.h>
#include <kernel/GBEngine/kstd1.h>
#include <kernel/GBEngine/khstd.h>
#include <polys/kbuckets.h>
#include <polys/weight.h>
#include <misc/intvec.h>
#include <kernel/GBEngine/f5gb.h>
#include <kernel/GBEngine/f5data.h>
#include <kernel/GBEngine/f5lists.h>
#include <kernel/oswrapper/timer.h>
Go to the source code of this file.
Macros | |
#define | pDeg(A) p_Deg(A,currRing) |
Functions | |
void | qsortDegree (poly *left, poly *right) |
long | sumVector (int *v, int k) |
builds the sum of the entries of the exponent vectors, i.e. More... | |
bool | compareMonomials (int *m1, int **m2, int numberOfRules, int k) |
compares monomials, i.e. More... | |
LList * | F5inc (int i, poly f_i, LList *gPrev, LList *reducers, ideal gbPrev, poly ONE, LTagList *lTag, RList *rules, RTagList *rTag, int plus, int termination) |
bool | checkDGB (LList *gPrev) |
bool | arrisCheck (CNode *first, LNode *firstGCurr, long arrideg) |
void | criticalPair (LList *gPrev, CListOld *critPairs, LTagList *lTag, RTagList *rTag, RList *rules, PList *rejectedGBList, int plus) |
void | criticalPair2 (LList *gPrev, CListOld *critPairs, LTagList *lTag, RTagList *rTag, RList *rules, PList *rejectedGBList) |
bool | criterion1 (LList *gPrev, poly t, LNode *l, LTagList *lTag) |
bool | criterion2 (int idx, poly t, LNode *l, RList *rules, RTagList *rTag) |
bool | criterion2 (poly t, LPolyOld *l, RList *rules, RuleOld *testedRuleOld) |
int | computeUsefulMinDeg (CNode *first) |
void | computeSPols (CNode *first, RTagList *rTag, RList *rules, LList *sPolyList, PList *rejectedGBList) |
void | reduction (LList *sPolyList, CListOld *critPairs, LList *gPrev, RList *rules, LTagList *lTag, RTagList *rTag, ideal gbPrev, PList *rejectedGBList, int plus) |
void | newReduction (LList *sPolyList, CListOld *critPairs, LList *gPrev, LList *reducers, RList *rules, LTagList *lTag, RTagList *rTag, ideal gbPrev, int termination, PList *rejectedGBList, int plus) |
void | findReducers (LNode *l, LList *sPolyList, ideal gbPrev, LList *gPrev, LList *reducers, CListOld *critPairs, RList *rules, LTagList *lTag, RTagList *rTag, int termination, PList *rejectedGBList, int plus) |
searches for reducers of temp similar to the symbolic preprocessing of F4 and divides them into a "good" and "bad" part: More... | |
void | topReduction (LNode *l, LList *sPolyList, LList *gPrev, CListOld *critPairs, RList *rules, LTagList *lTag, RTagList *rTag, ideal gbPrev, PList *rejectedGBList, int plus) |
LNode * | findReductor (LNode *l, LList *sPolyList, LNode *gPrevRedCheck, LList *gPrev, RList *rules, LTagList *lTag, RTagList *rTag, PList *rejectedGBList) |
ideal | F5main (ideal id, ring r, int opt, int plus, int termination) |
Variables | |
int | notInG = 0 |
int | numberOfRules = 0 |
int | reductionsToZero = 0 |
int | reductionTime = 0 |
int | spolsTime = 0 |
int | highestDegree = 0 |
int | degreeBound = 0 |
int | numberUsefulPairs = 0 |
int | numberUselessPairs = 0 |
int | numberUsefulPairsMinDeg = 0 |
int | highestDegreeGBCriticalPair = 0 |
int | numberRejectedF5CriticalPairs = 0 |
int | numberOfReductions = 0 |
int | numberOfSpolys = 0 |
Definition at line 386 of file f5gb.cc.
bool checkDGB | ( | LList * | gPrev | ) |
Definition at line 303 of file f5gb.cc.
bool compareMonomials | ( | int * | m1, |
int ** | m2, | ||
int | numberOfRules, | ||
int | k | ||
) |
compares monomials, i.e.
Definition at line 112 of file f5gb.cc.
|
inline |
Definition at line 848 of file f5gb.cc.
int computeUsefulMinDeg | ( | CNode * | first | ) |
Definition at line 832 of file f5gb.cc.
Definition at line 618 of file f5gb.cc.
Definition at line 679 of file f5gb.cc.
Definition at line 791 of file f5gb.cc.
|
inline |
Definition at line 445 of file f5gb.cc.
|
inline |
Definition at line 557 of file f5gb.cc.
LList* F5inc | ( | int | i, |
poly | f_i, | ||
LList * | gPrev, | ||
LList * | reducers, | ||
ideal | gbPrev, | ||
poly | ONE, | ||
LTagList * | lTag, | ||
RList * | rules, | ||
RTagList * | rTag, | ||
int | plus, | ||
int | termination | ||
) |
Definition at line 134 of file f5gb.cc.
ideal F5main | ( | ideal | id, |
ring | r, | ||
int | opt, | ||
int | plus, | ||
int | termination | ||
) |
Definition at line 1893 of file f5gb.cc.
void findReducers | ( | LNode * | l, |
LList * | sPolyList, | ||
ideal | gbPrev, | ||
LList * | gPrev, | ||
LList * | reducers, | ||
CListOld * | critPairs, | ||
RList * | rules, | ||
LTagList * | lTag, | ||
RTagList * | rTag, | ||
int | termination, | ||
PList * | rejectedGBList, | ||
int | plus | ||
) |
searches for reducers of temp similar to the symbolic preprocessing of F4 and divides them into a "good" and "bad" part:
the "good" ones are the reducers which do not corrupt the label of temp, with these the normal form of temp is computed
the "bad" ones are the reducers which corrupt the label of temp, they are tested
Definition at line 1206 of file f5gb.cc.
LNode* findReductor | ( | LNode * | l, |
LList * | sPolyList, | ||
LNode * | gPrevRedCheck, | ||
LList * | gPrev, | ||
RList * | rules, | ||
LTagList * | lTag, | ||
RTagList * | rTag, | ||
PList * | rejectedGBList | ||
) |
Definition at line 1818 of file f5gb.cc.
|
inline |
Definition at line 1139 of file f5gb.cc.
Definition at line 55 of file f5gb.cc.
|
inline |
Definition at line 1093 of file f5gb.cc.
long sumVector | ( | int * | v, |
int | k | ||
) |
|
inline |
Definition at line 1708 of file f5gb.cc.