37 auto_ptr<BigIdeal> entireRing(
new BigIdeal(emptyNames));
38 entireRing->newLastTerm();
42 vector<Ideal*> ideals2;
49 auto_ptr<Ideal> intersection(
new Ideal(variableCount));
50 Term identity(variableCount);
51 intersection->insert(identity);
53 for (
size_t i = 0; i < ideals2.size(); ++i) {
54 ideals2[i]->minimize();
57 auto_ptr<Ideal> tmp(
new Ideal(variableCount));
58 ::intersect(tmp.get(), intersection.get(), ideals2[i]);
64 auto_ptr<BigIdeal> bigIdeal(
new BigIdeal(names));
65 bigIdeal->insert(*intersection, translator);
const VarNames & getNames() const
This is the super class of all facades.
Ideal(size_t varCount=0)
Initialize this object to the zero ideal in varCount variables.
Defines the variables of a polynomial ring and facilities IO involving them.
auto_ptr< BigIdeal > intersect(const vector< BigIdeal *> &ideals, const VarNames &names)
Returns the intersection of ideals.
void endAction()
Prints to standard error the time since the last call to beginAction.
void beginAction(const char *message)
Prints message to standard error if printing is turned on, and records the time when the action start...
TermTranslator handles translation between terms whose exponents are infinite precision integers and ...
IntersectFacade(bool printActions)
size_t getVarCount() const
Returns the current number of variables.
Term represents a product of variables which does not include a coefficient.