![]() |
#include <string.h>
#include <omalloc/omalloc.h>
#include <omalloc/omallocClass.h>
#include <misc/mylimits.h>
#include <kernel/polys.h>
#include <polys/operations/pShallowCopyDelete.h>
#include <kernel/structs.h>
#include <kernel/GBEngine/kstd1.h>
#include <kernel/GBEngine/kInline.h>
#include <kernel/GBEngine/shiftgb.h>
Go to the source code of this file.
Data Structures | |
struct | denominator_list_s |
class | sTObject |
class | sLObject |
class | skStrategy |
Macros | |
#define | HAVE_TAIL_RING |
#define | setmax 16 |
#define | setmaxL ((4096-12)/sizeof(LObject)) |
#define | setmaxLinc ((4096)/sizeof(LObject)) |
#define | setmaxT 64 |
#define | setmaxTinc 32 |
#define | KINLINE |
#define | NO_KINLINE 1 |
#define | ALLOW_PROD_CRIT(A) (!(A)->no_prod_crit) |
#define | messageSets(s) do {} while (0) |
#define | kTest(A) (TRUE) |
#define | kTest_TS(A) (TRUE) |
#define | kTest_T(T) (TRUE) |
#define | kTest_S(T) (TRUE) |
#define | kTest_L(T) (TRUE) |
Typedefs | |
typedef int * | intset |
typedef int64 | wlen_type |
typedef wlen_type * | wlen_set |
typedef class sTObject | TObject |
typedef class sLObject | LObject |
typedef TObject * | TSet |
typedef LObject * | LSet |
typedef denominator_list_s * | denominator_list |
Variables | |
denominator_list | DENOMINATOR_LIST |
int | strat_nr |
int | HCord |
int(* | test_PosInT )(const TSet T, const int tl, LObject &h) |
int(* | test_PosInL )(const LSet set, const int length, LObject *L, const kStrategy strat) |
struct denominator_list_s |
Data Fields | ||
---|---|---|
number | n | |
denominator_list | next |
typedef denominator_list_s* denominator_list |
BOOLEAN arriRewCriterion | ( | poly | sig, |
unsigned long | not_sevSig, | ||
poly | lm, | ||
kStrategy | strat, | ||
int | start | ||
) |
Definition at line 7275 of file kutil.cc.
BOOLEAN arriRewCriterionPre | ( | poly | sig, |
unsigned long | not_sevSig, | ||
poly | lm, | ||
kStrategy | strat, | ||
int | start | ||
) |
Definition at line 7306 of file kutil.cc.
KINLINE BOOLEAN arriRewDummy | ( | poly | sig, |
unsigned long | not_sevSig, | ||
poly | lm, | ||
kStrategy | strat, | ||
int | start | ||
) |
Definition at line 1958 of file kstd2.cc.
ideal bbaShift | ( | ideal | F, |
ideal | Q, | ||
intvec * | w, | ||
intvec * | hilb, | ||
kStrategy | strat, | ||
int | uptodeg, | ||
int | lV | ||
) |
Definition at line 3995 of file kstd2.cc.
Definition at line 332 of file kutil.cc.
Definition at line 3250 of file kutil.cc.
Definition at line 3479 of file kutil.cc.
void cleanT | ( | kStrategy | strat | ) |
Definition at line 552 of file kutil.cc.
Definition at line 1122 of file kInline.h.
Definition at line 10624 of file kutil.cc.
ideal createG0 | ( | ) |
Definition at line 4545 of file kutil.cc.
Definition at line 318 of file kutil.cc.
Definition at line 243 of file kutil.cc.
Definition at line 1148 of file kutil.cc.
Definition at line 4660 of file kutil.cc.
Definition at line 4743 of file kutil.cc.
Definition at line 2217 of file kutil.cc.
void enterOnePairManyShifts | ( | int | i, |
poly | p, | ||
int | ecart, | ||
int | isFromQ, | ||
kStrategy | strat, | ||
int | atR, | ||
int | uptodeg, | ||
int | lV | ||
) |
Definition at line 12175 of file kutil.cc.
Definition at line 1934 of file kutil.cc.
void enterOnePairSelfShifts | ( | poly | qq, |
poly | p, | ||
int | ecart, | ||
int | isFromQ, | ||
kStrategy | strat, | ||
int | atR, | ||
int | uptodeg, | ||
int | lV | ||
) |
Definition at line 12250 of file kutil.cc.
void enterOnePairShift | ( | poly | q, |
poly | p, | ||
int | ecart, | ||
int | isFromQ, | ||
kStrategy | strat, | ||
int | atR, | ||
int | ecartq, | ||
int | qisFromQ, | ||
int | shiftcount, | ||
int | ifromS, | ||
int | uptodeg, | ||
int | lV | ||
) |
Definition at line 12313 of file kutil.cc.
void enterOnePairSigRing | ( | int | i, |
poly | p, | ||
poly | pSig, | ||
int | ecart, | ||
int | isFromQ, | ||
kStrategy | strat, | ||
int | atR | ||
) |
BOOLEAN enterOneStrongPoly | ( | int | i, |
poly | p, | ||
int | , | ||
int | , | ||
kStrategy | strat, | ||
int | atR = -1 , |
||
bool | enterTstrong = FALSE |
||
) |
Definition at line 1513 of file kutil.cc.
BOOLEAN enterOneStrongPolySig | ( | int | i, |
poly | p, | ||
poly | sig, | ||
int | , | ||
int | , | ||
kStrategy | strat, | ||
int | atR = -1 |
||
) |
Definition at line 1708 of file kutil.cc.
Definition at line 4936 of file kutil.cc.
void enterpairsShift | ( | poly | h, |
int | k, | ||
int | ecart, | ||
int | pos, | ||
kStrategy | strat, | ||
int | atR, | ||
int | uptodeg, | ||
int | lV | ||
) |
Definition at line 12607 of file kutil.cc.
void enterpairsSig | ( | poly | h, |
poly | hSig, | ||
int | from, | ||
int | k, | ||
int | ec, | ||
int | pos, | ||
kStrategy | strat, | ||
int | atR = -1 |
||
) |
Definition at line 4962 of file kutil.cc.
Definition at line 9240 of file kutil.cc.
void entersets | ( | LObject | h | ) |
Definition at line 9342 of file kutil.cc.
Definition at line 9677 of file kutil.cc.
Definition at line 9480 of file kutil.cc.
Definition at line 9565 of file kutil.cc.
void exitSba | ( | kStrategy | strat | ) |
Definition at line 10372 of file kutil.cc.
void f5c | ( | kStrategy | strat, |
int & | olddeg, | ||
int & | minimcnt, | ||
int & | hilbeledeg, | ||
int & | hilbcount, | ||
int & | srmax, | ||
int & | lrmax, | ||
int & | reduc, | ||
ideal | Q, | ||
intvec * | w, | ||
intvec * | hilb | ||
) |
Definition at line 3674 of file kstd2.cc.
BOOLEAN faugereRewCriterion | ( | poly | sig, |
unsigned long | not_sevSig, | ||
poly | lm, | ||
kStrategy | strat, | ||
int | start | ||
) |
Definition at line 7213 of file kutil.cc.
void finalReduceByMon | ( | kStrategy | strat | ) |
used for GB over ZZ: final reduction by constant elements background: any known constant element of ideal suppresses intermediate coefficient swell and beautifies output
Definition at line 11196 of file kutil.cc.
ideal freegb | ( | ideal | I, |
int | uptodeg, | ||
int | lVblock | ||
) |
Definition at line 4347 of file kstd2.cc.
Definition at line 482 of file kutil.cc.
void initBba | ( | kStrategy | strat | ) |
Definition at line 1426 of file kstd1.cc.
void initBbaShift | ( | kStrategy | strat | ) |
Definition at line 4508 of file kstd2.cc.
void initBuchMora | ( | ideal | F, |
ideal | Q, | ||
kStrategy | strat | ||
) |
Definition at line 10103 of file kutil.cc.
void initBuchMoraCrit | ( | kStrategy | strat | ) |
Definition at line 9779 of file kutil.cc.
void initBuchMoraPos | ( | kStrategy | strat | ) |
Definition at line 9930 of file kutil.cc.
void initBuchMoraPosRing | ( | kStrategy | strat | ) |
Definition at line 10016 of file kutil.cc.
void initBuchMoraShift | ( | ideal | F, |
ideal | Q, | ||
kStrategy | strat | ||
) |
Definition at line 12096 of file kutil.cc.
void initEcartBBA | ( | TObject * | h | ) |
void initEcartNormal | ( | TObject * | h | ) |
Definition at line 1256 of file kutil.cc.
void initenterpairsShift | ( | poly | h, |
int | k, | ||
int | ecart, | ||
int | isFromQ, | ||
kStrategy | strat, | ||
int | atR, | ||
int | uptodeg, | ||
int | lV | ||
) |
Definition at line 12639 of file kutil.cc.
Definition at line 9761 of file kutil.cc.
void initS | ( | ideal | F, |
ideal | Q, | ||
kStrategy | strat | ||
) |
Definition at line 8044 of file kutil.cc.
void initSba | ( | ideal | F, |
kStrategy | strat | ||
) |
Definition at line 1479 of file kstd1.cc.
void initSbaBuchMora | ( | ideal | F, |
ideal | Q, | ||
kStrategy | strat | ||
) |
Definition at line 10299 of file kutil.cc.
void initSbaCrit | ( | kStrategy | strat | ) |
Definition at line 9843 of file kutil.cc.
void initSbaPos | ( | kStrategy | strat | ) |
Definition at line 10197 of file kutil.cc.
void initSL | ( | ideal | F, |
ideal | Q, | ||
kStrategy | strat | ||
) |
Definition at line 8140 of file kutil.cc.
void initSLSba | ( | ideal | F, |
ideal | Q, | ||
kStrategy | strat | ||
) |
Definition at line 8239 of file kutil.cc.
void initSyzRules | ( | kStrategy | strat | ) |
Definition at line 8391 of file kutil.cc.
Definition at line 81 of file kInline.h.
KINLINE BOOLEAN k_GetLeadTerms | ( | const poly | p1, |
const poly | p2, | ||
const ring | p_r, | ||
poly & | m1, | ||
poly & | m2, | ||
const ring | m_r | ||
) |
Definition at line 935 of file kInline.h.
KINLINE void k_GetStrongLeadTerms | ( | const poly | p1, |
const poly | p2, | ||
const ring | leadRing, | ||
poly & | m1, | ||
poly & | m2, | ||
poly & | lcm, | ||
const ring | taiRing | ||
) |
Definition at line 978 of file kInline.h.
Definition at line 876 of file kInline.h.
Definition at line 908 of file kInline.h.
Definition at line 885 of file kInline.h.
Definition at line 913 of file kInline.h.
Definition at line 894 of file kInline.h.
Definition at line 918 of file kInline.h.
Definition at line 901 of file kInline.h.
Definition at line 923 of file kInline.h.
Definition at line 10813 of file kutil.cc.
Definition at line 10851 of file kutil.cc.
Definition at line 4416 of file kutil.cc.
void kDebugPrint | ( | kStrategy | strat | ) |
Output some debug info about a given strategy.
Definition at line 11808 of file kutil.cc.
return -1 if no divisor is found number of first divisor in S, otherwise
Definition at line 197 of file kstd2.cc.
TObject* kFindDivisibleByInS | ( | kStrategy | strat, |
int | pos, | ||
LObject * | L, | ||
TObject * | T, | ||
long | ecart = LONG_MAX |
||
) |
Definition at line 7369 of file kutil.cc.
return -1 if no divisor is found number of first divisor in T, otherwise
Definition at line 88 of file kstd2.cc.
Definition at line 259 of file kstd2.cc.
Definition at line 318 of file kstd2.cc.
void kFreeStrat | ( | kStrategy | strat | ) |
Definition at line 3377 of file kstd2.cc.
ideal kNF2 | ( | ideal | F, |
ideal | Q, | ||
ideal | q, | ||
kStrategy | strat, | ||
int | lazyReduce | ||
) |
Definition at line 3516 of file kstd2.cc.
Definition at line 3446 of file kstd2.cc.
ideal kNF2Bound | ( | ideal | F, |
ideal | Q, | ||
ideal | q, | ||
int | bound, | ||
kStrategy | strat, | ||
int | lazyReduce | ||
) |
Definition at line 3591 of file kstd2.cc.
Definition at line 1017 of file kspoly.cc.
void ksCreateSpoly | ( | LObject * | Pair, |
poly | spNoether = NULL , |
||
int | use_buckets = 0 , |
||
ring | tailRing = currRing , |
||
poly | m1 = NULL , |
||
poly | m2 = NULL , |
||
TObject ** | R = NULL |
||
) |
Definition at line 774 of file kspoly.cc.
Definition at line 1073 of file kInline.h.
Definition at line 1053 of file kInline.h.
Definition at line 1063 of file kInline.h.
Definition at line 1083 of file kInline.h.
int ksReducePoly | ( | LObject * | PR, |
TObject * | PW, | ||
poly | spNoether = NULL , |
||
number * | coef = NULL , |
||
kStrategy | strat = NULL |
||
) |
Definition at line 45 of file kspoly.cc.
int ksReducePolyBound | ( | LObject * | PR, |
TObject * | PW, | ||
int | bound, | ||
poly | spNoether = NULL , |
||
number * | coef = NULL , |
||
kStrategy | strat = NULL |
||
) |
Definition at line 176 of file kspoly.cc.
int ksReducePolySig | ( | LObject * | PR, |
TObject * | PW, | ||
long | idx, | ||
poly | spNoether = NULL , |
||
number * | coef = NULL , |
||
kStrategy | strat = NULL |
||
) |
Definition at line 315 of file kspoly.cc.
int ksReducePolySigRing | ( | LObject * | PR, |
TObject * | PW, | ||
long | idx, | ||
poly | spNoether = NULL , |
||
number * | coef = NULL , |
||
kStrategy | strat = NULL |
||
) |
Definition at line 513 of file kspoly.cc.
Definition at line 889 of file kspoly.cc.
Definition at line 1026 of file kInline.h.
BOOLEAN kStratChangeTailRing | ( | kStrategy | strat, |
LObject * | L = NULL , |
||
TObject * | T = NULL , |
||
unsigned long | new_expbound = 0 |
||
) |
Definition at line 11262 of file kutil.cc.
void kStratInitChangeTailRing | ( | kStrategy | strat | ) |
Definition at line 11361 of file kutil.cc.
void message | ( | int | i, |
int * | reduc, | ||
int * | olddeg, | ||
kStrategy | strat, | ||
int | red_result | ||
) |
Definition at line 10747 of file kutil.cc.
void pairs | ( | ) |
Definition at line 11975 of file kutil.cc.
Definition at line 11944 of file kutil.cc.
Definition at line 11958 of file kutil.cc.
Definition at line 5291 of file kutil.cc.
Definition at line 6143 of file kutil.cc.
Definition at line 1098 of file kstd1.cc.
Definition at line 6401 of file kutil.cc.
Definition at line 6699 of file kutil.cc.
Definition at line 6513 of file kutil.cc.
Definition at line 6822 of file kutil.cc.
Definition at line 6898 of file kutil.cc.
int posInLF5CRing | ( | const LSet | set, |
int | start, | ||
const int | length, | ||
LObject * | L, | ||
const kStrategy | strat | ||
) |
Definition at line 6201 of file kutil.cc.
Definition at line 6225 of file kutil.cc.
Definition at line 5112 of file kutil.cc.
Definition at line 5213 of file kutil.cc.
Definition at line 6361 of file kutil.cc.
Definition at line 5346 of file kutil.cc.
Definition at line 5404 of file kutil.cc.
Definition at line 5557 of file kutil.cc.
Definition at line 5714 of file kutil.cc.
Definition at line 5809 of file kutil.cc.
Definition at line 5916 of file kutil.cc.
used for GB over ZZ: intermediate reduction by monomial elements background: any known constant element of ideal suppresses intermediate coefficient swell
Definition at line 11042 of file kutil.cc.
Definition at line 11107 of file kutil.cc.
poly preIntegerCheck | ( | ideal | F, |
ideal | Q | ||
) |
used for GB over ZZ: look for constant and monomial elements in the ideal background: any known constant element of ideal suppresses intermediate coefficient swell
Definition at line 10874 of file kutil.cc.
Definition at line 4381 of file kstd2.cc.
Definition at line 536 of file kstd2.cc.
Definition at line 1450 of file kstd2.cc.
TEST_OPT_REDTHROUGH &&
Definition at line 1290 of file kstd2.cc.
Definition at line 1654 of file kstd2.cc.
Definition at line 348 of file kstd1.cc.
Definition at line 432 of file kstd2.cc.
Definition at line 697 of file kstd2.cc.
Definition at line 865 of file kstd2.cc.
Definition at line 7577 of file kutil.cc.
Definition at line 7507 of file kutil.cc.
Definition at line 1091 of file kInline.h.
poly redtailBba | ( | LObject * | L, |
int | pos, | ||
kStrategy | strat, | ||
BOOLEAN | withT = FALSE , |
||
BOOLEAN | normalize = FALSE |
||
) |
Definition at line 7583 of file kutil.cc.
Definition at line 1111 of file kInline.h.
Definition at line 1104 of file kInline.h.
Definition at line 7808 of file kutil.cc.
KINLINE poly redtailBbaBound | ( | poly | p, |
int | pos, | ||
kStrategy | strat, | ||
int | bound, | ||
BOOLEAN | normalize = FALSE |
||
) |
Definition at line 1097 of file kInline.h.
poly redtailBbaBound | ( | LObject * | L, |
int | pos, | ||
kStrategy | strat, | ||
int | bound, | ||
BOOLEAN | withT = FALSE , |
||
BOOLEAN | normalize = FALSE |
||
) |
Definition at line 7691 of file kutil.cc.
Definition at line 12755 of file kutil.cc.
poly redtailSba | ( | LObject * | L, |
int | pos, | ||
kStrategy | strat, | ||
BOOLEAN | withT = FALSE , |
||
BOOLEAN | normalize = FALSE |
||
) |
Definition at line 1162 of file kstd2.cc.
void reorderS | ( | int * | suc, |
kStrategy | strat | ||
) |
Definition at line 5059 of file kutil.cc.
Definition at line 2333 of file kstd2.cc.
Definition at line 1645 of file kutil.cc.
Definition at line 11388 of file kutil.cc.
Definition at line 4899 of file kutil.cc.
void superenterpairsSig | ( | poly | h, |
poly | hSig, | ||
int | hFrom, | ||
int | k, | ||
int | ecart, | ||
int | pos, | ||
kStrategy | strat, | ||
int | atR = -1 |
||
) |
Definition at line 4909 of file kutil.cc.
Definition at line 7123 of file kutil.cc.
Definition at line 7161 of file kutil.cc.
long twoPow | ( | long | arg | ) |
void updateResult | ( | ideal | r, |
ideal | Q, | ||
kStrategy | strat | ||
) |
Definition at line 10412 of file kutil.cc.
Definition at line 9011 of file kutil.cc.
void updateSShift | ( | kStrategy | strat, |
int | uptodeg, | ||
int | lV | ||
) |
Definition at line 12068 of file kutil.cc.
denominator_list DENOMINATOR_LIST |
int strat_nr |
Definition at line 27 of file kstdfac.cc.