3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 17:15:31 +00:00

add eval field to sls-valuation to track temporary values.

This commit is contained in:
Nikolaj Bjorner 2024-02-26 14:54:15 -08:00
parent 8f139e862c
commit d774f07eb3
9 changed files with 339 additions and 336 deletions

View file

@ -36,7 +36,7 @@ namespace bv {
rw(r);
if (bv.is_bv(e)) {
auto const& val = ev.wval0(e);
auto const& val = ev.wval(e);
rational n1, n2;
n1 = val.get_value();
@ -164,15 +164,15 @@ namespace bv {
}
}
if (bv.is_bv(e1)) {
auto& val1 = ev.wval0(e1);
auto& val2 = ev.wval0(e2);
auto& val1 = ev.wval(e1);
auto& val2 = ev.wval(e2);
if (!val1.eq(val2)) {
val2.set(val1.bits());
auto rep2 = ev.try_repair(to_app(e2), idx);
if (!rep2) {
verbose_stream() << "Not repaired " << mk_pp(e2, m) << "\n";
}
auto val3 = ev.wval0(e2);
auto val3 = ev.wval(e2);
if (!val3.eq(val1)) {
verbose_stream() << "Repaired but not corrected " << mk_pp(e2, m) << "\n";
}