diff --git a/src/smt/theory_array_full.cpp b/src/smt/theory_array_full.cpp index 40220e830..f92f98169 100644 --- a/src/smt/theory_array_full.cpp +++ b/src/smt/theory_array_full.cpp @@ -826,14 +826,14 @@ namespace smt { bool theory_array_full::has_non_beta_as_array() { for (enode* n : m_as_array) { for (enode* p : n->get_parents()) - if (!ctx.is_beta_redex(p, n)) { + if (ctx.is_relevant(p) && !ctx.is_beta_redex(p, n)) { TRACE(array, tout << "not a beta redex " << enode_pp(p, ctx) << "\n"); return true; } } for (enode* n : m_lambdas) for (enode* p : n->get_parents()) - if (!is_default(p) && !ctx.is_beta_redex(p, n)) { + if (ctx.is_relevant(p) && !is_default(p) && !ctx.is_beta_redex(p, n)) { TRACE(array, tout << "lambda is not a beta redex " << enode_pp(p, ctx) << "\n"); return true; }