[35aab3] | 1 | #ifndef KSTD1_H |
---|
| 2 | #define KSTD1_H |
---|
| 3 | /**************************************** |
---|
| 4 | * Computer Algebra System SINGULAR * |
---|
| 5 | ****************************************/ |
---|
| 6 | /* |
---|
| 7 | * ABSTRACT |
---|
| 8 | */ |
---|
[599326] | 9 | #include <kernel/structs.h> |
---|
[210e07] | 10 | #include <polys/monomials/ring.h> |
---|
[35aab3] | 11 | |
---|
| 12 | ideal mora (ideal F, ideal Q,intvec *w,intvec *hilb,kStrategy strat); |
---|
| 13 | |
---|
[18ff4c] | 14 | // lazy_reduce flags: can be combined by | |
---|
| 15 | #define KSTD_NF_LAZY 1 |
---|
| 16 | // do only a reduction of the leading term |
---|
| 17 | #define KSTD_NF_ECART 2 |
---|
| 18 | // only local: recude even with bad ecart |
---|
| 19 | #define KSTD_NF_NONORM 4 |
---|
[0f7420d] | 20 | // only global: avoid normalization, return a multiply of NF |
---|
[18ff4c] | 21 | |
---|
[35aab3] | 22 | poly kNF1(ideal F, ideal Q, poly q, kStrategy strat, int lazyReduce); |
---|
| 23 | ideal kNF1 (ideal F,ideal Q,ideal q, kStrategy strat, int lazyReduce); |
---|
| 24 | |
---|
| 25 | poly kNF (ideal F, ideal Q, poly p,int syzComp=0, int lazyReduce=0); |
---|
| 26 | ideal kNF(ideal F, ideal Q, ideal p,int syzComp=0, int lazyReduce=0); |
---|
| 27 | |
---|
[64f0ca] | 28 | /// NOTE: this is just a wrapper which sets currRing for the actual kNF call |
---|
| 29 | poly kNF (ideal F, ideal Q, poly p,int syzComp, int lazyReduce, const ring _currRing); |
---|
[83be980] | 30 | ideal kSba(ideal F,ideal Q, tHomog h, intvec ** mw, int incremental=0, int arri=0, intvec *hilb=NULL, |
---|
| 31 | int syzComp=0,int newIdeal=0, intvec *vw=NULL); |
---|
[64f0ca] | 32 | |
---|
[35aab3] | 33 | ideal kStd(ideal F, ideal Q, tHomog h, intvec ** mw,intvec *hilb=NULL, |
---|
| 34 | int syzComp=0,int newIdeal=0, intvec *vw=NULL); |
---|
| 35 | |
---|
[1c473f] | 36 | ideal kStdShift(ideal F, ideal Q, tHomog h,intvec ** w, intvec *hilb,int syzComp, |
---|
| 37 | int newIdeal, intvec *vw, int uptodeg, int lVblock); |
---|
| 38 | |
---|
[35aab3] | 39 | /* the following global data are defined in kutil.cc */ |
---|
| 40 | //extern int syzComp; |
---|
| 41 | /*stop building pairs after that component --> ideals.cc, syz.cc */ |
---|
[c536ff] | 42 | extern int LazyPass,LazyDegree,Kstd1_mu,Kstd1_deg; |
---|
[35aab3] | 43 | /*parameters for Lazy or global stops --> ipshell.cc, grammar.y*/ |
---|
| 44 | extern BITSET kOptions; |
---|
| 45 | /*the known test options (a constant)*/ |
---|
| 46 | extern BITSET validOpts; |
---|
| 47 | |
---|
| 48 | void initMora(ideal F,kStrategy strat); |
---|
| 49 | |
---|
| 50 | ideal kInterRed (ideal F, ideal Q=NULL); |
---|
[e7c6b22] | 51 | ideal kInterRedOld (ideal F, ideal Q=NULL); |
---|
[35aab3] | 52 | long kModDeg(poly p, ring r = currRing); |
---|
| 53 | long kHomModDeg(poly p, ring r = currRing); |
---|
| 54 | |
---|
| 55 | ideal stdred(ideal F, ideal Q, tHomog h,intvec ** w); |
---|
| 56 | |
---|
| 57 | ideal kMin_std(ideal F, ideal Q, tHomog h,intvec ** w, ideal &M, |
---|
| 58 | intvec *hilb=NULL, int syzComp=0,int reduced=0); |
---|
| 59 | |
---|
| 60 | |
---|
| 61 | extern intvec * kModW; |
---|
[2f2bb21] | 62 | extern intvec * kHomW; |
---|
| 63 | |
---|
[35aab3] | 64 | |
---|
| 65 | /* options: |
---|
| 66 | 0 prot |
---|
| 67 | 1 redSB |
---|
[3a0e1a] | 68 | 2 notBucket |
---|
[35aab3] | 69 | 3 notSugar |
---|
| 70 | 4 interrupt |
---|
| 71 | 5 sugarCrit |
---|
| 72 | 6 teach |
---|
| 73 | 7 cancel unit: obachman 11/00 tossed |
---|
| 74 | 8 morepairs: obachman 11/00: tossed |
---|
| 75 | 9 return SB (syz,quotient,intersect) |
---|
| 76 | 10 fastHC |
---|
| 77 | 11-19 sort in L/T |
---|
| 78 | 20 redBest: obachman 11/00 tossed |
---|
[d544b1] | 79 | |
---|
[35aab3] | 80 | 22 staircaseBound: in NF create a HC x1^degBound+1 |
---|
| 81 | 23 multBound |
---|
| 82 | 24 degBound |
---|
| 83 | 25 no redTail(p)/redTail(s) |
---|
| 84 | 26 integer strategy |
---|
| 85 | 27 stop at HC (finiteDeterminacyTest) |
---|
| 86 | 28 infRedTail: ignore ecart in local redTail-calls |
---|
| 87 | 29 kStd + 1 new element |
---|
| 88 | 30 noRedSyz |
---|
| 89 | 31 weight |
---|
| 90 | verbose:31 stop at certain weights |
---|
| 91 | */ |
---|
| 92 | |
---|
| 93 | #endif |
---|
| 94 | |
---|