My Project  UNKNOWN_GIT_VERSION
coeffrings.h
Go to the documentation of this file.
1 #ifndef COEFFRINGS_H
2 #define COEFFRINGS_H
3 
4 #include "misc/auxiliary.h"
5 #include "coeffs/coeffs.h"
6 #include "polys/monomials/ring.h"
7 
8 static FORCE_INLINE number n_Copy(number n, const ring r){ return n_Copy(n, r->cf); }
9 static FORCE_INLINE void n_Delete(number* p, const ring r){ n_Delete(p, r->cf); }
10 static FORCE_INLINE BOOLEAN n_Equal(number a, number b, const ring r){ return n_Equal(a, b, r->cf); }
11 static FORCE_INLINE nMapFunc n_SetMap(const ring src, const ring dst){ return n_SetMap(src->cf,dst->cf); }
12 static FORCE_INLINE int n_GetChar(const ring r){ return n_GetChar(r->cf); }
13 
14 // static FORCE_INLINE BOOLEAN n_Test(number n, const char *filename, const int linenumber, const ring r){ return n_Test( n, r->cf); }
15 // static FORCE_INLINE BOOLEAN n_Test(number a, const ring r){ return n_Test(a, r); }
16 // #define n_Test(a,r)
17 
18 
19 
20 static FORCE_INLINE BOOLEAN n_IsZero(number n, const ring r){ return n_IsZero(n,r->cf); }
21 static FORCE_INLINE BOOLEAN n_IsOne(number n, const ring r){ return n_IsOne(n,r->cf); }
22 static FORCE_INLINE BOOLEAN n_IsMOne(number n, const ring r){ return n_IsMOne(n,r->cf); }
23 static FORCE_INLINE BOOLEAN n_GreaterZero(number n, const ring r){ return n_GreaterZero(n,r->cf); }
24 static FORCE_INLINE number n_Init(int i, const ring r){ return n_Init(i,r->cf); }
25 static FORCE_INLINE number n_InpNeg(number n, const ring r){ return n_InpNeg(n,r->cf); }
26 static FORCE_INLINE number n_Invers(number a, const ring r){ return n_Invers(a,r->cf); }
27 static FORCE_INLINE int n_Size(number n, const ring r){ return n_Size(n,r->cf); }
28 static FORCE_INLINE void n_Normalize(number& n, const ring r){ return n_Normalize(n,r->cf); }
29 static FORCE_INLINE void n_Write(number& n, const ring r){ return n_Write(n, r->cf, rShortOut(r)); }
30 static FORCE_INLINE number n_GetDenom(number& n, const ring r){ return n_GetDenom(n, r->cf);}
31 static FORCE_INLINE number n_GetNumerator(number& n, const ring r){ return n_GetNumerator(n, r->cf);}
32 static FORCE_INLINE void n_Power(number a, int b, number *res, const ring r){ n_Power(a,b,res,r->cf); }
33 static FORCE_INLINE number n_Mult(number a, number b, const ring r){ return n_Mult(a, b, r->cf);}
34 static FORCE_INLINE void n_InpMult(number &a, number b, const ring r){ n_InpMult(a,b,r->cf); }
35 static FORCE_INLINE number n_Sub(number a, number b, const ring r){ return n_Sub(a, b, r->cf);}
36 static FORCE_INLINE number n_Add(number a, number b, const ring r){ return n_Add(a, b, r->cf);}
37 static FORCE_INLINE number n_Div(number a, number b, const ring r){ return n_Div(a,b, r->cf);}
38 static FORCE_INLINE number n_ExactDiv(number a, number b, const ring r){ return n_ExactDiv(a,b, r->cf);}
39 static FORCE_INLINE number n_Gcd(number a, number b, const ring r){ return n_Gcd(a,b, r->cf);}
40 
41 #ifdef HAVE_RINGS
42 static FORCE_INLINE BOOLEAN n_IsUnit(number n, const ring r){ return n_IsUnit(n, r->cf);}
43 static FORCE_INLINE number n_GetUnit(number n, const ring r){ return n_GetUnit(n, r->cf);}
44 static FORCE_INLINE BOOLEAN n_DivBy(number a, number b, const ring r){ return n_DivBy(a,b, r->cf);}
45 #endif
46 
47 static FORCE_INLINE int n_ParDeg(number n, const ring r){ assume(r != NULL); assume(r->cf != NULL); return n_ParDeg(n,r->cf); }
48 
49 #endif /* COEFFRINGS_H */
n_Gcd
static FORCE_INLINE number n_Gcd(number a, number b, const ring r)
Definition: coeffrings.h:39
n_GetNumerator
static FORCE_INLINE number n_GetNumerator(number &n, const ring r)
Definition: coeffrings.h:31
n_GetDenom
static FORCE_INLINE number n_GetDenom(number &n, const ring r)
Definition: coeffrings.h:30
n_ParDeg
static FORCE_INLINE int n_ParDeg(number n, const ring r)
Definition: coeffrings.h:47
n_SetMap
static FORCE_INLINE nMapFunc n_SetMap(const ring src, const ring dst)
Definition: coeffrings.h:11
n_GreaterZero
static FORCE_INLINE BOOLEAN n_GreaterZero(number n, const ring r)
Definition: coeffrings.h:23
n_Div
static FORCE_INLINE number n_Div(number a, number b, const ring r)
Definition: coeffrings.h:37
n_IsZero
static FORCE_INLINE BOOLEAN n_IsZero(number n, const ring r)
Definition: coeffrings.h:20
n_GetChar
static FORCE_INLINE int n_GetChar(const ring r)
Definition: coeffrings.h:12
n_Normalize
static FORCE_INLINE void n_Normalize(number &n, const ring r)
Definition: coeffrings.h:28
n_Invers
static FORCE_INLINE number n_Invers(number a, const ring r)
Definition: coeffrings.h:26
auxiliary.h
n_InpMult
static FORCE_INLINE void n_InpMult(number &a, number b, const ring r)
Definition: coeffrings.h:34
b
CanonicalForm b
Definition: cfModGcd.cc:4044
i
int i
Definition: cfEzgcd.cc:125
res
CanonicalForm res
Definition: facAbsFact.cc:64
nMapFunc
number(* nMapFunc)(number a, const coeffs src, const coeffs dst)
maps "a", which lives in src, into dst
Definition: coeffs.h:72
n_Init
static FORCE_INLINE number n_Init(int i, const ring r)
Definition: coeffrings.h:24
BOOLEAN
int BOOLEAN
Definition: auxiliary.h:85
n_InpNeg
static FORCE_INLINE number n_InpNeg(number n, const ring r)
Definition: coeffrings.h:25
n_IsMOne
static FORCE_INLINE BOOLEAN n_IsMOne(number n, const ring r)
Definition: coeffrings.h:22
n_Write
static FORCE_INLINE void n_Write(number &n, const ring r)
Definition: coeffrings.h:29
n_ExactDiv
static FORCE_INLINE number n_ExactDiv(number a, number b, const ring r)
Definition: coeffrings.h:38
n_Mult
static FORCE_INLINE number n_Mult(number a, number b, const ring r)
Definition: coeffrings.h:33
n_GetUnit
static FORCE_INLINE number n_GetUnit(number n, const ring r)
Definition: coeffrings.h:43
n_Delete
static FORCE_INLINE void n_Delete(number *p, const ring r)
Definition: coeffrings.h:9
n_Copy
static FORCE_INLINE number n_Copy(number n, const ring r)
Definition: coeffrings.h:8
n_IsUnit
static FORCE_INLINE BOOLEAN n_IsUnit(number n, const ring r)
Definition: coeffrings.h:42
n_Size
static FORCE_INLINE int n_Size(number n, const ring r)
Definition: coeffrings.h:27
ring.h
n_Add
static FORCE_INLINE number n_Add(number a, number b, const ring r)
Definition: coeffrings.h:36
n_Power
static FORCE_INLINE void n_Power(number a, int b, number *res, const ring r)
Definition: coeffrings.h:32
n_Equal
static FORCE_INLINE BOOLEAN n_Equal(number a, number b, const ring r)
Definition: coeffrings.h:10
assume
#define assume(x)
Definition: mod2.h:384
n_IsOne
static FORCE_INLINE BOOLEAN n_IsOne(number n, const ring r)
Definition: coeffrings.h:21
NULL
#define NULL
Definition: omList.c:9
p
int p
Definition: cfModGcd.cc:4019
n_DivBy
static FORCE_INLINE BOOLEAN n_DivBy(number a, number b, const ring r)
Definition: coeffrings.h:44
n_Sub
static FORCE_INLINE number n_Sub(number a, number b, const ring r)
Definition: coeffrings.h:35
rShortOut
static BOOLEAN rShortOut(const ring r)
Definition: ring.h:570
FORCE_INLINE
#define FORCE_INLINE
Definition: auxiliary.h:342
coeffs.h