3
0
Fork 0
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:
Nikolaj Bjorner 2015-06-12 18:30:33 -07:00
parent ca31c979fe
commit 61ed4e5741
2 changed files with 2 additions and 1 deletions

View file

@ -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();

View file

@ -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)) {