summaryrefslogtreecommitdiff
path: root/src/theory/arith/nl/poly_conversion.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/theory/arith/nl/poly_conversion.h')
-rw-r--r--src/theory/arith/nl/poly_conversion.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/theory/arith/nl/poly_conversion.h b/src/theory/arith/nl/poly_conversion.h
index d83bc1b2e..a60b7ac41 100644
--- a/src/theory/arith/nl/poly_conversion.h
+++ b/src/theory/arith/nl/poly_conversion.h
@@ -61,10 +61,17 @@ poly::UPolynomial as_poly_upolynomial(const CVC4::Node& n,
* While a Node may contain rationals, a Polynomial does not.
* We therefore also store the denominator of the returned polynomial and
* use it to construct the integer polynomial recursively.
- * Once the polynomial has been fully constructed, we can ignore the
+ * Once the polynomial has been fully constructed, we can oftentimes ignore the
* denominator (except for its sign, which is always positive, though).
+ * This is the case if we are solely interested in the roots of the polynomials
+ * (like in the context of CAD). If we need the actual polynomial (for example
+ * in the context of ICP) the second overload provides the denominator in the
+ * third argument.
*/
poly::Polynomial as_poly_polynomial(const CVC4::Node& n, VariableMapper& vm);
+poly::Polynomial as_poly_polynomial(const CVC4::Node& n,
+ VariableMapper& vm,
+ poly::Rational& denominator);
/**
* Constructs a constraints (a polynomial and a sign condition) from the given
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback