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
InternalCF * copyObject()
virtual bool isZero() const
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)
int imm_iszero(const InternalCF *const ptr)
int imm_iszero_gf(const InternalCF *const ptr)
int imm_iszero_p(const InternalCF *const ptr)
InternalCF * imm_neg_p(const InternalCF *const op)
int imm_isone_gf(const InternalCF *const ptr)
InternalCF * imm_neg(const InternalCF *const op)
InternalCF * imm_neg_gf(const InternalCF *const op)
Factory's internal CanonicalForm's.