36 #define freeT(A,v) omFreeSize((ADDRESS)A,(v+1)*sizeof(int))
55 if (sh == 0)
return(
p);
74 poly
p_LPshift(poly
p,
int sh,
int uptodeg,
int lV,
const ring r)
82 if (sh == 0)
return(
p);
97 poly
p_mLPshift(poly
p,
int sh,
int uptodeg,
int lV,
const ring r)
101 if (sh == 0)
return(
p);
107 int *e=(
int *)
omAlloc0((r->N+1)*
sizeof(int));
108 int *
s=(
int *)
omAlloc0((r->N+1)*
sizeof(int));
114 for (
j=1;
j<= L*lV ;
j++)
120 s[
j + (sh*lV)] = e[
j];
181 int *e=(
int *)
omAlloc0((r->N+1)*
sizeof(int));
185 while ( (!e[
j]) && (
j>=1) )
j--;
188 b = (int)((
j+lV-1)/lV);
222 while ( (!e[
j]) && (j<=currRing->
N-1) )
j++;
226 PrintS(
"pmFirstVblock: unexpected zero exponent vector\n");
242 if (lV <= 0)
return(0);
256 for (
i=(
j-1)*lV + 1;
i<=
j*lV;
i++)
258 if (e[
i])
B[
j] =
B[
j]+1;
270 if (
j==0)
goto ret_true;
310 for(
i = 0;
i <=
s;
i++)
398 int *e = (
int *)
omAlloc0((r->N+1)*
sizeof(int));
399 int b = (int)((r->N +lV-1)/lV);
401 int *S = (
int *)
omAlloc0((r->N+1)*
sizeof(int));
403 int i,
j;
int cnt = 1;
408 for (
i=(
j-1)*lV + 1;
i<=
j*lV;
i++)
413 S[(cnt-1)*lV + (
i - (
j-1)*lV)] = e[
i];
static int si_max(const int a, const int b)
static int si_min(const int a, const int b)
const CanonicalForm CFMap CFMap & N
static FORCE_INLINE number n_Copy(number n, const coeffs r)
return a copy of 'n'
const CanonicalForm int s
static poly p_Add_q(poly p, poly q, const ring r)
BOOLEAN p_CheckIsFromRing(poly p, ring r)
static poly p_Head(poly p, const ring r)
static void p_SetExpV(poly p, int *ev, const ring r)
static unsigned long p_SetComp(poly p, unsigned long c, ring r)
static number p_SetCoeff(poly p, number n, ring r)
static BOOLEAN p_LmIsConstant(const poly p, const ring r)
BOOLEAN p_LmCheckIsFromRing(poly p, ring r)
static void p_GetExpV(poly p, int *ev, const ring r)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
Compatiblity layer for legacy polynomial operations (over currRing)
static long pTotaldegree(poly p)
#define pIsConstantPoly(p)
return TRUE if all monomials of p are constant
void PrintS(const char *s)
poly p_Shrink(poly p, int lV, const ring r)
int ideal_isInV(ideal I, int lV)
int isInV(poly p, int lV)
poly p_LPshiftT(poly p, int sh, int uptodeg, int lV, kStrategy strat, const ring r)
int poly_isInV(poly p, int lV)
poly p_LPshift(poly p, int sh, int uptodeg, int lV, const ring r)
int p_mLastVblock(poly p, int lV, const ring r)
int pFirstVblock(poly p, int lV)
poly p_ShrinkT(poly p, int lV, kStrategy strat, const ring r)
int itoInsert(poly p, int uptodeg, int lV, const ring r)
int pmFirstVblock(poly p, int lV)
int p_LastVblockT(poly p, int lV, kStrategy strat, const ring r)
int p_LastVblock(poly p, int lV, const ring r)
poly p_mShrink(poly p, int lV, const ring r)
poly p_mLPshift(poly p, int sh, int uptodeg, int lV, const ring r)