3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-15 13:28:47 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-04-04 14:45:29 -07:00
parent 8d59355b88
commit 7838e99f47

View file

@ -978,6 +978,12 @@ class theory_lra::imp {
if (!st.offset().is_zero()) {
m_left_side.push_back(std::make_pair(st.offset(), get_one(a.is_int(term))));
}
if (m_left_side.empty()) {
vi = lp().add_var(v, a.is_int(term));
add_def_constraint(lp().add_var_bound(vi, lp::GE, rational(0)));
add_def_constraint(lp().add_var_bound(vi, lp::LE, rational(0)));
}
else {
vi = lp().add_term(m_left_side, v);
SASSERT(lp::tv::is_term(vi));
TRACE("arith_verbose",
@ -985,8 +991,6 @@ class theory_lra::imp {
<< " slack: " << vi << " scopes: " << m_scopes.size() << "\n";
lp().print_term(lp().get_term(vi), tout) << "\n";);
}
else {
SASSERT(lp::tv::is_term(vi) || a.is_to_real(term));
}
rational val;