3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-22 16:45:31 +00:00

fixes to bv

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2024-08-26 17:51:14 -07:00
parent eb555ee0a7
commit 9fcddc5774
2 changed files with 12 additions and 1 deletions

View file

@ -196,6 +196,11 @@ namespace bv {
bool sls_eval::bval1(app* e) const {
if (e->get_family_id() == bv.get_fid())
return bval1_bv(e);
expr* x, * y;
if (m.is_eq(e, x, y) && bv.is_bv(x)) {
return wval(x).bits() == wval(y).bits();
}
verbose_stream() << mk_bounded_pp(e, m) << "\n";
UNREACHABLE();
return false;
}

View file

@ -503,7 +503,7 @@ namespace bv {
if (h == l)
return;
// verbose_stream() << *this << " " << l << " " << h << " --> ";
//verbose_stream() << *this << " lo " << l << " hi " << h << " --> ";
if (m_lo == m_hi) {
set_value(m_lo, l);
@ -615,6 +615,12 @@ namespace bv {
if (m_lo == m_hi)
return;
if (!in_range(m_bits))
m_bits = m_lo;
if (is_zero(m_hi))
return;
inf_feasible(m_lo);
bvect& hi1 = m_tmp;