3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-11-27 15:59:50 +00:00

strengthen filter for unknown by checking relevancy of parents #8022

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2025-11-15 17:14:00 -08:00
parent bf6ff56fd6
commit 81211254eb

View file

@ -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;
}