mirror of
https://github.com/Z3Prover/z3
synced 2025-04-05 17:14:07 +00:00
fix regression with mainintaing signs for monotonicity lemmas
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
cd833e892f
commit
d352c61e01
|
@ -1336,6 +1336,10 @@ br_status bv_rewriter::mk_bv_smod_core(expr * arg1, expr * arg2, bool hi_div0, e
|
|||
result = mk_numeral(0, bv_size);
|
||||
return BR_REWRITE2;
|
||||
}
|
||||
|
||||
if (r2.is_pos()) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (hi_div0) {
|
||||
|
|
|
@ -53,6 +53,8 @@ void monotone::monotonicity_lemma_gt(const monic& m) {
|
|||
for (lpvar j : m.vars()) {
|
||||
auto v = c().val(j);
|
||||
lemma |= ineq(j, v.is_neg() ? llc::LT : llc::GT, v);
|
||||
if (v.is_neg())
|
||||
lemma |= ineq(j, llc::GT, 0);
|
||||
product *= v;
|
||||
}
|
||||
lemma |= ineq(m.var(), product.is_neg() ? llc::GE : llc::LE, product);
|
||||
|
|
Loading…
Reference in a new issue