 |
My Project
debian-1:4.1.2-p1+ds-2
|
Go to the source code of this file.
|
int | redGrFirst (LObject *h, kStrategy strat) |
|
void | ratGB_divide_out (poly p) |
|
int | redGrRatGB (LObject *h, kStrategy strat) |
|
void | nc_gr_initBba (ideal F, kStrategy strat) |
| nc_gr_initBba is needed for sca_gr_bba and gr_bba. More...
|
|
ideal | k_gnc_gr_bba (const ideal F, const ideal Q, const intvec *, const intvec *, kStrategy strat, const ring _currRing) |
|
ideal | k_gnc_gr_mora (const ideal F, const ideal Q, const intvec *, const intvec *, kStrategy strat, const ring _currRing) |
|
◆ MYTEST
◆ PLURAL_INTERNAL_DECLARATIONS
#define PLURAL_INTERNAL_DECLARATIONS |
◆ k_gnc_gr_bba()
Definition at line 1030 of file gr_kstd2.cc.
1035 PrintS(
"<gnc_gr_bba>\n");
1076 while (strat->
Ll >= 0)
1095 strat->
P = strat->
L[strat->
Ll];
1099 if (strat->
P.p !=
NULL)
1117 #ifdef HAVE_RATGRING
1141 if (strat->
P.p !=
NULL)
1145 &olddeg,&reduc,strat, red_result);
1157 strat->red(&strat->P,strat);
1166 if (strat->P.p !=
NULL)
1175 #ifdef HAVE_RATGRING
1181 PrintS(
"unit element detected:");
1185 strat->P.p =
pOne();
1190 int pos=
posInS(strat,strat->sl,strat->P.p, strat->P.ecart);
1194 if ((strat->syzComp==0)||(!strat->homog))
1196 #ifdef HAVE_RATGRING
1199 strat->P.p =
redtailBba(strat->P.p,pos-1,strat);
1207 if ((strat->syzComp==0)||(!strat->homog))
1209 strat->P.p =
redtailBba(strat->P.p,pos-1,strat);
1223 enterpairs(strat->P.p,strat->sl,strat->P.ecart,pos,strat);
1225 if (strat->sl==-1) pos=0;
1226 else pos=
posInS(strat,strat->sl,strat->P.p,strat->P.ecart);
1228 strat->enterS(strat->P,pos,strat,-1);
1249 clearS(strat->S[
j],strat->sevS[
j],&
k,&
j,strat);
1281 PrintS(
"</gnc_gr_bba>\n");
1286 return (strat->Shdl);
◆ k_gnc_gr_mora()
Definition at line 1289 of file gr_kstd2.cc.
1293 WarnS(
"Sorry, non-commutative mora is not yet implemented!");
◆ nc_gr_initBba()
void nc_gr_initBba |
( |
ideal |
F, |
|
|
kStrategy |
strat |
|
) |
| |
nc_gr_initBba is needed for sca_gr_bba and gr_bba.
Definition at line 950 of file gr_kstd2.cc.
985 for(jj=
currRing->real_var_start;jj<=currRing->real_var_end;jj++)
987 if(
pGetExp(F->m[ii],jj)>0) { is_rat_id=
TRUE;
break; }
989 if (is_rat_id)
break;
◆ ratGB_divide_out()
void ratGB_divide_out |
( |
poly |
p | ) |
|
◆ redGrFirst()
Definition at line 51 of file gr_kstd2.cc.
112 (*h).ecart = d-(*h).FDeg;
131 && ((d >= reddeg) || (pass > strat->
LazyPass))
134 at = strat->
posInL(strat->
L,strat->
Ll,
h,strat);
◆ redGrRatGB()
Definition at line 223 of file gr_kstd2.cc.
256 Print(
" with S[%d]= ",c_j);
292 (*h).ecart = d-(*h).FDeg;
296 c_j=-1; c_e=-2; c_p=
NULL;
313 if ((c_j<0)||(c_e>=0))
330 if ((c_j<0)||(c_e>a_e))
KINLINE void clearS(poly p, unsigned long p_sev, int *at, int *k, kStrategy strat)
static int si_min(const int a, const int b)
#define pDivisibleBy(a, b)
returns TRUE, if leading monom of a divides leading monom of b i.e., if there exists a expvector c > ...
#define pIsConstant(p)
like above, except that Comp must be 0
void initBuchMoraCrit(kStrategy strat)
void pNorm(poly p, const ring R=currRing)
void(* enterS)(LObject &h, int pos, kStrategy strat, int atR)
static void pLmFree(poly p)
frees the space of the monomial m, assumes m != NULL coef is not freed, m is not advanced
void rDebugPrint(const ring r)
int posInL0(const LSet set, const int length, LObject *p, const kStrategy)
void rChangeCurrRing(ring r)
#define TEST_OPT_DEGBOUND
poly nc_rat_ReduceSpolyNew(const poly p1, poly p2, int ishift, const ring r)
#define pGetExp(p, i)
Exponent.
void updateResult(ideal r, ideal Q, kStrategy strat)
int posInT110(const TSet set, const int length, LObject &p)
void p_wrp(poly p, ring lmRing, ring tailRing)
int posInS(const kStrategy strat, const int length, const poly p, const int ecart_p)
static BOOLEAN p_LmDivisibleBy(poly a, poly b, const ring r)
static BOOLEAN rIsPluralRing(const ring r)
we must always have this test!
void initEcartPairBba(LObject *Lp, poly, poly, int, int)
static short rVar(const ring r)
#define rVar(r) (r->N)
void nc_gr_initBba(ideal F, kStrategy strat)
nc_gr_initBba is needed for sca_gr_bba and gr_bba.
#define TEST_OPT_INTSTRATEGY
BOOLEAN p_LmIsConstantRat(const poly p, const ring r)
int redGrFirst(LObject *h, kStrategy strat)
void enterSBba(LObject &p, int atS, kStrategy strat, int atR)
void initEcartNormal(TObject *h)
void PrintS(const char *s)
int redGrRatGB(LObject *h, kStrategy strat)
void message(int i, int *reduc, int *olddeg, kStrategy strat, int red_result)
void completeReduce(kStrategy strat, BOOLEAN withT)
int(* posInL)(const LSet set, const int length, LObject *L, const kStrategy strat)
void exitBuchMora(kStrategy strat)
static BOOLEAN rIsRatGRing(const ring r)
void initBuchMora(ideal F, ideal Q, kStrategy strat)
poly p_Cleardenom(poly p, const ring r)
void initBuchMoraPos(kStrategy strat)
void messageStat(int hilbcount, kStrategy strat)
static poly nc_ReduceSpoly(const poly p1, poly p2, const ring r)
poly nc_rat_CreateSpoly(poly pp1, poly pp2, int ishift, const ring r)
static void p_Delete(poly *p, const ring r)
KINLINE poly redtailBba(poly p, int pos, kStrategy strat, BOOLEAN normalize)
void rWrite(ring r, BOOLEAN details)
void(* initEcartPair)(LObject *h, poly f, poly g, int ecartF, int ecartG)
static long p_Totaldegree(poly p, const ring r)
void enterL(LSet *set, int *length, int *LSetmax, LObject p, int at)
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
void deleteInL(LSet set, int *length, int j, kStrategy strat)
void(* initEcart)(TObject *L)
int(* red)(LObject *L, kStrategy strat)
void initEcartBBA(TObject *h)
void enterpairs(poly h, int k, int ecart, int pos, kStrategy strat, int atR)
static poly nc_CreateSpoly(const poly p1, const poly p2, const ring r)
int(* posInT)(const TSet T, const int tl, LObject &h)
static void kDeleteLcm(LObject *P)
#define pHead(p)
returns newly allocated copy of Lm(p), coef is copied, next=NULL, p might be NULL
void initEcartPairMora(LObject *Lp, poly, poly, int ecartF, int ecartG)
void ratGB_divide_out(poly p)
static BOOLEAN p_LmDivisibleByPart(poly a, poly b, const ring r, const int start, const int end)
EXTERN_VAR BBA_Proc gnc_gr_bba