1 | #ifndef KSTD1_H |
---|
2 | #define KSTD1_H |
---|
3 | /**************************************** |
---|
4 | * Computer Algebra System SINGULAR * |
---|
5 | ****************************************/ |
---|
6 | /* $Id: kstd1.h,v 1.4 1997-08-05 13:04:04 Singular 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 std(ideal F, ideal Q, tHomog h, intvec ** w,intvec *hilb=NULL, |
---|
26 | int syzComp=0,int newIdeal=0); |
---|
27 | #ifdef STDTRACE |
---|
28 | lists TraceStd(leftv,int , ideal F, ideal Q, tHomog h, intvec ** w,intvec *hilb=NULL, |
---|
29 | int syzComp=0,int newIdeal=0); |
---|
30 | #endif |
---|
31 | |
---|
32 | /* the following global data are defined in kutil.cc */ |
---|
33 | //extern int syzComp; |
---|
34 | /*stop building pairs after that component --> ideals.cc, syz.cc */ |
---|
35 | extern int LazyPass,LazyDegree,mu,Kstd1_deg; |
---|
36 | #define Kstd1_mu mu |
---|
37 | /*parameters for Lazy or global stops --> ipshell.cc, grammar.y*/ |
---|
38 | extern BITSET kOptions; |
---|
39 | /*the known test options (a constant)*/ |
---|
40 | extern BITSET validOpts; |
---|
41 | |
---|
42 | void initMora(ideal F,kStrategy strat); |
---|
43 | |
---|
44 | ideal kInterRed (ideal F, ideal Q=NULL); |
---|
45 | int kModDeg(poly p); |
---|
46 | |
---|
47 | ideal stdred(ideal F, ideal Q, tHomog h,intvec ** w); |
---|
48 | |
---|
49 | lists min_std(ideal F, ideal Q, tHomog h,intvec ** w, intvec *hilb=NULL, |
---|
50 | int syzComp=0,int reduced=0); |
---|
51 | |
---|
52 | |
---|
53 | extern pFDegProc pOldFDeg; |
---|
54 | extern intvec * kModW; |
---|
55 | |
---|
56 | /* options: |
---|
57 | 0 prot |
---|
58 | 1 redSB |
---|
59 | 2 Gebauer/Moeller |
---|
60 | 3 notSugar |
---|
61 | 4 interrupt |
---|
62 | 5 sugarCrit |
---|
63 | 6 teach |
---|
64 | 7 cancel unit |
---|
65 | 8 morePairs |
---|
66 | 9 return SB (syz,quotient,intersect) |
---|
67 | 10 fastHC |
---|
68 | 11-19 sort in L/T |
---|
69 | 20 redBest |
---|
70 | 21 keep local variable with keepring of a loacal ring |
---|
71 | 22 staircaseBound: in NF create a HC x1^degBound+1 |
---|
72 | 23 multBound |
---|
73 | 24 degBound |
---|
74 | 25 no redTail(p)/redTail(s) |
---|
75 | 26 integer strategy |
---|
76 | 27 stop at HC (finiteDeterminacyTest) |
---|
77 | 28 minimizes directly during the mres command |
---|
78 | 29 std + 1 new element |
---|
79 | 30 noRedSyz |
---|
80 | 31 weight |
---|
81 | */ |
---|
82 | |
---|
83 | #endif |
---|
84 | |
---|