source: git/kernel/GBEngine/kstd1.h @ e21795

spielwiese
Last change on this file since e21795 was 2bf04b, checked in by Hans Schoenemann <hannes@…>, 8 years ago
format
  • Property mode set to 100644
File size: 2.8 KB
Line 
1#ifndef KSTD1_H
2#define KSTD1_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/*
7* ABSTRACT
8*/
9#include <kernel/structs.h>
10#include <polys/monomials/ring.h>
11
12ideal mora (ideal F, ideal Q,intvec *w,intvec *hilb,kStrategy strat);
13
14typedef BOOLEAN (*s_poly_proc_t)(kStrategy strat);
15
16// lazy_reduce flags: can be combined by |
17#define KSTD_NF_LAZY   1
18  // do only a reduction of the leading term
19#define KSTD_NF_ECART  2
20  // only local: recude even with bad ecart
21#define KSTD_NF_NONORM 4
22  // only global: avoid normalization, return a multiply of NF
23
24poly kNF1(ideal F, ideal Q, poly q, kStrategy strat, int lazyReduce);
25ideal kNF1 (ideal F,ideal Q,ideal q, kStrategy strat, int lazyReduce);
26
27poly kNF (ideal F, ideal Q, poly p,int syzComp=0, int lazyReduce=0);
28ideal kNF(ideal F, ideal Q, ideal p,int syzComp=0, int lazyReduce=0);
29
30/// NOTE: this is just a wrapper which sets currRing for the actual kNF call
31poly k_NF (ideal F, ideal Q, poly p,int syzComp, int lazyReduce, const ring _currRing);
32ideal kSba(ideal F,ideal Q, tHomog h, intvec ** mw, int incremental=0, int arri=0, intvec *hilb=NULL,
33          int syzComp=0,int newIdeal=0, intvec *vw=NULL);
34
35ideal kStd(ideal F, ideal Q, tHomog h, intvec ** mw,intvec *hilb=NULL,
36          int syzComp=0,int newIdeal=0, intvec *vw=NULL, s_poly_proc_t sp=NULL);
37
38ideal kStdShift(ideal F, ideal Q, tHomog h,intvec ** w, intvec *hilb,int syzComp,
39                int newIdeal, intvec *vw, int uptodeg, int lVblock);
40
41/* the following global data are defined in kutil.cc */
42//extern int syzComp;
43  /*stop building pairs after that component --> ideals.cc, syz.cc */
44extern int LazyPass,LazyDegree,Kstd1_mu,Kstd1_deg;
45  /*parameters for Lazy or global stops --> ipshell.cc, grammar.y*/
46extern BITSET kOptions;
47  /*the known test options (a constant)*/
48extern BITSET validOpts;
49
50void initMora(ideal F,kStrategy strat);
51
52ideal kInterRed (ideal F, ideal Q=NULL);
53ideal kInterRedOld (ideal F, ideal Q=NULL);
54long   kModDeg(poly p, ring r = currRing);
55long  kHomModDeg(poly p, ring r = currRing);
56
57ideal stdred(ideal F, ideal Q, tHomog h,intvec ** w);
58
59ideal kMin_std(ideal F, ideal Q, tHomog h,intvec ** w, ideal &M,
60              intvec *hilb=NULL, int syzComp=0,int reduced=0);
61
62
63extern intvec * kModW;
64extern intvec * kHomW;
65
66
67/* options:
680 prot
691 redSB
702 notBucket
713 notSugar
724 interrupt
735 sugarCrit
746 teach
757 cancel unit: obachman 11/00 tossed
768 morepairs: obachman 11/00: tossed
779 return SB (syz,quotient,intersect)
7810 fastHC
7911-19 sort in L/T
8020 redBest: obachman 11/00 tossed
81
8222 staircaseBound: in NF create a HC x1^degBound+1
8323 multBound
8424 degBound
8525 no redTail(p)/redTail(s)
8626 integer strategy
8727 stop at HC (finiteDeterminacyTest)
8828 infRedTail: ignore ecart in local redTail-calls
8929 kStd + 1 new element
9030 noRedSyz
9131 weight
92verbose:31 stop at certain weights
93*/
94
95#endif
96
Note: See TracBrowser for help on using the repository browser.