mirror of
https://github.com/Z3Prover/z3
synced 2025-04-24 09:35:32 +00:00
breaking change. Enforce append semantics everywhere for parameter updates #5744
Replace semantics doesn't work with assumptions made elsewhere in code. The remedy is to apply append (override) semantics for parameter changes.
This commit is contained in:
parent
e8833f4dac
commit
fc77345bec
53 changed files with 101 additions and 98 deletions
|
@ -149,8 +149,8 @@ public:
|
|||
char const* name() const override { return "add_bounds"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -45,7 +45,7 @@ public:
|
|||
char const* name() const override { return "card2bv"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_params.append(p);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -360,8 +360,8 @@ public:
|
|||
char const* name() const override { return "diff_neq"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -297,8 +297,8 @@ public:
|
|||
char const* name() const override { return "factor"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->m_rw.cfg().updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->m_rw.cfg().updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -303,8 +303,8 @@ public:
|
|||
char const* name() const override { return "fix_dl_var"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -1645,8 +1645,8 @@ public:
|
|||
char const* name() const override { return "fm"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -135,8 +135,8 @@ public:
|
|||
char const* name() const override { return "lia2card"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_compile_equality = p.get_bool("compile_equality", true);
|
||||
m_params.append(p);
|
||||
m_compile_equality = m_params.get_bool("compile_equality", true);
|
||||
}
|
||||
|
||||
expr_ref mk_bounded(expr_ref_vector& axioms, app* x, unsigned lo, unsigned hi) {
|
||||
|
|
|
@ -308,8 +308,8 @@ public:
|
|||
char const* name() const override { return "lia2pb"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -1010,8 +1010,8 @@ public:
|
|||
char const* name() const override { return "pb2bv"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -543,8 +543,8 @@ propagate_ineqs_tactic::~propagate_ineqs_tactic() {
|
|||
}
|
||||
|
||||
void propagate_ineqs_tactic::updt_params(params_ref const & p) {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void propagate_ineqs_tactic::operator()(goal_ref const & g,
|
||||
|
|
|
@ -906,7 +906,7 @@ public:
|
|||
char const* name() const override { return "purify_arith"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_params.append(p);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -401,8 +401,8 @@ public:
|
|||
char const* name() const override { return "recover_01"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -122,8 +122,8 @@ public:
|
|||
char const* name() const override { return "bit_blaster"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -434,8 +434,8 @@ public:
|
|||
char const* name() const override { return "bv1_blaster"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->m_rw.cfg().updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->m_rw.cfg().updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -206,8 +206,8 @@ tactic * bv_bound_chk_tactic::translate(ast_manager & m) {
|
|||
|
||||
|
||||
void bv_bound_chk_tactic::updt_params(params_ref const & p) {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void bv_bound_chk_tactic::cleanup() {
|
||||
|
|
|
@ -116,8 +116,8 @@ public:
|
|||
char const* name() const override { return "bvarray2uf"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -207,7 +207,7 @@ class elim_small_bv_tactic : public tactic {
|
|||
}
|
||||
|
||||
void updt_params(params_ref const & p) {
|
||||
m_params = p;
|
||||
m_params.append(p);
|
||||
m_max_memory = megabytes_to_bytes(p.get_uint("max_memory", UINT_MAX));
|
||||
m_max_steps = p.get_uint("max_steps", UINT_MAX);
|
||||
m_max_bits = p.get_uint("max_bits", 4);
|
||||
|
@ -241,8 +241,8 @@ public:
|
|||
}
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_rw.cfg().updt_params(p);
|
||||
m_params.append(p);
|
||||
m_rw.cfg().updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -280,8 +280,8 @@ public:
|
|||
char const* name() const override { return "max_bv_sharing"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->m_rw.cfg().updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->m_rw.cfg().updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -174,8 +174,8 @@ public:
|
|||
char const* name() const override { return "blast_term_ite"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->m_rw.m_cfg.updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->m_rw.m_cfg.updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -52,7 +52,7 @@ public:
|
|||
|
||||
~cofactor_term_ite_tactic() override {}
|
||||
char const* name() const override { return "cofactor"; }
|
||||
void updt_params(params_ref const & p) override { m_params = p; m_elim_ite.updt_params(p); }
|
||||
void updt_params(params_ref const & p) override { m_params.append(p); m_elim_ite.updt_params(m_params); }
|
||||
void collect_param_descrs(param_descrs & r) override { m_elim_ite.collect_param_descrs(r); }
|
||||
|
||||
void operator()(goal_ref const & g, goal_ref_buffer& result) override {
|
||||
|
|
|
@ -60,7 +60,7 @@ public:
|
|||
}
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_params.append(p);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {}
|
||||
|
|
|
@ -605,8 +605,8 @@ ctx_simplify_tactic::~ctx_simplify_tactic() {
|
|||
}
|
||||
|
||||
void ctx_simplify_tactic::updt_params(params_ref const & p) {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void ctx_simplify_tactic::get_param_descrs(param_descrs & r) {
|
||||
|
|
|
@ -143,8 +143,8 @@ public:
|
|||
}
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->m_rw.cfg().updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->m_rw.cfg().updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -862,9 +862,9 @@ public:
|
|||
}
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_max_memory = megabytes_to_bytes(p.get_uint("max_memory", UINT_MAX));
|
||||
m_max_steps = p.get_uint("max_steps", UINT_MAX);
|
||||
m_params.append(p);
|
||||
m_max_memory = megabytes_to_bytes(m_params.get_uint("max_memory", UINT_MAX));
|
||||
m_max_steps = m_params.get_uint("max_steps", UINT_MAX);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -258,8 +258,8 @@ public:
|
|||
char const* name() const override { return "injectivity"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_finder->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_finder->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -51,7 +51,7 @@ public:
|
|||
|
||||
char const* name() const override { return "nnf"; }
|
||||
|
||||
void updt_params(params_ref const & p) override { m_params = p; }
|
||||
void updt_params(params_ref const & p) override { m_params.append(p); }
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override { nnf::get_param_descrs(r); }
|
||||
|
||||
|
|
|
@ -219,9 +219,9 @@ public:
|
|||
char const* name() const override { return "propagate_values"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_params.append(p);
|
||||
m_r.updt_params(p);
|
||||
updt_params_core(p);
|
||||
updt_params_core(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -80,8 +80,8 @@ simplify_tactic::~simplify_tactic() {
|
|||
}
|
||||
|
||||
void simplify_tactic::updt_params(params_ref const & p) {
|
||||
m_params = p;
|
||||
m_imp->m_r.updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->m_r.updt_params(m_params);
|
||||
}
|
||||
|
||||
void simplify_tactic::get_param_descrs(param_descrs & r) {
|
||||
|
|
|
@ -1092,8 +1092,8 @@ public:
|
|||
char const* name() const override { return "solve_eqs"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -49,7 +49,7 @@ public:
|
|||
|
||||
~special_relations_tactic() override {}
|
||||
|
||||
void updt_params(params_ref const & p) override { m_params = p; }
|
||||
void updt_params(params_ref const & p) override { m_params.append(p); }
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override { }
|
||||
|
||||
|
|
|
@ -894,8 +894,8 @@ public:
|
|||
char const* name() const override { return "tseitin_cnf"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -123,8 +123,8 @@ public:
|
|||
char const* name() const override { return "fp2bv"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -136,8 +136,8 @@ public:
|
|||
char const* name() const override { return "solver_subsumption"; }
|
||||
|
||||
void updt_params(params_ref const& p) override {
|
||||
m_params = p;
|
||||
unsigned max_conflicts = p.get_uint("max_conflicts", 2);
|
||||
m_params.append(p);
|
||||
unsigned max_conflicts = m_params.get_uint("max_conflicts", 2);
|
||||
m_params.set_uint("sat.max_conflicts", max_conflicts);
|
||||
m_params.set_uint("smt.max_conflicts", max_conflicts);
|
||||
}
|
||||
|
|
|
@ -53,8 +53,8 @@ public:
|
|||
char const* name() const override { return "sls"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_engine->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_engine->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -108,8 +108,8 @@ public:
|
|||
char const* name() const override { return "macro_finder"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -103,8 +103,8 @@ public:
|
|||
char const* name() const override { return "quasi_macros"; }
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_imp->updt_params(p);
|
||||
m_params.append(p);
|
||||
m_imp->updt_params(m_params);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
|
@ -35,7 +35,7 @@ public:
|
|||
}
|
||||
|
||||
void updt_params(params_ref const & p) override {
|
||||
m_params = p;
|
||||
m_params.append(p);
|
||||
}
|
||||
|
||||
void collect_param_descrs(param_descrs & r) override {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue