mirror of
https://github.com/Z3Prover/z3
synced 2025-04-13 12:28:44 +00:00
strengthen quantifier check for PDR (and other engines) that don't handle quantified predicates
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
ca31c979fe
commit
61ed4e5741
|
@ -567,6 +567,7 @@ namespace datalog {
|
|||
m_rule_properties.check_uninterpreted_free();
|
||||
break;
|
||||
case QPDR_ENGINE:
|
||||
std::cout << "QD\n";
|
||||
m_rule_properties.collect(r);
|
||||
m_rule_properties.check_for_negated_predicates();
|
||||
m_rule_properties.check_uninterpreted_free();
|
||||
|
|
|
@ -142,7 +142,7 @@ void rule_properties::check_existential_tail() {
|
|||
todo.push_back(e2);
|
||||
}
|
||||
else if (is_quantifier(e)) {
|
||||
todo.push_back(to_quantifier(e)->get_expr());
|
||||
tocheck.push_back(to_quantifier(e)->get_expr());
|
||||
}
|
||||
else if ((m.is_eq(e, e1, e2) || m.is_iff(e, e1, e2)) &&
|
||||
m.is_true(e1)) {
|
||||
|
|
Loading…
Reference in a new issue