mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 09:05:31 +00:00
implement user scopes for sat solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
2b1af8fd50
commit
4f0de9a0cf
6 changed files with 220 additions and 19 deletions
|
@ -57,7 +57,7 @@ public:
|
|||
virtual lbool check_sat(unsigned num_assumptions, expr * const * assumptions) {
|
||||
SASSERT(num_assumptions == 0);
|
||||
|
||||
m_solver.pop(m_solver.scope_lvl());
|
||||
m_solver.pop_to_base_level();
|
||||
goal_ref_buffer result;
|
||||
proof_converter_ref pc;
|
||||
model_converter_ref mc;
|
||||
|
@ -128,13 +128,13 @@ public:
|
|||
m_preprocess->set_cancel(f);
|
||||
}
|
||||
virtual void push() {
|
||||
IF_VERBOSE(0, verbose_stream() << "push ignored\n";);
|
||||
m_solver.user_push();
|
||||
}
|
||||
virtual void pop(unsigned n) {
|
||||
IF_VERBOSE(0, verbose_stream() << "pop ignored\n";);
|
||||
m_solver.user_pop(n);
|
||||
}
|
||||
virtual unsigned get_scope_level() const {
|
||||
return 0;
|
||||
return m_solver.scope_lvl();
|
||||
}
|
||||
virtual void assert_expr(expr * t, expr * a) {
|
||||
if (a) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue