Initialize the coeffs object.
2637{
2638
2640
2642
2646
2649
2652
2654
2656
2657
2659
2663
2664 cf->factoryVarOffset =
R->cf->factoryVarOffset +
rVar(
R);
2665
2667
2695
2696
2698#ifdef LDEBUG
2700#endif
2701
2710
2713 else
2715
2719
2720 cf->iNumberOfParameters =
rVar(
R);
2721 cf->pParameterNames = (
const char**)
R->names;
2723 cf->has_simple_Inverse=
FALSE;
2724
2725
2726
2729
2731
2733}
char * naCoeffName(const coeffs r)
@ n_transExt
used for all transcendental extensions, i.e., the top-most extension in an extension tower is transce...
static FORCE_INLINE BOOLEAN nCoeff_is_Q(const coeffs r)
static FORCE_INLINE n_coeffType getCoeffType(const coeffs r)
Returns the type of coeffs domain.
@ n_rep_rat_fct
(fraction), see transext.h
static ring rIncRefCnt(ring r)
static BOOLEAN rCanShortOut(const ring r)
static short rVar(const ring r)
#define rVar(r) (r->N)
static int ntSize(number a, const coeffs cf)
static BOOLEAN ntDBTest(number a, const char *f, const int l, const coeffs r)
static number ntParameter(const int iParameter, const coeffs cf)
return the specified parameter as a number in the given trans.ext.
static void ntWriteLong(number a, const coeffs cf)
static BOOLEAN ntCoeffIsEqual(const coeffs cf, n_coeffType n, void *param)
static const char * ntRead(const char *s, number *a, const coeffs cf)
nMapFunc ntSetMap(const coeffs src, const coeffs dst)
Get a mapping function from src into the domain of this type (n_transExt)
static number ntSub(number a, number b, const coeffs cf)
static long ntInt(number &a, const coeffs cf)
static void ntDelete(number *a, const coeffs cf)
static BOOLEAN ntIsOne(number a, const coeffs cf)
static BOOLEAN ntIsZero(number a, const coeffs cf)
static number ntGetNumerator(number &a, const coeffs cf)
TODO: normalization of a!?
static CanonicalForm ntConvSingNFactoryN(number n, BOOLEAN, const coeffs cf)
static void ntClearDenominators(ICoeffsEnumerator &numberCollectionEnumerator, number &c, const coeffs cf)
static BOOLEAN ntIsMOne(number a, const coeffs cf)
static void ntMPZ(mpz_t m, number &n, const coeffs r)
static void ntCoeffWrite(const coeffs cf, BOOLEAN details)
static number ntGcd(number a, number b, const coeffs cf)
static number ntConvFactoryNSingN(const CanonicalForm n, const coeffs cf)
static void ntClearContent(ICoeffsEnumerator &numberCollectionEnumerator, number &c, const coeffs cf)
static number ntInvers(number a, const coeffs cf)
static number ntNormalizeHelper(number a, number b, const coeffs cf)
static void ntPower(number a, int exp, number *b, const coeffs cf)
number ntInit(long i, const coeffs cf)
static number ntGetDenom(number &a, const coeffs cf)
TODO: normalization of a!?
static void ntInpMult(number &a, number b, const coeffs cf)
static void ntKillChar(coeffs cf)
static void ntInpAdd(number &a, number b, const coeffs cf)
static void ntWriteShort(number a, const coeffs cf)
static number ntDiv(number a, number b, const coeffs cf)
static int ntParDeg(number a, const coeffs cf)
static BOOLEAN ntGreaterZero(number a, const coeffs cf)
static number ntChineseRemainder(number *x, number *q, int rl, BOOLEAN, CFArray &inv_cache, const coeffs cf)
static number ntMult(number a, number b, const coeffs cf)
static number ntNeg(number a, const coeffs cf)
this is in-place, modifies a
static number ntAdd(number a, number b, const coeffs cf)
static number ntFarey(number p, number n, const coeffs cf)
static void ntNormalize(number &a, const coeffs cf)
static BOOLEAN ntEqual(number a, number b, const coeffs cf)
static BOOLEAN ntGreater(number a, number b, const coeffs cf)
static number ntExactDiv(number a, number b, const coeffs cf)
static number ntInitMPZ(mpz_t m, const coeffs r)
struct for passing initialization parameters to naInitChar