mirror of
https://github.com/Z3Prover/z3
synced 2025-08-09 12:50:32 +00:00
re-organize proof and model converters to be associated with goals instead of external
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
00f5308a0e
commit
4bbece6616
118 changed files with 617 additions and 1070 deletions
|
@ -210,7 +210,7 @@ private:
|
|||
}
|
||||
generic_model_converter filter(m);
|
||||
for (func_decl* f : m_bv_fns) filter.hide(f);
|
||||
filter(mdl, 0);
|
||||
filter(mdl);
|
||||
}
|
||||
|
||||
void extend_model(model_ref& mdl) {
|
||||
|
@ -225,7 +225,7 @@ private:
|
|||
TRACE("int2bv", tout << mk_pp(kv.m_key, m) << " " << value << "\n";);
|
||||
ext.add(kv.m_key, value);
|
||||
}
|
||||
ext(mdl, 0);
|
||||
ext(mdl);
|
||||
}
|
||||
|
||||
void accumulate_sub(expr_safe_replace& sub) const {
|
||||
|
|
|
@ -167,14 +167,14 @@ public:
|
|||
for (auto const& kv : m_rewriter.enum2bv()) {
|
||||
filter.hide(kv.m_value);
|
||||
}
|
||||
filter(mdl, 0);
|
||||
filter(mdl);
|
||||
}
|
||||
|
||||
void extend_model(model_ref& mdl) {
|
||||
generic_model_converter ext(m);
|
||||
for (auto const& kv : m_rewriter.enum2def())
|
||||
ext.add(kv.m_key, kv.m_value);
|
||||
ext(mdl, 0);
|
||||
ext(mdl);
|
||||
}
|
||||
|
||||
virtual unsigned get_num_assertions() const {
|
||||
|
|
|
@ -541,7 +541,7 @@ public:
|
|||
init();
|
||||
}
|
||||
|
||||
void operator ()(const goal_ref & g,goal_ref_buffer & result,model_converter_ref & mc, expr_dependency_ref & dep) {
|
||||
void operator ()(const goal_ref & g,goal_ref_buffer & result, expr_dependency_ref & dep) {
|
||||
ast_manager& m = g->m();
|
||||
solver* s = mk_fd_solver(m, m_params);
|
||||
solver_state* st = alloc(solver_state, 0, s, m_params, cube_task);
|
||||
|
@ -560,8 +560,7 @@ public:
|
|||
switch (is_sat) {
|
||||
case l_true:
|
||||
if (g->models_enabled()) {
|
||||
mc = model2model_converter(mdl.get());
|
||||
mc = concat(fmc.get(), mc.get());
|
||||
g->add(concat(fmc.get(), model2model_converter(mdl.get())));
|
||||
}
|
||||
g->reset();
|
||||
break;
|
||||
|
|
|
@ -118,7 +118,7 @@ public:
|
|||
for (func_decl* f : fns) {
|
||||
filter.hide(f);
|
||||
}
|
||||
filter(mdl, 0);
|
||||
filter(mdl);
|
||||
}
|
||||
|
||||
virtual unsigned get_num_assertions() const {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue