Skip to content

Commit

Permalink
#5778 ensure else value so that defaults align across equivalence class
Browse files Browse the repository at this point in the history
  • Loading branch information
NikolajBjorner committed Apr 6, 2022
1 parent ac2523a commit cebbc71
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions src/sat/smt/array_model.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,12 @@ namespace array {
if (!get_else(v) && fi->get_else())
set_else(v, fi->get_else());

if (!get_else(v)) {
expr* else_value = mdl.get_some_value(get_array_range(srt));
fi->set_else(else_value);
set_else(v, else_value);
}

for (euf::enode* p : *get_select_set(n)) {
expr* value = values.get(p->get_root_id(), nullptr);
if (!value || value == fi->get_else())
Expand Down

0 comments on commit cebbc71

Please sign in to comment.