27 vector<mpz_class> v(3);
48 #define MIN_INDEX_TEST(from, to, maxDegree, strict, expectFind, expectedIndex) \ 50 Exponent foundIndex = 0; \ 51 bool returnValue = grader.getMinIndexLessThan \ 52 (0, from, to, foundIndex, maxDegree - strict); \ 54 ASSERT_TRUE(returnValue); \ 55 ASSERT_EQ(foundIndex, (Exponent)expectedIndex); \ 57 ASSERT_FALSE(returnValue); \ 145 #define MAX_INDEX_TEST(from, to, maxDegree, strict, expectFind, expectedIndex) \ 147 Exponent foundIndex = 0; \ 148 bool returnValue = grader.getMaxIndexLessThan \ 149 (0, from, to, foundIndex, maxDegree - strict); \ 151 ASSERT_TRUE(returnValue); \ 152 ASSERT_EQ(foundIndex, (Exponent)expectedIndex); \ 154 ASSERT_FALSE(returnValue); \
TEST(TermGrader, getUpperBound)
#define TEST_SUITE(SUITE)
A TermGrader assigns a value, the degree, to each monomial.
#define MAX_INDEX_TEST(from, to, maxDegree, strict, expectFind, expectedIndex)
TermTranslator handles translation between terms whose exponents are infinite precision integers and ...
#define MIN_INDEX_TEST(from, to, maxDegree, strict, expectFind, expectedIndex)
void getUpperBound(const Term &divisor, const Term &dominator, mpz_class &bound) const
Assigns to bound the degree of the largest term v such that divisor divides v and v divides dominator...
Term represents a product of variables which does not include a coefficient.