3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-28 19:35:50 +00:00

fix a bug in Horner heuristic

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2020-04-23 15:58:53 -07:00
parent 8f297666fe
commit 8921ed56b5
16 changed files with 42 additions and 58 deletions

View file

@ -48,7 +48,7 @@ void monotone::monotonicity_lemma(monic const& m) {
void monotone::monotonicity_lemma_gt(const monic& m, const rational& prod_val) {
TRACE("nla_solver", tout << "prod_val = " << prod_val << "\n";
tout << "m = "; c().print_monic_with_vars(m, tout););
add_empty_lemma();
add_lemma();
for (lpvar j : m.vars()) {
c().add_abs_bound(j, llc::GT);
}
@ -64,7 +64,7 @@ void monotone::monotonicity_lemma_gt(const monic& m, const rational& prod_val) {
\/_i |m[i]| < |val(m[i])} or |m| >= |product_i val(m[i])|
*/
void monotone::monotonicity_lemma_lt(const monic& m, const rational& prod_val) {
add_empty_lemma();
add_lemma();
for (lpvar j : m.vars()) {
c().add_abs_bound(j, llc::LT);
}