74 #ifdef INCL_CANONICALFORM_H
75 #define INCL_CF_INLINE_CC
87 #ifndef INCL_CF_INLINE_CC
89 #define CF_USE_INLINE_SAVE
93 #ifdef CF_USE_INLINE_SAVE
95 #undef CF_USE_INLINE_SAVE
106 #if defined( CF_USE_INLINE ) && defined( INCL_CF_INLINE_CC )
109 #define CF_INLINE inline
174 : value(
is_imm(
cf.value ) ?
cf.value :
cf.value->copyObject() )
248 #ifndef INCL_CF_INLINE_CC
267 #ifndef INCL_CF_INLINE_CC
320 #ifndef INCL_CF_INLINE_CC
369 else if ( what ==
FFMARK )
387 else if ( what ==
FFMARK )
395 #ifndef INCL_CF_INLINE_CC
454 else if ( what ==
FFMARK )
510 #ifndef INCL_CF_INLINE_CC
531 #ifndef INCL_CF_INLINE_CC
555 #ifndef INCL_CF_INLINE_CC
Rational operator/(const Rational &a, const Rational &b)
Interface to generate InternalCF's over various domains from intrinsic types or mpz_t's.
CF_INLINE CanonicalForm FACTORY_PUBLIC operator+(const CanonicalForm &lhs, const CanonicalForm &rhs)
CF_INLINE CanonicalForm operator +, -, *, /, % ( const CanonicalForm & lhs, const CanonicalForm & rhs...
CF_INLINE CanonicalForm FACTORY_PUBLIC operator*(const CanonicalForm &lhs, const CanonicalForm &rhs)
static InternalCF * basic(int value)
virtual class for internal CanonicalForm's
virtual bool isZero() const
InternalCF * copyObject()
virtual bool isOne() const
bool InternalCF::isOne, isZero () const
factory's class for variables
const Variable & v
< [in] a sqrfree bivariate poly
fglmVector operator-(const fglmVector &v)
operations on immediates, that is elements of F_p, GF, Z, Q that fit into intrinsic int,...
int imm_isone_p(const InternalCF *const ptr)
int imm_isone(const InternalCF *const ptr)
InternalCF * imm_neg_p(const InternalCF *const op)
int imm_iszero(const InternalCF *const ptr)
int imm_iszero_gf(const InternalCF *const ptr)
InternalCF * imm_neg(const InternalCF *const op)
int imm_iszero_p(const InternalCF *const ptr)
int imm_isone_gf(const InternalCF *const ptr)
InternalCF * imm_neg_gf(const InternalCF *const op)
Factory's internal CanonicalForm's.