Go to the source code of this file.
|
poly | maEval (map theMap, poly p, ring preimage_r, nMapFunc nMap, ideal s, const ring dst_r) |
|
map | maCopy (map theMap, const ring dst_ring) |
|
poly | maIMap (ring src_ring, ring dst_ring, poly p) |
|
void | maFindPerm (char const *const *const preim_names, int preim_n, char const *const *const preim_par, int preim_p, char const *const *const names, int n, char const *const *const par, int nop, int *perm, int *par_perm, n_coeffType ch) |
|
poly | pSubstPoly (poly p, int var, poly image) |
|
ideal | idSubstPoly (ideal id, int n, poly e) |
|
poly | p_MinPolyNormalize (poly p, const ring r) |
|
int | maMaxDeg_P (poly p, ring preimage_r) |
|
int | maMaxDeg_Ma (ideal a, ring preimage_r) |
|
poly | maEvalVariable (poly p, int v, int pExp, ideal s, const ring dst_r) |
|
◆ idSubstPoly()
ideal idSubstPoly |
( |
ideal |
id, |
|
|
int |
n, |
|
|
poly |
e |
|
) |
| |
Definition at line 406 of file maps_ip.cc.
414 res->
rank =
id->rank;
number ndCopyMap(number a, const coeffs aRing, const coeffs r)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static BOOLEAN rIsPluralRing(const ring r)
we must always have this test!
matrix mpNew(int r, int c)
create a r x c zero-matrix
ideal id_SubstPoly(ideal id, int var, poly image, const ring preimage_r, const ring image_r, const nMapFunc nMap)
#define pCopy(p)
return a copy of the poly
◆ maCopy()
Definition at line 38 of file maps.cc.
42 for (i=
IDELEMS(theMap)-1; i>=0; i--)
43 m->m[i] =
p_Copy(theMap->m[i],
r);
44 m->preimage=
omStrDup(theMap->preimage);
CanonicalForm map(const CanonicalForm &primElem, const Variable &alpha, const CanonicalForm &F, const Variable &beta)
map from to such that is mapped onto
static poly p_Copy(poly p, const ring r)
returns a copy of p
ideal idInit(int idsize, int rank)
initialise an ideal / module
◆ maEval()
Definition at line 121 of file maps.cc.
153 for(i = l-1; i>=0; i--)
155 result=
p_Add_q(result, monoms[i], dst_r);
const CanonicalForm int s
#define omFreeSize(addr, size)
static FORCE_INLINE BOOLEAN nCoeff_is_algExt(const coeffs r)
TRUE iff r represents an algebraic extension field.
static unsigned pLength(poly a)
poly p_MinPolyNormalize(poly p, const ring r)
static poly p_Add_q(poly p, poly q, const ring r)
static poly maEvalMonom(map theMap, poly p, ring preimage_r, ideal s, nMapFunc nMap, const ring dst_r)
◆ maEvalVariable()
poly maEvalVariable |
( |
poly |
p, |
|
|
int |
v, |
|
|
int |
pExp, |
|
|
ideal |
s, |
|
|
const ring |
dst_r |
|
) |
| |
Definition at line 52 of file maps.cc.
const CanonicalForm int s
static poly p_Copy(poly p, const ring r)
returns a copy of p
static poly pp_Mult_qq(poly p, poly q, const ring r)
void p_Normalize(poly p, const ring r)
const Variable & v
< [in] a sqrfree bivariate poly
poly p_Power(poly p, int i, const ring r)
#define MATELEM(mat, i, j)
◆ maFindPerm()
void maFindPerm |
( |
char const *const *const |
preim_names, |
|
|
int |
preim_n, |
|
|
char const *const *const |
preim_par, |
|
|
int |
preim_p, |
|
|
char const *const *const |
names, |
|
|
int |
n, |
|
|
char const *const *const |
par, |
|
|
int |
nop, |
|
|
int * |
perm, |
|
|
int * |
par_perm, |
|
|
n_coeffType |
ch |
|
) |
| |
Definition at line 169 of file maps.cc.
175 for (i=0; i<preim_n; i++)
179 if (strcmp(preim_names[i],names[j])==0)
182 Print(
"// var %s: nr %d -> nr %d\n",preim_names[i],i+1,j+1);
188 if ((perm[i+1]==0)&&(par!=
NULL)
194 if (strcmp(preim_names[i],par[j])==0)
197 Print(
"// var %s: nr %d -> par %d\n",preim_names[i],i+1,j+1);
206 for (i=0; i<preim_p; i++)
210 if (strcmp(preim_par[i],names[j])==0)
213 Print(
"// par %s: par %d -> nr %d\n",preim_par[i],i+1,j+1);
219 if ((par!=
NULL) && (par_perm[
i]==0))
223 if (strcmp(preim_par[i],par[j])==0)
226 Print(
"// par %s: nr %d -> par %d\n",preim_par[i],i+1,j+1);
◆ maIMap()
poly maIMap |
( |
ring |
src_ring, |
|
|
ring |
dst_ring, |
|
|
poly |
p |
|
) |
| |
◆ maMaxDeg_Ma()
int maMaxDeg_Ma |
( |
ideal |
a, |
|
|
ring |
preimage_r |
|
) |
| |
Definition at line 258 of file maps.cc.
261 int N = preimage_r->N;
277 goto max_deg_fertig_id;
#define omFreeSize(addr, size)
const CanonicalForm CFMap CFMap & N
static long p_GetExp(const poly p, const unsigned long iBitmask, const int VarOffset)
get a single variable exponent : the integer VarOffset encodes:
static int si_max(const int a, const int b)
◆ maMaxDeg_P()
int maMaxDeg_P |
( |
poly |
p, |
|
|
ring |
preimage_r |
|
) |
| |
Definition at line 296 of file maps.cc.
299 int N = preimage_r->N;
311 goto max_deg_fertig_p;
#define omFreeSize(addr, size)
const CanonicalForm CFMap CFMap & N
static long p_GetExp(const poly p, const unsigned long iBitmask, const int VarOffset)
get a single variable exponent : the integer VarOffset encodes:
static int si_max(const int a, const int b)
◆ p_MinPolyNormalize()
Definition at line 328 of file maps.cc.
331 number one =
n_Init(1, C);
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
static number p_SetCoeff(poly p, number n, ring r)
static FORCE_INLINE number n_Mult(number a, number b, const coeffs r)
return the product of 'a' and 'b', i.e., a*b
The main handler for Singular numbers which are suitable for Singular polynomials.
static FORCE_INLINE BOOLEAN n_IsZero(number n, const coeffs r)
TRUE iff 'n' represents the zero element.
static void p_LmDelete(poly p, const ring r)
static FORCE_INLINE void n_Delete(number *p, const coeffs r)
delete 'p'
◆ pSubstPoly()
Definition at line 390 of file maps_ip.cc.
number ndCopyMap(number a, const coeffs aRing, const coeffs r)
poly p_SubstPoly(poly p, int var, poly image, const ring preimage_r, const ring image_r, const nMapFunc nMap, matrix cache=NULL)
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static BOOLEAN rIsPluralRing(const ring r)
we must always have this test!
#define pCopy(p)
return a copy of the poly