253 theMap->preimage=
NULL;
264 memset(v,0,
sizeof(
sleftv));
275 WarnS(
"ignoring denominators of coefficients...");
280 memset(&tmpW,0,
sizeof(
sleftv));
284 tmpW.
data = NUM (num);
315 memset(v,0,
sizeof(
sleftv));
318 memset(&tmpW,0,
sizeof(
sleftv));
324 if (num==
NULL) num=(number)R->qideal->m[0];
345 WerrorS(
"cannot apply subst for these coeffcients");
CanonicalForm map(const CanonicalForm &primElem, const Variable &alpha, const CanonicalForm &F, const Variable &beta)
map from to such that is mapped onto
static FORCE_INLINE number n_GetNumerator(number &n, const coeffs r)
return the numerator of n (if elements of r are by nature not fractional, result is n) ...
Class used for (list of) interpreter objects.
static FORCE_INLINE BOOLEAN n_IsOne(number n, const coeffs r)
TRUE iff 'n' represents the one element.
static int rPar(const ring r)
(r->cf->P)
poly p_NSet(number n, const ring r)
returns the poly representing the number n, destroys n
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
BOOLEAN maApplyFetch(int what, map theMap, leftv res, leftv w, ring preimage_r, int *perm, int *par_perm, int P, nMapFunc nMap)
void WerrorS(const char *s)
(fraction), see transext.h
int int kStrategy strat if(h==NULL) return NULL
static poly p_Copy(poly p, const ring r)
returns a copy of p
static FORCE_INLINE number n_Param(const int iParameter, const coeffs r)
return the (iParameter^th) parameter as a NEW number NOTE: parameter numbering: 1..n_NumberOfParameters(...)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static BOOLEAN p_IsConstant(const poly p, const ring r)
number(* nMapFunc)(number a, const coeffs src, const coeffs dst)
maps "a", which lives in src, into dst
static FORCE_INLINE number n_Invers(number a, const coeffs r)
return the multiplicative inverse of 'a'; raise an error if 'a' is not invertible ...
void idDelete(ideal *h, ring r=currRing)
delete an ideal
#define pHead(p)
returns newly allocated copy of Lm(p), coef is copied, next=NULL, p might be NULL ...
static FORCE_INLINE nMapFunc n_SetMap(const coeffs src, const coeffs dst)
set the mapping function pointers for translating numbers from src to dst
void p_Normalize(poly p, const ring r)
ideal idInit(int idsize, int rank)
const Variable & v
< [in] a sqrfree bivariate poly
static FORCE_INLINE number n_GetDenom(number &n, const coeffs r)
return the denominator of n (if elements of r are by nature not fractional, result is 1) ...
static FORCE_INLINE void n_Delete(number *p, const coeffs r)
delete 'p'
#define omFreeBin(addr, bin)
#define pSetCoeff(p, n)
deletes old coeff before setting the new one