source: git/kernel/kstd1.h @ 83be980

spielwiese
Last change on this file since 83be980 was 83be980, checked in by Christian Eder, 12 years ago
adds signature-based algorithm files from master, does not build right now: fixes kstd1.cc for compilation
  • 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/* $Id$ */
7/*
8* ABSTRACT
9*/
10#include <kernel/structs.h>
11#include <polys/monomials/ring.h>
12
13ideal mora (ideal F, ideal Q,intvec *w,intvec *hilb,kStrategy strat);
14
15// lazy_reduce flags: can be combined by |
16#define KSTD_NF_LAZY   1
17  // do only a reduction of the leading term
18#define KSTD_NF_ECART  2
19  // only local: recude even with bad ecart
20#define KSTD_NF_NONORM 4
21  // only global: avoid normalization, return a multiply of NF
22
23poly kNF1(ideal F, ideal Q, poly q, kStrategy strat, int lazyReduce);
24ideal kNF1 (ideal F,ideal Q,ideal q, kStrategy strat, int lazyReduce);
25
26poly kNF (ideal F, ideal Q, poly p,int syzComp=0, int lazyReduce=0);
27ideal kNF(ideal F, ideal Q, ideal p,int syzComp=0, int lazyReduce=0);
28
29/// NOTE: this is just a wrapper which sets currRing for the actual kNF call
30poly kNF (ideal F, ideal Q, poly p,int syzComp, int lazyReduce, const ring _currRing);
31ideal kSba(ideal F,ideal Q, tHomog h, intvec ** mw, int incremental=0, int arri=0, intvec *hilb=NULL,
32          int syzComp=0,int newIdeal=0, intvec *vw=NULL);
33
34ideal kStd(ideal F, ideal Q, tHomog h, intvec ** mw,intvec *hilb=NULL,
35          int syzComp=0,int newIdeal=0, intvec *vw=NULL);
36
37ideal kStdShift(ideal F, ideal Q, tHomog h,intvec ** w, intvec *hilb,int syzComp,
38                int newIdeal, intvec *vw, int uptodeg, int lVblock);
39
40/* the following global data are defined in kutil.cc */
41//extern int syzComp;
42  /*stop building pairs after that component --> ideals.cc, syz.cc */
43extern int LazyPass,LazyDegree,Kstd1_mu,Kstd1_deg;
44  /*parameters for Lazy or global stops --> ipshell.cc, grammar.y*/
45extern BITSET kOptions;
46  /*the known test options (a constant)*/
47extern BITSET validOpts;
48
49void initMora(ideal F,kStrategy strat);
50
51ideal kInterRed (ideal F, ideal Q=NULL);
52ideal kInterRedOld (ideal F, ideal Q=NULL);
53long   kModDeg(poly p, ring r = currRing);
54long  kHomModDeg(poly p, ring r = currRing);
55
56ideal stdred(ideal F, ideal Q, tHomog h,intvec ** w);
57
58ideal kMin_std(ideal F, ideal Q, tHomog h,intvec ** w, ideal &M,
59              intvec *hilb=NULL, int syzComp=0,int reduced=0);
60
61
62extern intvec * kModW;
63extern intvec * kHomW;
64
65
66/* options:
670 prot
681 redSB
692 notBucket
703 notSugar
714 interrupt
725 sugarCrit
736 teach
747 cancel unit: obachman 11/00 tossed
758 morepairs: obachman 11/00: tossed
769 return SB (syz,quotient,intersect)
7710 fastHC
7811-19 sort in L/T
7920 redBest: obachman 11/00 tossed
80
8122 staircaseBound: in NF create a HC x1^degBound+1
8223 multBound
8324 degBound
8425 no redTail(p)/redTail(s)
8526 integer strategy
8627 stop at HC (finiteDeterminacyTest)
8728 infRedTail: ignore ecart in local redTail-calls
8829 kStd + 1 new element
8930 noRedSyz
9031 weight
91verbose:31 stop at certain weights
92*/
93
94#endif
95
Note: See TracBrowser for help on using the repository browser.