3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-05-09 16:55:47 +00:00

move model and proof converters to self-contained module

This commit is contained in:
Nikolaj Bjorner 2022-11-03 05:23:01 -07:00
parent 7b12a5c5a8
commit 1dca6402fb
88 changed files with 170 additions and 134 deletions

View file

@ -33,6 +33,7 @@ Author:
#include "util/statistics.h"
#include "util/params.h"
#include "ast/simplifiers/dependent_expr.h"
#include "ast/converters/model_converter.h"
/**
abstract interface to state updated by simplifiers.
@ -66,6 +67,7 @@ public:
virtual void collect_statistics(statistics& st) const {}
virtual void reset_statistics() {}
virtual void updt_params(params_ref const& p) {}
virtual model_converter_ref get_model_converter() { return model_converter_ref(); }
};
/**

View file

@ -23,6 +23,7 @@ Author:
#include "ast/recfun_decl_plugin.h"
#include "ast/rewriter/expr_replacer.h"
#include "ast/simplifiers/solve_eqs.h"
#include "ast/converters/generic_model_converter.h"
namespace euf {
@ -183,14 +184,16 @@ namespace euf {
m_unsafe_vars.mark(term);
}
#if 0
typedef generic_model_converter gmc;
model_converter_ref solve_eqs::get_model_converter() {
model_converter_ref mc = alloc(gmc, m, "solve-eqs");
for (unsigned id : m_subst_ids)
static_cast<gmc*>(mc.get())->add(id2var(id), m_subst->find(v));
for (unsigned id : m_subst_ids) {
auto* v = m_id2var[id];
static_cast<gmc*>(mc.get())->add(v, m_subst->find(v));
}
return mc;
}
#endif
solve_eqs::solve_eqs(ast_manager& m, dependent_expr_state& fmls) :
dependent_expr_simplifier(m, fmls), m_rewriter(m) {

View file

@ -18,9 +18,9 @@ Author:
#pragma once
#include "ast/rewriter/th_rewriter.h"
#include "ast/expr_substitution.h"
#include "util/scoped_ptr_vector.h"
#include "ast/expr_substitution.h"
#include "ast/rewriter/th_rewriter.h"
#include "ast/simplifiers/extract_eqs.h"
namespace euf {
@ -74,6 +74,6 @@ namespace euf {
void updt_params(params_ref const& p) override;
void collect_statistics(statistics& st) const override;
// model_converter_ref get_model_converter();
model_converter_ref get_model_converter() override;
};
}