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

spielwiese
Last change on this file since c858487 was c858487, checked in by Frédéric Chapoton <chapoton@…>, 17 months ago
fix many typos in kernel/
  • Property mode set to 100644
File size: 3.1 KB
RevLine 
[35aab3]1#ifndef KSTD1_H
2#define KSTD1_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/*
7* ABSTRACT
8*/
[89f4843]9#include "kernel/structs.h"
10#include "polys/monomials/ring.h"
[35aab3]11
12ideal mora (ideal F, ideal Q,intvec *w,intvec *hilb,kStrategy strat);
13
[8204ed]14typedef BOOLEAN (*s_poly_proc_t)(kStrategy strat);
15
[18ff4c]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
[c858487]20  // only local: reduce even with bad ecart
[18ff4c]21#define KSTD_NF_NONORM 4
[0f7420d]22  // only global: avoid normalization, return a multiply of NF
[18ff4c]23
[35aab3]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
[c2ef83]30poly kNFBound (ideal F, ideal Q, poly p,int bound,int syzComp=0, int lazyReduce=0);
31ideal kNFBound (ideal F, ideal Q, ideal p,int bound,int syzComp=0, int lazyReduce=0);
32
[64f0ca]33/// NOTE: this is just a wrapper which sets currRing for the actual kNF call
[c6ded3]34poly k_NF (ideal F, ideal Q, poly p,int syzComp, int lazyReduce, const ring _currRing);
[83be980]35ideal kSba(ideal F,ideal Q, tHomog h, intvec ** mw, int incremental=0, int arri=0, intvec *hilb=NULL,
36          int syzComp=0,int newIdeal=0, intvec *vw=NULL);
[64f0ca]37
[35aab3]38ideal kStd(ideal F, ideal Q, tHomog h, intvec ** mw,intvec *hilb=NULL,
[8204ed]39          int syzComp=0,int newIdeal=0, intvec *vw=NULL, s_poly_proc_t sp=NULL);
[35aab3]40
[b95a5f]41ideal kStdShift(ideal F, ideal Q, tHomog h,intvec ** mw, intvec *hilb=NULL,
42    int syzComp=0, int newIdeal=0, intvec *vw=NULL, BOOLEAN rightGB=FALSE);
[1c473f]43
[c82ac11]44ideal rightgb(ideal F, ideal Q);
45
[35aab3]46/* the following global data are defined in kutil.cc */
47//extern int syzComp;
48  /*stop building pairs after that component --> ideals.cc, syz.cc */
[572022]49EXTERN_VAR int Kstd1_mu,Kstd1_deg;
50  /*parameters for global stops --> ipshell.cc, grammar.y*/
[a3f0fea]51EXTERN_VAR BITSET kOptions;
[35aab3]52  /*the known test options (a constant)*/
[a3f0fea]53EXTERN_VAR BITSET validOpts;
[35aab3]54
55void initMora(ideal F,kStrategy strat);
56
57ideal kInterRed (ideal F, ideal Q=NULL);
[e7c6b22]58ideal kInterRedOld (ideal F, ideal Q=NULL);
[35aab3]59long   kModDeg(poly p, ring r = currRing);
60long  kHomModDeg(poly p, ring r = currRing);
61
62ideal stdred(ideal F, ideal Q, tHomog h,intvec ** w);
63
64ideal kMin_std(ideal F, ideal Q, tHomog h,intvec ** w, ideal &M,
65              intvec *hilb=NULL, int syzComp=0,int reduced=0);
66
[79b554]67BOOLEAN kVerify(ideal F,ideal Q);
[35aab3]68
[a3f0fea]69EXTERN_VAR intvec * kModW;
70EXTERN_VAR intvec * kHomW;
[2f2bb21]71
[35aab3]72
73/* options:
740 prot
751 redSB
[3a0e1a]762 notBucket
[35aab3]773 notSugar
784 interrupt
795 sugarCrit
806 teach
817 cancel unit: obachman 11/00 tossed
828 morepairs: obachman 11/00: tossed
839 return SB (syz,quotient,intersect)
8410 fastHC
8511-19 sort in L/T
8620 redBest: obachman 11/00 tossed
[d544b1]87
[35aab3]8822 staircaseBound: in NF create a HC x1^degBound+1
8923 multBound
9024 degBound
9125 no redTail(p)/redTail(s)
9226 integer strategy
9327 stop at HC (finiteDeterminacyTest)
9428 infRedTail: ignore ecart in local redTail-calls
9529 kStd + 1 new element
9630 noRedSyz
9731 weight
98verbose:31 stop at certain weights
99*/
100
101#endif
102
Note: See TracBrowser for help on using the repository browser.