3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-01-09 20:38:58 +00:00

add an option to register callback on quantifier instantiation

Suppose a user propagator encodes axioms using quantifiers and uses E-matching for instantiation. If it wants to implement a custom priority scheme or drop some instances based on internal checks it can register a callback with quantifier instantiation
This commit is contained in:
Nikolaj Bjorner 2025-08-06 21:11:38 -07:00
parent d4a4dd6cc7
commit b33f444545
24 changed files with 126 additions and 3 deletions

View file

@ -339,6 +339,10 @@ namespace smt {
m_plugin->add_eq_eh(n1, n2);
}
void register_on_binding(std::function<bool(quantifier*, expr*)>& on_binding) {
m_qi_queue.register_on_binding(on_binding);
}
void relevant_eh(enode * n) {
m_plugin->relevant_eh(n);
}
@ -493,6 +497,10 @@ namespace smt {
m_imp->add_eq_eh(n1, n2);
}
void quantifier_manager::register_on_binding(std::function<bool(quantifier*, expr*)>& on_binding) {
m_imp->register_on_binding(on_binding);
}
void quantifier_manager::relevant_eh(enode * n) {
m_imp->relevant_eh(n);
}