3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-23 19:47:52 +00:00

fixes and more porting seq_eq_solver to self-contained module

This commit is contained in:
Nikolaj Bjorner 2021-03-04 16:23:22 -08:00
parent 847724fb21
commit 38737db802
21 changed files with 354 additions and 230 deletions

View file

@ -626,12 +626,16 @@ namespace arith {
ctx.get_rewriter()(value);
}
else {
UNREACHABLE();
value = mdl.get_fresh_value(o->get_sort());
}
mdl.register_value(value);
values.set(n->get_root_id(), value);
}
void solver::add_dep(euf::enode* n, top_sort<euf::enode>& dep) {
bool solver::add_dep(euf::enode* n, top_sort<euf::enode>& dep) {
theory_var v = n->get_th_var(get_id());
if (v == euf::null_theory_var && !a.is_arith_expr(n->get_expr()))
return false;
expr* e = n->get_expr();
if (a.is_arith_expr(e) && to_app(e)->get_num_args() > 0) {
for (auto* arg : euf::enode_args(n))
@ -640,6 +644,7 @@ namespace arith {
else {
dep.insert(n, nullptr);
}
return true;
}
void solver::push_core() {