18 template<
typename Poly,
typename Callback>
19 void single(
const Poly& p, carl::Variable variable, Callback&& cb) {
20 SMTRAT_LOG_DEBUG(
"smtrat.cad.projection",
"Hong_single(" << p <<
") -> Collins_single");
28 template<
typename Poly,
typename Callback>
29 void paired(
const Poly& p,
const UPoly& q, carl::Variable variable, Callback&& cb) {
30 SMTRAT_LOG_DEBUG(
"smtrat.cad.projection",
"Hong_paired(" << p <<
", " << q <<
")");
32 for (
const auto& reducta_p : RED_p) {
void single(const Poly &p, carl::Variable variable, Callback &&cb)
Implements the part of Collins projection operator from that deals with a single polynomial p: .
void single(const Poly &p, carl::Variable variable, Callback &&cb)
Implements the part of Hongs projection operator from that deals with a single polynomial p which is...
void paired(const Poly &p, const UPoly &q, carl::Variable variable, Callback &&cb)
Implements the part of Hongs projection operator from that deals with two polynomials p and q: .
void returnPoly(const Poly &p, Callback &&cb)
std::vector< Poly > PSC(const Poly &p, const Poly &q)
Computes the Principal Subresultant Coefficients of two polynomials.
Poly normalize(const Poly &p)
Normalizes the given Poly by removing constant and duplicate factors.
carl::UnivariatePolynomial< Poly > UPoly
Class to create the formulas for axioms.
carl::MultivariatePolynomial< Rational > Poly
#define SMTRAT_LOG_DEBUG(channel, msg)
Construct the set of reducta of the given polynomial.