void goal::update(unsigned i, expr * f, proof * pr, expr_dependency * d) { SASSERT(proofs_enabled() == (pr != 0 && !m().is_undef_proof(pr))); if (m_inconsistent) return; if (proofs_enabled()) { expr_ref out_f(m()); proof_ref out_pr(m()); slow_process(true, f, pr, d, out_f, out_pr); if (!m_inconsistent) { if (m().is_false(out_f)) { push_back(out_f, out_pr, d); } else { m().set(m_forms, i, out_f); m().set(m_proofs, i, out_pr); if (unsat_core_enabled()) m().set(m_dependencies, i, d); } } } else { quick_process(true, f, d); if (!m_inconsistent) { if (m().is_false(f)) { push_back(f, 0, d); } else { m().set(m_forms, i, f); if (unsat_core_enabled()) m().set(m_dependencies, i, d); } } } }
void assertion_set::update(unsigned i, expr * f, proof * pr) { SASSERT(m().proofs_enabled() == (pr != 0 && !m().is_undef_proof(pr))); if (m_inconsistent) return; if (m().proofs_enabled()) { expr_ref out_f(m()); proof_ref out_pr(m()); slow_process(true, f, pr, out_f, out_pr); if (!m_inconsistent) { if (m().is_false(out_f)) { push_back(out_f, out_pr); } else { m().set(m_forms, i, out_f); m().set(m_proofs, i, out_pr); } } } else { quick_process(true, f); if (!m_inconsistent) { if (m().is_false(f)) push_back(f, 0); else m().set(m_forms, i, f); } } }
void assertion_stack::update(unsigned i, expr * f, proof * pr, expr_dependency * d) { SASSERT(i >= m_form_qhead); SASSERT(proofs_enabled() == (pr != 0 && !m().is_undef_proof(pr))); if (m_inconsistent) return; if (proofs_enabled()) { expr_ref out_f(m()); proof_ref out_pr(m()); slow_process(true, f, pr, d, out_f, out_pr); if (!m_inconsistent) { if (m().is_false(out_f)) { push_back(out_f, out_pr, d); } else { m().inc_ref(out_f); m().dec_ref(m_forms[i]); m_forms[i] = out_f; m().inc_ref(out_pr); m().dec_ref(m_proofs[i]); m_proofs[i] = out_pr; if (unsat_core_enabled()) { m().inc_ref(d); m().dec_ref(m_deps[i]); m_deps[i] = d; } } } } else { quick_process(true, f, d); if (!m_inconsistent) { if (m().is_false(f)) { push_back(f, 0, d); } else { m().inc_ref(f); m().dec_ref(m_forms[i]); m_forms[i] = f; if (unsat_core_enabled()) { m().inc_ref(d); m().dec_ref(m_deps[i]); m_deps[i] = d; } } } } }
void goal::slow_process(expr * f, proof * pr, expr_dependency * d) { expr_ref out_f(m()); proof_ref out_pr(m()); slow_process(false, f, pr, d, out_f, out_pr); }
void assertion_stack::slow_process(expr * f, proof * pr, expr_dependency * d) { expr_ref out_f(m()); proof_ref out_pr(m()); slow_process(false, f, pr, d, out_f, out_pr); }
void assertion_set::slow_process(expr * f, proof * pr) { expr_ref out_f(m()); proof_ref out_pr(m()); slow_process(false, f, pr, out_f, out_pr); }