28 _consumerOwner(consumer),
29 _translator(translator) {
37 _translator(translator) {
56 for (
size_t var = 0; var < term.
getVarCount(); ++var)
TermTranslator handles translation between terms whose exponents are infinite precision integers and ...
const mpz_class & getExponent(size_t variable, Exponent exponent) const
This method translates from IDs to arbitrary precision integers.
size_t getVarCount() const
Term represents a product of variables which does not include a coefficient.
size_t getVarCount() const
virtual void consumeRing(const VarNames &names)
virtual void doneConsuming()
TotalDegreeCoefTermConsumer(auto_ptr< CoefBigTermConsumer > consumer, const TermTranslator &translator)
virtual void beginConsuming()
auto_ptr< CoefBigTermConsumer > _consumerOwner
virtual void consume(const mpz_class &coef, const Term &term)
CoefBigTermConsumer & _consumer
const TermTranslator & _translator
void feedTo(CoefBigTermConsumer &consumer, bool inCanonicalOrder=false) const
void add(bool plus, const mpz_class &exponent)
Add +t^exponent or -t^exponent to the polynomial depending on whether plus is true or false,...
Defines the variables of a polynomial ring and facilities IO involving them.