26 #ifndef OPENF4_CRITICAL_PAIR_H
27 #define OPENF4_CRITICAL_PAIR_H
43 template <
typename Element>
197 template <
typename Element>
198 std::ostream & operator<<(std::ostream & stream, CriticalPair<Element>
const & criticalPair);
205 template <
typename Element>
213 template <
typename Element>
221 template <
typename Element>
229 template <
typename Element>
230 bool operator<(CriticalPair<Element>
const & criticalPair1,
CriticalPair<Element> const & criticalPair2);
237 template <
typename Element>
238 bool operator<=(CriticalPair<Element>
const & criticalPair1,
CriticalPair<Element> const & criticalPair2);
242 #include "../src/critical-pair.inl"
245 #endif // OPENF4_CRITICAL_PAIR_H
bool setCriticalPair(int p1, int p2)
Modify an already created critical pair.
Represent a tagged polynomial.
~CriticalPair()
Destructor.
Monomial const & getLcm() const
Get _lcm.
int getDegree() const
Get the degree of this.
static int getSizeTaggedPolynomialArray()
Get the size of the array pointed by TAGGEG_POLYNOMIAL_ARRAY.
void printCriticalPair(std::ostream &stream=std::cout) const
Print the critical pair.
static void setTaggedPolynomialArray(vector< TaggedPolynomial< Element >> *taggedPolynomialArray)
Set the array of tagged polynomial to use.
Represent a critical pair.
Wrapper for config.h in order to avoid multiple definitions.
static std::vector< TaggedPolynomial< Element > > * TAGGEG_POLYNOMIAL_ARRAY
Represent a array of monomials.
Declaration of class TaggedPolynomial.
CriticalPair()
Constructor.
bool operator==(TaggedPolynomial< Element > const &taggedPolynomial1, TaggedPolynomial< Element > const &taggedPolynomial2)
Overload the operator ==.
static TaggedPolynomial< Element > const & getTaggedPolynomialArray(int numTaggedPolynomial)
Get a tagged polynomial from the array of tagged polynomial.
CriticalPair & operator=(CriticalPair const &criticalPair)
Overload the operator =.
Monomial const & getU1() const
Get the number of the monomial u1.
int compareCriticalPair(CriticalPair const &criticalPair) const
Compare this with criticalPair.
bool operator>=(TaggedPolynomial< Element > const &taggedPolynomial1, TaggedPolynomial< Element > const &taggedPolynomial2)
Overload the operator >=.
static void setMonomialArray(MonomialArray *monomialArray)
Set the monomial array to use.
int getP1() const
Get the index of the first tagged polynomial.
int getP2() const
Get the index of the second tagged polynomial.
static MonomialArray * MONOMIAL_ARRAY
bool operator>(Term< Element > const &term1, Term< Element > const &term2)
Overload the operator >.
Monomial const & getU2() const
Get the number of the monomial u2.