Skip to content

Commit

Permalink
fix crash when propagating equalities over arrays with lambdas
Browse files Browse the repository at this point in the history
  • Loading branch information
nunoplopes committed Jan 10, 2020
1 parent 9064e58 commit 0b14f1b
Showing 1 changed file with 3 additions and 5 deletions.
8 changes: 3 additions & 5 deletions src/smt/theory_array_base.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -371,10 +371,8 @@ namespace smt {
literal n1_eq_n2 = mk_eq(e1, e2, true);
ctx.mark_as_relevant(n1_eq_n2);
expr_ref_vector args1(m), args2(m);
expr_ref f1 = instantiate_lambda(e1);
expr_ref f2 = instantiate_lambda(e2);
args1.push_back(f1);
args2.push_back(f2);
args1.push_back(instantiate_lambda(e1));
args2.push_back(instantiate_lambda(e2));
svector<symbol> names;
sort_ref_vector sorts(m);
for (unsigned i = 0; i < dimension; i++) {
Expand Down Expand Up @@ -403,7 +401,7 @@ namespace smt {
quantifier * q = m.is_lambda_def(e->get_decl());
expr_ref f(e, m);
if (q) {
var_subst sub(m, false);
var_subst sub(m);
f = sub(q, e->get_num_args(), e->get_args());
}
return f;
Expand Down

0 comments on commit 0b14f1b

Please sign in to comment.