shiftop.h
Go to the documentation of this file.
1 #ifndef SHIFTOP_H
2 #define SHIFTOP_H
3 
4 #include "misc/auxiliary.h"
5 #ifdef HAVE_SHIFTBBA
6 #include "monomials/ring.h"
7 
8 poly shift_pp_Mult_mm(poly p, const poly m, const ring r);
9 poly shift_p_Mult_mm(poly p, const poly m, const ring r);
10 poly shift_pp_mm_Mult(poly p, const poly m, const ring r);
11 poly shift_p_mm_Mult(poly p, const poly m, const ring r);
12 poly shift_p_Minus_mm_Mult_qq(poly p, poly m, poly q, int& Shorter, const poly spNoether, const ring r);
13 poly shift_pp_Mult_mm_Noether_STUB(poly p, const poly m, const poly spNoether, int &ll, const ring ri);
14 poly shift_pp_Mult_Coeff_mm_DivSelectMult_STUB(poly p,const poly m, const poly a, const poly b, int &shorter,const ring r);
15 poly shift_pp_Mult_Coeff_mm_DivSelect_STUB(poly p, const poly m, int &shorter, const ring r);
16 
17 void p_mLPunshift(poly m, const ring ri);
18 void p_LPunshift(poly p, const ring ri);
19 void p_mLPshift(poly p, int sh, const ring r);
20 void p_LPshift(poly p, int sh, const ring r);
21 #define pLPunshift(p, sh) p_LPunshift(p, currRing)
22 #define pmLPunshift(p, sh) p_mLPunshift(p, currRing)
23 #define pLPshift(p, sh) p_LPshift(p, sh, currRing)
24 #define pmLPshift(p, sh) p_mLPshift(p, sh, currRing)
25 
26 int p_LastVblock(poly p, const ring r);
27 int p_mLastVblock(poly p, const ring r);
28 int p_mLastVblock(poly p, int *expV, const ring r);
29 int p_FirstVblock(poly p, const ring r);
30 int p_mFirstVblock(poly p, const ring r);
31 int p_mFirstVblock(poly p, int *expV, const ring r);
32 #define pLastVblock(p) p_LastVblock(p,currRing)
33 #define pmLastVblock(p) p_mLastVblock(p,currRing)
34 #define pFirstVblock(p) p_FirstVblock(p,currRing)
35 #define pmFirstVblock(p) p_mFirstVblock(p,currRing)
36 
37 void p_LPExpVappend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri);
38 void p_LPExpVprepend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri);
39 
40 void WriteLPExpV(int *expV, ring ri);
41 char* LPExpVString(int *expV, ring ri);
42 
43 void k_SplitFrame(poly &m1, poly &m2, int at, const ring r);
44 #define kSplitFrame(m1, m2, at) k_SplitFrame(m1, m2, at, currRing);
45 
46 int id_IsInV(ideal I, const ring r);
47 int p_IsInV(poly p, const ring r);
48 int p_mIsInV(poly p, const ring r);
49 #define idIsInV(I) id_IsInV(I, currRing)
50 #define pIsInV(p) p_IsInV(p, currRing)
51 #define pmIsInV(p) p_mIsInV(p, currRing)
52 
53 BOOLEAN p_LPDivisibleBy(poly a, poly b, const ring r);
54 BOOLEAN p_LPLmDivisibleBy(poly a, poly b, const ring r);
55 BOOLEAN _p_LPLmDivisibleByNoComp(poly a, poly b, const ring r);
56 
57 poly p_LPVarAt(poly p, int pos, const ring r);
58 
59 /// create the letterplace ring corresponding to r up to degree d
60 ring freeAlgebra(ring r, int d);
61 #endif
62 #endif
void p_LPshift(poly p, int sh, const ring r)
Definition: shiftop.cc:383
ring freeAlgebra(ring r, int d)
create the letterplace ring corresponding to r up to degree d
Definition: shiftop.cc:775
void p_mLPunshift(poly m, const ring ri)
Definition: shiftop.cc:322
int p_LastVblock(poly p, const ring r)
Definition: shiftop.cc:397
void k_SplitFrame(poly &m1, poly &m2, int at, const ring r)
Definition: shiftop.cc:585
int p_IsInV(poly p, const ring r)
Definition: shiftop.cc:618
poly shift_pp_Mult_mm_Noether_STUB(poly p, const poly m, const poly spNoether, int &ll, const ring ri)
Definition: shiftop.cc:285
poly shift_pp_mm_Mult(poly p, const poly m, const ring r)
Definition: shiftop.cc:144
poly shift_pp_Mult_Coeff_mm_DivSelect_STUB(poly p, const poly m, int &shorter, const ring r)
Definition: shiftop.cc:314
CanonicalForm b
Definition: cfModGcd.cc:4044
poly p_LPVarAt(poly p, int pos, const ring r)
Definition: shiftop.cc:743
BOOLEAN _p_LPLmDivisibleByNoComp(poly a, poly b, const ring r)
Definition: shiftop.cc:708
poly shift_pp_Mult_mm(poly p, const poly m, const ring r)
Definition: shiftop.cc:21
poly shift_p_Minus_mm_Mult_qq(poly p, poly m, poly q, int &Shorter, const poly spNoether, const ring r)
Definition: shiftop.cc:268
int id_IsInV(ideal I, const ring r)
Definition: shiftop.cc:603
BOOLEAN p_LPLmDivisibleBy(poly a, poly b, const ring r)
Definition: shiftop.cc:699
void WriteLPExpV(int *expV, ring ri)
Definition: shiftop.cc:558
poly shift_p_Mult_mm(poly p, const poly m, const ring r)
Definition: shiftop.cc:88
All the auxiliary stuff.
int m
Definition: cfEzgcd.cc:121
void p_mLPshift(poly p, int sh, const ring r)
Definition: shiftop.cc:357
int p_mIsInV(poly p, const ring r)
Definition: shiftop.cc:636
void p_LPExpVprepend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri)
Definition: shiftop.cc:526
void p_LPunshift(poly p, const ring ri)
Definition: shiftop.cc:348
void p_LPExpVappend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri)
Definition: shiftop.cc:502
int p_FirstVblock(poly p, const ring r)
Definition: shiftop.cc:447
BOOLEAN p_LPDivisibleBy(poly a, poly b, const ring r)
Definition: shiftop.cc:688
char * LPExpVString(int *expV, ring ri)
Definition: shiftop.cc:565
int p
Definition: cfModGcd.cc:4019
poly shift_pp_Mult_Coeff_mm_DivSelectMult_STUB(poly p, const poly m, const poly a, const poly b, int &shorter, const ring r)
Definition: shiftop.cc:309
int p_mFirstVblock(poly p, const ring r)
Definition: shiftop.cc:469
poly shift_p_mm_Mult(poly p, const poly m, const ring r)
Definition: shiftop.cc:211
int BOOLEAN
Definition: auxiliary.h:85
int p_mLastVblock(poly p, const ring r)
Definition: shiftop.cc:412