mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 16:45:31 +00:00
parent
04e51ffcb5
commit
de2ad26826
2 changed files with 9 additions and 4 deletions
|
@ -244,6 +244,8 @@ bool bound_manager::is_disjunctive_bound(expr * f, expr_dependency * d) {
|
|||
}
|
||||
|
||||
void bound_manager::operator()(goal const & g) {
|
||||
if (g.proofs_enabled())
|
||||
return;
|
||||
unsigned sz = g.size();
|
||||
for (unsigned i = 0; i < sz; i++) {
|
||||
operator()(g.form(i), g.dep(i));
|
||||
|
|
|
@ -84,7 +84,7 @@ class normalize_bounds_tactic : public tactic {
|
|||
bool produce_proofs = in->proofs_enabled();
|
||||
tactic_report report("normalize-bounds", *in);
|
||||
|
||||
m_bm(*in);
|
||||
m_bm(*in);
|
||||
|
||||
if (!has_lowers()) {
|
||||
result.push_back(in.get());
|
||||
|
@ -119,11 +119,14 @@ class normalize_bounds_tactic : public tactic {
|
|||
|
||||
m_rw.set_substitution(&subst);
|
||||
expr_ref new_curr(m);
|
||||
proof_ref new_pr(m);
|
||||
unsigned size = in->size();
|
||||
for (unsigned idx = 0; !in->inconsistent() && idx < size; idx++) {
|
||||
|
||||
for (unsigned idx = 0; !in->inconsistent() && idx < in->size(); idx++) {
|
||||
expr * curr = in->form(idx);
|
||||
proof_ref new_pr(m);
|
||||
m_rw(curr, new_curr, new_pr);
|
||||
std::cout << new_curr << "\n";
|
||||
std::cout << new_pr << "\n";
|
||||
std::cout << expr_ref(in->pr(idx), m) << "\n";
|
||||
if (produce_proofs) {
|
||||
proof * pr = in->pr(idx);
|
||||
new_pr = m.mk_modus_ponens(pr, new_pr);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue