26 _idealsDeleter(_ideals) {
52 size_t varCount = ideal.getVarCount();
53 for (
size_t var = 0; var < varCount; ++var)
54 ideal.getLastTermExponentRef(var) = translator.
getExponent(var, term);
62 size_t varCount = ideal.getVarCount();
63 for (
size_t var = 0; var < varCount; ++var)
64 ideal.getLastTermExponentRef(var) = term[var];
76 auto_ptr<BigIdeal> ideal(
_ideals.front());
size_t getVarCount() const
virtual void doneConsuming()
Must be called once after each time beginConsuming has been called.
virtual void beginConsuming()
Tell the consumer to begin consuming an ideal.
auto_ptr< BigIdeal > releaseIdeal()
void exceptionSafePushBack(Container &container, auto_ptr< Element > pointer)
Defines the variables of a polynomial ring and facilities IO involving them.
const mpz_class & getExponent(size_t variable, Exponent exponent) const
This method translates from IDs to arbitrary precision integers.
size_t getVarCount() const
virtual void consumeRing(const VarNames &names)
Tell the consumer which ring is being used.
TermTranslator handles translation between terms whose exponents are infinite precision integers and ...
const VarNames & getRing()
list< BigIdeal * > _ideals
Term represents a product of variables which does not include a coefficient.
virtual void consume(const Term &term, const TermTranslator &translator)