mirror of
https://github.com/Z3Prover/z3
synced 2025-04-24 01:25:31 +00:00
remove dependency on ast from params
This commit is contained in:
parent
f00db08221
commit
4b3fecc35e
13 changed files with 49 additions and 48 deletions
|
@ -128,7 +128,6 @@ namespace array {
|
|||
r.set_delayed();
|
||||
return false;
|
||||
}
|
||||
r.set_applied();
|
||||
if (a.is_const(child))
|
||||
return assert_select_const_axiom(select, to_app(child));
|
||||
else if (a.is_as_array(child))
|
||||
|
@ -205,12 +204,6 @@ namespace array {
|
|||
if (s().value(sel_eq) == l_true)
|
||||
return false;
|
||||
|
||||
#if 0
|
||||
static unsigned count = 0;
|
||||
++count;
|
||||
std::cout << count << " " << sel_eq << "\n";
|
||||
#endif
|
||||
|
||||
bool new_prop = false;
|
||||
for (unsigned i = 1; i < num_args; i++) {
|
||||
expr* idx1 = store->get_arg(i);
|
||||
|
@ -238,6 +231,7 @@ namespace array {
|
|||
* select(const(v), i) = v
|
||||
*/
|
||||
bool solver::assert_select_const_axiom(app* select, app* cnst) {
|
||||
|
||||
++m_stats.m_num_select_const_axiom;
|
||||
expr* val = nullptr;
|
||||
VERIFY(a.is_const(cnst, val));
|
||||
|
|
|
@ -73,7 +73,7 @@ namespace euf {
|
|||
values2model(deps, mdl);
|
||||
for (auto* mb : m_solvers)
|
||||
mb->finalize_model(*mdl);
|
||||
// validate_model(*mdl);
|
||||
validate_model(*mdl);
|
||||
}
|
||||
|
||||
bool solver::include_func_interp(func_decl* f) {
|
||||
|
|
|
@ -308,7 +308,7 @@ namespace euf {
|
|||
euf::enode* nb = n->get_arg(1);
|
||||
m_egraph.merge(na, nb, c);
|
||||
}
|
||||
else if (n->merge_enabled() && n->num_parents() > 0) {
|
||||
else if (n->merge_enabled() && (n->num_parents() > 0 || n->num_args() > 0)) {
|
||||
euf::enode* nb = sign ? mk_false() : mk_true();
|
||||
m_egraph.merge(n, nb, c);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue