Go to the documentation of this file.
28 _consumerOwner(consumer),
29 _translator(translator) {
37 _translator(translator) {
56 for (
size_t var = 0; var < term.
getVarCount(); ++var)
virtual void beginConsuming()
virtual void doneConsuming()
size_t getVarCount() const
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
auto_ptr< CoefBigTermConsumer > _consumerOwner
CoefBigTermConsumer & _consumer
Term represents a product of variables which does not include a coefficient.
virtual void consumeRing(const VarNames &names)
const TermTranslator & _translator
void feedTo(CoefBigTermConsumer &consumer, bool inCanonicalOrder=false) const
TotalDegreeCoefTermConsumer(auto_ptr< CoefBigTermConsumer > consumer, const TermTranslator &translator)
virtual void consume(const mpz_class &coef, const Term &term)
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.