My Project
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
8poly shift_pp_Mult_mm(poly p, const poly m, const ring r);
9poly shift_p_Mult_mm(poly p, const poly m, const ring r);
10poly shift_pp_mm_Mult(poly p, const poly m, const ring r);
11poly shift_p_mm_Mult(poly p, const poly m, const ring r);
12poly shift_p_Minus_mm_Mult_qq(poly p, poly m, poly q, int& Shorter, const poly spNoether, const ring r);
13poly shift_pp_Mult_mm_Noether_STUB(poly p, const poly m, const poly spNoether, int &ll, const ring ri);
14poly shift_pp_Mult_Coeff_mm_DivSelectMult_STUB(poly p,const poly m, const poly a, const poly b, int &shorter,const ring r);
15poly shift_pp_Mult_Coeff_mm_DivSelect_STUB(poly p, const poly m, int &shorter, const ring r);
16
17void p_mLPunshift(poly m, const ring ri);
18void p_LPunshift(poly p, const ring ri);
19void p_mLPshift(poly p, int sh, const ring r);
20void 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
26int p_LastVblock(poly p, const ring r);
27int p_mLastVblock(poly p, const ring r);
28int p_mLastVblock(poly p, int *expV, const ring r);
29int p_FirstVblock(poly p, const ring r);
30int p_mFirstVblock(poly p, const ring r);
31int 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
37void p_LPExpVappend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri);
38void p_LPExpVprepend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri);
39
40void WriteLPExpV(int *expV, ring ri);
41char* LPExpVString(int *expV, ring ri);
42
43void k_SplitFrame(poly &m1, poly &m2, int at, const ring r);
44#define kSplitFrame(m1, m2, at) k_SplitFrame(m1, m2, at, currRing)
45
46int id_IsInV(ideal I, const ring r);
47int p_IsInV(poly p, const ring r);
48int 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
53BOOLEAN p_LPDivisibleBy(poly a, poly b, const ring r);
54BOOLEAN p_LPLmDivisibleBy(poly a, poly b, const ring r);
55BOOLEAN _p_LPLmDivisibleByNoComp(poly a, poly b, const ring r);
56BOOLEAN p_LPDivisibleBy(ideal I, poly p, ring r);
57#define pLPDivisibleBy(a, b) p_LPLmDivisibleBy(a, b, currRing)
58#define pLPLmDivisibleBy(a, b) p_LPLmDivisibleBy(a, b, currRing)
59
60BOOLEAN _p_mLPNCGenValid(poly p, const ring r);
61BOOLEAN _p_mLPNCGenValid(int *mExpV, const ring r);
62
63poly p_LPVarAt(poly p, int pos, const ring r);
64
65#define pGetNCGen(p) p_GetNCGen(p, currRing)
66int p_GetNCGen(poly p, const ring r);
67
68#define pLPSubst(p, n, e) p_LPSubst(p, n, e, r)
69#define pmLPSubst(m, n, e) p_LPSubst(m, n, e, r)
70poly p_LPSubst(poly p, int n, poly e, const ring r);
71poly p_mLPSubst(poly m, int n, poly e, const ring r);
72
73/// create the letterplace ring corresponding to r up to degree d
74ring freeAlgebra(ring r, int d, int LPncGenCount = 0);
75#endif
76#endif
All the auxiliary stuff.
int BOOLEAN
Definition: auxiliary.h:87
int m
Definition: cfEzgcd.cc:128
int p
Definition: cfModGcd.cc:4080
CanonicalForm b
Definition: cfModGcd.cc:4105
BOOLEAN _p_LPLmDivisibleByNoComp(poly a, poly b, const ring r)
Definition: shiftop.cc:793
void p_LPExpVprepend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri)
Definition: shiftop.cc:535
poly shift_pp_Mult_mm(poly p, const poly m, const ring r)
Definition: shiftop.cc:21
BOOLEAN p_LPLmDivisibleBy(poly a, poly b, const ring r)
Definition: shiftop.cc:784
poly shift_p_Mult_mm(poly p, const poly m, const ring r)
Definition: shiftop.cc:89
int p_mLastVblock(poly p, const ring r)
Definition: shiftop.cc:418
poly shift_pp_Mult_Coeff_mm_DivSelect_STUB(poly p, const poly m, int &shorter, const ring r)
Definition: shiftop.cc:316
int id_IsInV(ideal I, const ring r)
Definition: shiftop.cc:675
void p_mLPunshift(poly m, const ring ri)
Definition: shiftop.cc:324
poly shift_pp_mm_Mult(poly p, const poly m, const ring r)
Definition: shiftop.cc:145
int p_IsInV(poly p, const ring r)
Definition: shiftop.cc:690
poly shift_pp_Mult_mm_Noether_STUB(poly p, const poly m, const poly spNoether, int &ll, const ring ri)
Definition: shiftop.cc:287
BOOLEAN _p_mLPNCGenValid(poly p, const ring r)
Definition: shiftop.cc:620
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:311
void p_LPshift(poly p, int sh, const ring r)
Definition: shiftop.cc:389
ring freeAlgebra(ring r, int d, int LPncGenCount=0)
create the letterplace ring corresponding to r up to degree d
Definition: shiftop.cc:932
void p_LPunshift(poly p, const ring ri)
Definition: shiftop.cc:350
poly p_mLPSubst(poly m, int n, poly e, const ring r)
Definition: shiftop.cc:853
BOOLEAN p_LPDivisibleBy(poly a, poly b, const ring r)
Definition: shiftop.cc:773
int p_GetNCGen(poly p, const ring r)
Definition: shiftop.cc:653
char * LPExpVString(int *expV, ring ri)
Definition: shiftop.cc:577
void WriteLPExpV(int *expV, ring ri)
Definition: shiftop.cc:570
int p_FirstVblock(poly p, const ring r)
Definition: shiftop.cc:453
poly shift_p_mm_Mult(poly p, const poly m, const ring r)
Definition: shiftop.cc:213
int p_LastVblock(poly p, const ring r)
Definition: shiftop.cc:403
void p_mLPshift(poly p, int sh, const ring r)
Definition: shiftop.cc:359
poly shift_p_Minus_mm_Mult_qq(poly p, poly m, poly q, int &Shorter, const poly spNoether, const ring r)
Definition: shiftop.cc:270
poly p_LPVarAt(poly p, int pos, const ring r)
Definition: shiftop.cc:835
void p_LPExpVappend(int *m1ExpV, int *m2ExpV, int m1Length, int m2Length, const ring ri)
Definition: shiftop.cc:508
int p_mIsInV(poly p, const ring r)
Definition: shiftop.cc:708
void k_SplitFrame(poly &m1, poly &m2, int at, const ring r)
Definition: shiftop.cc:597
poly p_LPSubst(poly p, int n, poly e, const ring r)
Definition: shiftop.cc:902
int p_mFirstVblock(poly p, const ring r)
Definition: shiftop.cc:475