3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 01:25:31 +00:00

remove proof_converter from tactic application, removing nlsat_tactic

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-11-17 23:32:29 -08:00
parent b3bd9b89b5
commit df6b1a707e
93 changed files with 236 additions and 1216 deletions

View file

@ -179,10 +179,9 @@ class horn_tactic : public tactic {
void operator()(goal_ref const & g,
goal_ref_buffer & result,
model_converter_ref & mc,
proof_converter_ref & pc,
expr_dependency_ref & core) {
SASSERT(g->is_well_sorted());
mc = 0; pc = 0; core = 0;
mc = 0; core = 0;
tactic_report report("horn", *g);
bool produce_proofs = g->proofs_enabled();
@ -235,12 +234,14 @@ class horn_tactic : public tactic {
}
SASSERT(queries.size() == 1);
q = queries[0].get();
proof_converter_ref pc = g->pc();
if (m_is_simplify) {
simplify(q, g, result, mc, pc);
}
else {
verify(q, g, result, mc, pc);
}
g->set(pc.get());
}
void verify(expr* q,
@ -386,9 +387,8 @@ public:
virtual void operator()(goal_ref const & in,
goal_ref_buffer & result,
model_converter_ref & mc,
proof_converter_ref & pc,
expr_dependency_ref & core) {
(*m_imp)(in, result, mc, pc, core);
(*m_imp)(in, result, mc, core);
}
virtual void collect_statistics(statistics & st) const {

View file

@ -203,10 +203,9 @@ namespace pdr {
goal_ref g(alloc(goal, m, false, false, false));
for (unsigned j = 0; j < v.size(); ++j) g->assert_expr(v[j].get());
model_converter_ref mc;
proof_converter_ref pc;
expr_dependency_ref core(m);
goal_ref_buffer result;
tac(g, result, mc, pc, core);
tac(g, result, mc, core);
SASSERT(result.size() == 1);
goal* r = result[0];
v.reset();

View file

@ -521,11 +521,10 @@ namespace pdr {
}
expr_ref tmp(m);
model_converter_ref mc;
proof_converter_ref pc;
expr_dependency_ref core(m);
goal_ref_buffer result;
tactic_ref simplifier = mk_arith_bounds_tactic(m);
(*simplifier)(g, result, mc, pc, core);
(*simplifier)(g, result, mc, core);
lemmas.reset();
SASSERT(result.size() == 1);
goal* r = result[0];

View file

@ -1368,7 +1368,6 @@ void pred_transformer::frames::simplify_formulas ()
unsigned level = i < m_size ? i : infty_level ();
model_converter_ref mc;
proof_converter_ref pc;
expr_dependency_ref core(m);
goal_ref_buffer result;
@ -1395,7 +1394,7 @@ void pred_transformer::frames::simplify_formulas ()
}
// more than one lemma at current level. simplify.
(*simplifier)(g, result, mc, pc, core);
(*simplifier)(g, result, mc, core);
SASSERT(result.size () == 1);
goal *r = result[0];

View file

@ -47,10 +47,9 @@ void pred_transformer::legacy_frames::simplify_formulas(tactic& tac,
goal_ref g(alloc(goal, m, false, false, false));
for (unsigned j = 0; j < v.size(); ++j) { g->assert_expr(v[j].get()); }
model_converter_ref mc;
proof_converter_ref pc;
expr_dependency_ref core(m);
goal_ref_buffer result;
tac(g, result, mc, pc, core);
tac(g, result, mc, core);
SASSERT(result.size() == 1);
goal* r = result[0];
v.reset();

View file

@ -930,11 +930,10 @@ void simplify_bounds_old(expr_ref_vector& cube) {
expr_ref tmp(m);
model_converter_ref mc;
proof_converter_ref pc;
expr_dependency_ref core(m);
goal_ref_buffer result;
tactic_ref simplifier = mk_arith_bounds_tactic(m);
(*simplifier)(g, result, mc, pc, core);
(*simplifier)(g, result, mc, core);
SASSERT(result.size() == 1);
goal* r = result[0];
@ -956,14 +955,13 @@ void simplify_bounds_new (expr_ref_vector &cube) {
}
model_converter_ref mc;
proof_converter_ref pc;
expr_dependency_ref dep(m);
goal_ref_buffer goals;
tactic_ref prop_values = mk_propagate_values_tactic(m);
tactic_ref prop_bounds = mk_propagate_ineqs_tactic(m);
tactic_ref t = and_then(prop_values.get(), prop_bounds.get());
(*t)(g, goals, mc, pc, dep);
(*t)(g, goals, mc, dep);
SASSERT(goals.size() == 1);
g = goals[0];