source: git/libpolys/polys/shiftop.h @ b45eec

spielwiese
Last change on this file since b45eec was 2857df, checked in by Karim Abou Zeid <karim23697@…>, 4 years ago
Merge branch 'stable' into lp_Z
  • Property mode set to 100644
File size: 3.1 KB
Line 
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);
56#define pLPDivisibleBy(a, b) p_LPLmDivisibleBy(a, b, currRing)
57#define pLPLmDivisibleBy(a, b) p_LPLmDivisibleBy(a, b, currRing)
58
59BOOLEAN _p_mLPNCGenValid(poly p, const ring r);
60BOOLEAN _p_mLPNCGenValid(int *mExpV, const ring r);
61
62poly p_LPVarAt(poly p, int pos, const ring r);
63
64#define pGetNCGen(p) p_GetNCGen(p, currRing)
65int p_GetNCGen(poly p, const ring r);
66
67#define pLPSubst(p, n, e) p_LPSubst(p, n, e, r)
68#define pmLPSubst(m, n, e) p_LPSubst(m, n, e, r)
69poly p_LPSubst(poly p, int n, poly e, const ring r);
70poly p_mLPSubst(poly m, int n, poly e, const ring r);
71
72/// create the letterplace ring corresponding to r up to degree d
73ring freeAlgebra(ring r, int d, int LPncGenCount = 0);
74#endif
75#endif
Note: See TracBrowser for help on using the repository browser.