17#define OSTREAM std::ostream
18#elif defined(HAVE_IOSTREAM_H)
20#define OSTREAM ostream
47 void*
operator new(size_t)
53 void operator delete(
void* addr, size_t)
96 const char *
classname()
const {
return "InternalPoly"; }
160 void*
operator new(size_t)
166 void operator delete(
void* addr, size_t)
class to iterate through CanonicalForm's
virtual class for internal CanonicalForm's
virtual void print(OSTREAM &, char *) PVIRT_VOID("print")
factory's class for polynomials
InternalCF * addsame(InternalCF *)
static termList divideTermList(termList, const CanonicalForm &, termList &)
static termList addTermList(termList, termList, termList &, bool negate)
InternalCF * mulcoeff(InternalCF *)
static termList reduceTermList(termList first, termList redterms, termList &last)
InternalCF * modsame(InternalCF *)
int degree()
int InternalPoly::degree ()
static void freeTermList(termList)
InternalCF * deepCopyObject() const
bool divremsamet(InternalCF *, InternalCF *&, InternalCF *&)
InternalCF * neg()
InternalCF * InternalPoly::neg ()
InternalCF * tryDivcoeff(InternalCF *, bool, const CanonicalForm &, bool &)
static const omBin InternalPoly_bin
static void mulTermList(termList, const CanonicalForm &, const int)
bool inQuotDomain() const
bool isUnivariate() const
void divremcoeff(InternalCF *, InternalCF *&, InternalCF *&, bool)
int comparesame(InternalCF *)
comparesame(), comparecoeff() - compare with an InternalPoly.
bool inBaseDomain() const
InternalCF * tryDividecoeff(InternalCF *, bool, const CanonicalForm &, bool &)
InternalCF * modulocoeff(InternalCF *, bool)
Variable variable() const
InternalCF * subsame(InternalCF *)
InternalCF * divcoeff(InternalCF *, bool)
InternalCF * modcoeff(InternalCF *, bool)
bool inCoeffDomain() const
InternalCF * modulosame(InternalCF *)
static void negateTermList(termList)
static termList tryDivTermList(termList, const CanonicalForm &, termList &, const CanonicalForm &, bool &)
static termList mulAddTermList(termList theList, termList aList, const CanonicalForm &c, const int exp, termList &lastTerm, bool negate)
bool tryDivremcoefft(InternalCF *, InternalCF *&, InternalCF *&, bool, const CanonicalForm &, bool &)
void divremsame(InternalCF *, InternalCF *&, InternalCF *&)
InternalCF * dividesame(InternalCF *)
bool divremcoefft(InternalCF *, InternalCF *&, InternalCF *&, bool)
CanonicalForm coeff(int i)
CanonicalForm InternalPoly::coeff ( int i )
InternalCF * dividecoeff(InternalCF *, bool)
int comparecoeff(InternalCF *)
comparecoeff() always returns 1 since CO is defined to be larger than anything which is a coefficient...
CanonicalForm tailcoeff()
CanonicalForm InternalPoly::tailcoeff (), int InternalPoly::taildegree ()
static termList deepCopyTermList(termList, termList &)
InternalCF * divsame(InternalCF *)
InternalCF * addcoeff(InternalCF *)
InternalCF * subcoeff(InternalCF *, bool)
const char * classname() const
bool tryDivremsamet(InternalCF *, InternalCF *&, InternalCF *&, const CanonicalForm &, bool &)
static termList modTermList(termList, const CanonicalForm &, termList &)
static termList copyTermList(termList, termList &, bool negate=false)
static void appendTermList(termList &, termList &, const CanonicalForm &, const int)
static termList divTermList(termList, const CanonicalForm &, termList &)
InternalCF * mulsame(InternalCF *)
InternalCF * tryInvert(const CanonicalForm &, bool &)
InternalCF * tryMulsame(InternalCF *, const CanonicalForm &)
int sign() const
int InternalPoly::sign () const
InternalCF * tryDivsame(InternalCF *, const CanonicalForm &, bool &)
bool inPolyDomain() const
factory's class for variables
term(term *n, const CanonicalForm &c, int e)
static const omBin term_bin
const Variable & v
< [in] a sqrfree bivariate poly
Factory's internal CanonicalForm's.
gmp_float exp(const gmp_float &a)
#define omTypeAllocBin(type, addr, bin)
#define omFreeBin(addr, bin)