1 | #ifndef KSTD1_H |
---|
2 | #define KSTD1_H |
---|
3 | /**************************************** |
---|
4 | * Computer Algebra System SINGULAR * |
---|
5 | ****************************************/ |
---|
6 | /* $Id: kstd1.h,v 1.17 2000-12-20 11:15:44 obachman Exp $ */ |
---|
7 | /* |
---|
8 | * ABSTRACT |
---|
9 | */ |
---|
10 | #include "structs.h" |
---|
11 | |
---|
12 | /*2 |
---|
13 | *input: F: a set (array) of polys with <= Fmax entries (0..Fmax-1) |
---|
14 | * *S: a set (array) of polys with *Smax initialized entries (0..*Smax-1) |
---|
15 | *output:*S: the standard base: a set (array) with <= *Smax+1 entries (0..*Smax) |
---|
16 | */ |
---|
17 | ideal mora (ideal F, ideal Q,intvec *w,intvec *hilb,kStrategy strat); |
---|
18 | |
---|
19 | poly kNF1(ideal F, ideal Q, poly q, kStrategy strat, int lazyReduce); |
---|
20 | ideal kNF1 (ideal F,ideal Q,ideal q, kStrategy strat, int lazyReduce); |
---|
21 | |
---|
22 | poly kNF (ideal F, ideal Q, poly p,int syzComp=0, int lazyReduce=0); |
---|
23 | ideal kNF(ideal F, ideal Q, ideal p,int syzComp=0, int lazyReduce=0); |
---|
24 | |
---|
25 | ideal kStd(ideal F, ideal Q, tHomog h, intvec ** mw,intvec *hilb=NULL, |
---|
26 | int syzComp=0,int newIdeal=0, intvec *vw=NULL); |
---|
27 | |
---|
28 | /* the following global data are defined in kutil.cc */ |
---|
29 | //extern int syzComp; |
---|
30 | /*stop building pairs after that component --> ideals.cc, syz.cc */ |
---|
31 | extern int LazyPass,LazyDegree,mu,Kstd1_deg; |
---|
32 | #define Kstd1_mu mu |
---|
33 | /*parameters for Lazy or global stops --> ipshell.cc, grammar.y*/ |
---|
34 | extern BITSET kOptions; |
---|
35 | /*the known test options (a constant)*/ |
---|
36 | extern BITSET validOpts; |
---|
37 | |
---|
38 | void initMora(ideal F,kStrategy strat); |
---|
39 | |
---|
40 | ideal kInterRed (ideal F, ideal Q=NULL); |
---|
41 | long kModDeg(poly p, ring r = currRing); |
---|
42 | long kHomModDeg(poly p, ring r = currRing); |
---|
43 | |
---|
44 | ideal stdred(ideal F, ideal Q, tHomog h,intvec ** w); |
---|
45 | |
---|
46 | lists min_std(ideal F, ideal Q, tHomog h,intvec ** w, intvec *hilb=NULL, |
---|
47 | int syzComp=0,int reduced=0); |
---|
48 | |
---|
49 | |
---|
50 | extern pFDegProc pFDegOld; |
---|
51 | extern pLDegProc pLDegOld; |
---|
52 | extern intvec * kModW; |
---|
53 | |
---|
54 | /* options: |
---|
55 | 0 prot |
---|
56 | 1 redSB |
---|
57 | 2 Gebauer/Moeller: obachman 10/00: replaced by notBucket |
---|
58 | 3 notSugar |
---|
59 | 4 interrupt |
---|
60 | 5 sugarCrit |
---|
61 | 6 teach |
---|
62 | 7 cancel unit: obachman 11/00 tossed |
---|
63 | 8 morepairs: obachman 11/00: tossed |
---|
64 | 9 return SB (syz,quotient,intersect) |
---|
65 | 10 fastHC |
---|
66 | 11-19 sort in L/T |
---|
67 | 20 redBest: obachman 11/00 tossed |
---|
68 | 21 keep local variable with keepring of a loacal ring |
---|
69 | 22 staircaseBound: in NF create a HC x1^degBound+1 |
---|
70 | 23 multBound |
---|
71 | 24 degBound |
---|
72 | 25 no redTail(p)/redTail(s) |
---|
73 | 26 integer strategy |
---|
74 | 27 stop at HC (finiteDeterminacyTest) |
---|
75 | 28 infRedTail: ignore ecart in local redTail-calls |
---|
76 | 29 kStd + 1 new element |
---|
77 | 30 noRedSyz |
---|
78 | 31 weight |
---|
79 | verbose:31 stop at certain weights |
---|
80 | */ |
---|
81 | |
---|
82 | #endif |
---|
83 | |
---|