mirror of
https://github.com/Z3Prover/z3
synced 2025-05-11 09:44:43 +00:00
parent
98bd437e46
commit
559c3ca012
5 changed files with 43 additions and 21 deletions
|
@ -165,6 +165,9 @@ namespace smt {
|
|||
|
||||
void model_checker::assert_neg_q_m(quantifier * q, expr_ref_vector & sks) {
|
||||
expr_ref tmp(m);
|
||||
|
||||
TRACE("model_checker", tout << "curr_model:\n"; model_pp(tout, *m_curr_model););
|
||||
|
||||
if (!m_curr_model->eval(q->get_expr(), tmp, true)) {
|
||||
return;
|
||||
}
|
||||
|
@ -395,6 +398,7 @@ namespace smt {
|
|||
args[i] = e->get_arg(i);
|
||||
}
|
||||
tmp = sub(q->get_expr(), num_decls, args.c_ptr());
|
||||
TRACE("model_checker", tout << "curr_model:\n"; model_pp(tout, *m_curr_model););
|
||||
m_curr_model->eval(tmp, result, true);
|
||||
if (strict_rec_fun ? !m.is_true(result) : m.is_false(result)) {
|
||||
add_instance(q, args, 0, nullptr);
|
||||
|
@ -438,6 +442,9 @@ namespace smt {
|
|||
m_curr_model = md;
|
||||
m_value2expr.reset();
|
||||
|
||||
TRACE("model_checker", tout << "MODEL_CHECKER INVOKED\n";
|
||||
tout << "model:\n"; model_pp(tout, *m_curr_model););
|
||||
|
||||
md->compress();
|
||||
|
||||
TRACE("model_checker", tout << "MODEL_CHECKER INVOKED\n";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue