3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 09:35:32 +00:00

Use override rather than virtual.

This commit is contained in:
Bruce Mitchener 2018-02-10 09:15:12 +07:00
parent ce123d9dbc
commit 7167fda1dc
220 changed files with 2546 additions and 2548 deletions

View file

@ -83,9 +83,9 @@ public:
init_preprocess();
}
virtual ~inc_sat_solver() {}
~inc_sat_solver() override {}
virtual solver* translate(ast_manager& dst_m, params_ref const& p) {
solver* translate(ast_manager& dst_m, params_ref const& p) override {
ast_translation tr(m, dst_m);
if (m_num_scopes > 0) {
throw default_exception("Cannot translate sat solver at non-base level");
@ -103,7 +103,7 @@ public:
return result;
}
virtual void set_progress_callback(progress_callback * callback) {}
void set_progress_callback(progress_callback * callback) override {}
void display_weighted(std::ostream& out, unsigned sz, expr * const * assumptions, unsigned const* weights) {
if (weights != 0) {
@ -135,7 +135,7 @@ public:
(m.is_not(e, e) && is_uninterp_const(e));
}
virtual lbool check_sat(unsigned sz, expr * const * assumptions) {
lbool check_sat(unsigned sz, expr * const * assumptions) override {
m_solver.pop_to_base_level();
expr_ref_vector _assumptions(m);
obj_map<expr, expr*> asm2fml;
@ -185,7 +185,7 @@ public:
}
return r;
}
virtual void push() {
void push() override {
internalize_formulas();
m_solver.user_push();
++m_num_scopes;
@ -195,7 +195,7 @@ public:
if (m_bb_rewriter) m_bb_rewriter->push();
m_map.push();
}
virtual void pop(unsigned n) {
void pop(unsigned n) override {
if (n > m_num_scopes) { // allow inc_sat_solver to
n = m_num_scopes; // take over for another solver.
}
@ -214,10 +214,10 @@ public:
--n;
}
}
virtual unsigned get_scope_level() const {
unsigned get_scope_level() const override {
return m_num_scopes;
}
virtual void assert_expr(expr * t, expr * a) {
void assert_expr(expr * t, expr * a) override {
if (a) {
m_asmsf.push_back(a);
assert_expr(m.mk_implies(a, t));
@ -226,42 +226,42 @@ public:
assert_expr(t);
}
}
virtual ast_manager& get_manager() const { return m; }
virtual void assert_expr(expr * t) {
ast_manager& get_manager() const override { return m; }
void assert_expr(expr * t) override {
TRACE("sat", tout << mk_pp(t, m) << "\n";);
m_fmls.push_back(t);
}
virtual void set_produce_models(bool f) {}
virtual void collect_param_descrs(param_descrs & r) {
void set_produce_models(bool f) override {}
void collect_param_descrs(param_descrs & r) override {
goal2sat::collect_param_descrs(r);
sat::solver::collect_param_descrs(r);
}
virtual void updt_params(params_ref const & p) {
void updt_params(params_ref const & p) override {
solver::updt_params(p);
m_params.set_bool("elim_vars", false);
m_solver.updt_params(m_params);
m_optimize_model = m_params.get_bool("optimize_model", false);
}
virtual void collect_statistics(statistics & st) const {
void collect_statistics(statistics & st) const override {
if (m_preprocess) m_preprocess->collect_statistics(st);
m_solver.collect_statistics(st);
}
virtual void get_unsat_core(ptr_vector<expr> & r) {
void get_unsat_core(ptr_vector<expr> & r) override {
r.reset();
r.append(m_core.size(), m_core.c_ptr());
}
virtual void get_model(model_ref & mdl) {
void get_model(model_ref & mdl) override {
if (!m_model.get()) {
extract_model();
}
mdl = m_model;
}
virtual proof * get_proof() {
proof * get_proof() override {
UNREACHABLE();
return 0;
}
virtual lbool get_consequences_core(expr_ref_vector const& assumptions, expr_ref_vector const& vars, expr_ref_vector& conseq) {
lbool get_consequences_core(expr_ref_vector const& assumptions, expr_ref_vector const& vars, expr_ref_vector& conseq) override {
init_preprocess();
TRACE("sat", tout << assumptions << "\n" << vars << "\n";);
sat::literal_vector asms;
@ -304,7 +304,7 @@ public:
return r;
}
virtual lbool find_mutexes(expr_ref_vector const& vars, vector<expr_ref_vector>& mutexes) {
lbool find_mutexes(expr_ref_vector const& vars, vector<expr_ref_vector>& mutexes) override {
sat::literal_vector ls;
u_map<expr*> lit2var;
for (unsigned i = 0; i < vars.size(); ++i) {
@ -330,24 +330,24 @@ public:
return l_true;
}
virtual std::string reason_unknown() const {
std::string reason_unknown() const override {
return m_unknown;
}
virtual void set_reason_unknown(char const* msg) {
void set_reason_unknown(char const* msg) override {
m_unknown = msg;
}
virtual void get_labels(svector<symbol> & r) {
void get_labels(svector<symbol> & r) override {
}
virtual unsigned get_num_assertions() const {
unsigned get_num_assertions() const override {
return m_fmls.size();
}
virtual expr * get_assertion(unsigned idx) const {
expr * get_assertion(unsigned idx) const override {
return m_fmls[idx];
}
virtual unsigned get_num_assumptions() const {
unsigned get_num_assumptions() const override {
return m_asmsf.size();
}
virtual expr * get_assumption(unsigned idx) const {
expr * get_assumption(unsigned idx) const override {
return m_asmsf[idx];
}

View file

@ -593,7 +593,7 @@ struct sat2goal::imp {
}
}
virtual void operator()(model_ref & md, unsigned goal_idx) {
void operator()(model_ref & md, unsigned goal_idx) override {
SASSERT(goal_idx == 0);
TRACE("sat_mc", tout << "before sat_mc\n"; model_v2_pp(tout, *md); display(tout););
// REMARK: potential problem
@ -644,7 +644,7 @@ struct sat2goal::imp {
TRACE("sat_mc", tout << "after sat_mc\n"; model_v2_pp(tout, *md););
}
virtual model_converter * translate(ast_translation & translator) {
model_converter * translate(ast_translation & translator) override {
sat_model_converter * res = alloc(sat_model_converter, translator.to());
res->m_fmc = static_cast<filter_model_converter*>(m_fmc->translate(translator));
unsigned sz = m_var2expr.size();
@ -653,7 +653,7 @@ struct sat2goal::imp {
return res;
}
void display(std::ostream & out) {
void display(std::ostream & out) override {
out << "(sat-model-converter\n";
m_mc.display(out);
sat::bool_var_set vars;

View file

@ -39,9 +39,9 @@ class sat_tactic : public tactic {
SASSERT(!m.proofs_enabled());
}
void operator()(goal_ref const & g,
goal_ref_buffer & result,
model_converter_ref & mc,
void operator()(goal_ref const & g,
goal_ref_buffer & result,
model_converter_ref & mc,
proof_converter_ref & pc,
expr_dependency_ref & core) {
mc = 0; pc = 0; core = 0;
@ -162,29 +162,29 @@ public:
m_params(p) {
}
virtual tactic * translate(ast_manager & m) {
tactic * translate(ast_manager & m) override {
return alloc(sat_tactic, m, m_params);
}
virtual ~sat_tactic() {
~sat_tactic() override {
SASSERT(m_imp == 0);
}
virtual void updt_params(params_ref const & p) {
void updt_params(params_ref const & p) override {
m_params = p;
}
virtual void collect_param_descrs(param_descrs & r) {
void collect_param_descrs(param_descrs & r) override {
goal2sat::collect_param_descrs(r);
sat2goal::collect_param_descrs(r);
sat::solver::collect_param_descrs(r);
}
void operator()(goal_ref const & g,
goal_ref_buffer & result,
model_converter_ref & mc,
void operator()(goal_ref const & g,
goal_ref_buffer & result,
model_converter_ref & mc,
proof_converter_ref & pc,
expr_dependency_ref & core) {
expr_dependency_ref & core) override {
imp proc(g->m(), m_params);
scoped_set_imp set(this, &proc);
try {
@ -198,15 +198,15 @@ public:
TRACE("sat_stats", m_stats.display_smt2(tout););
}
virtual void cleanup() {
void cleanup() override {
SASSERT(m_imp == 0);
}
virtual void collect_statistics(statistics & st) const {
void collect_statistics(statistics & st) const override {
st.copy(m_stats);
}
virtual void reset_statistics() {
void reset_statistics() override {
m_stats.reset();
}