3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-15 13:28:47 +00:00
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-03-13 11:20:12 -07:00
parent 825fbf1832
commit d530d1314b
4 changed files with 11 additions and 3 deletions

View file

@ -52,6 +52,9 @@ class distribute_forall_tactic : public tactic {
new_args.push_back(elim_unused_vars(m, tmp_q, params_ref()));
}
result = m.mk_and(new_args.size(), new_args.c_ptr());
if (m.proofs_enabled()) {
result_pr = m.mk_push_quant(old_q, result);
}
return true;
}
@ -70,6 +73,9 @@ class distribute_forall_tactic : public tactic {
new_args.push_back(elim_unused_vars(m, tmp_q, params_ref()));
}
result = m.mk_and(new_args.size(), new_args.c_ptr());
if (m.proofs_enabled()) {
result_pr = m.mk_push_quant(old_q, result);
}
return true;
}

View file

@ -483,10 +483,11 @@ reduce_args_tactic::~reduce_args_tactic() {
void reduce_args_tactic::operator()(goal_ref const & g,
goal_ref_buffer & result) {
SASSERT(g->is_well_sorted());
fail_if_proof_generation("reduce-args", g);
fail_if_unsat_core_generation("reduce-args", g);
result.reset();
m_imp->operator()(*(g.get()));
if (!m_imp->m().proofs_enabled()) {
m_imp->operator()(*(g.get()));
}
g->inc_depth();
result.push_back(g.get());
SASSERT(g->is_well_sorted());

View file

@ -401,6 +401,7 @@ void goal::display_with_proofs(std::ostream& out) const {
out << "\n |-";
if (pr(i)) {
out << mk_ismt2_pp(pr(i), m(), 4);
SASSERT(m().get_fact(pr(i)) == form(i));
}
out << "\n " << mk_ismt2_pp(form(i), m(), 2);
}

View file

@ -657,8 +657,8 @@ void ufbv_rewriter::reschedule_demodulators(func_decl * f, expr * lhs) {
void ufbv_rewriter::operator()(unsigned n, expr * const * exprs, proof * const * prs, expr_ref_vector & new_exprs, proof_ref_vector & new_prs) {
if (m_manager.proofs_enabled()) {
TRACE("tactic", tout << "PRE_DEMODULATOR=true is not supported when proofs are enabled.";);
// Let us not waste time with proof production
warning_msg("PRE_DEMODULATOR=true is not supported when proofs are enabled.");
new_exprs.append(n, exprs);
new_prs.append(n, prs);
return;