3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-03-05 21:12:43 +00:00

testing / debugging arithmetic

This commit is contained in:
Nikolaj Bjorner 2024-07-19 11:31:43 -07:00
parent ae55d30961
commit 5b0d49cd76
10 changed files with 269 additions and 139 deletions

View file

@ -19,7 +19,8 @@ namespace sls {
class basic_plugin : public plugin {
bool_vector m_values;
bool m_initialized = false;
bool is_basic(expr* e) const;
bool bval1(app* e) const;
bool bval0(expr* e) const;
bool try_repair(app* e, unsigned i);
@ -32,6 +33,8 @@ namespace sls {
bool try_repair_distinct(app* e, unsigned i);
bool set_value(expr* e, bool b);
void add_clause(app* e);
public:
basic_plugin(context& ctx) :
plugin(ctx) {
@ -42,7 +45,7 @@ namespace sls {
expr_ref get_value(expr* e) override;
void initialize() override;
void propagate_literal(sat::literal lit) override;
bool propagate() override { return false; }
bool propagate() override;
void repair_down(app* e) override;
void repair_up(app* e) override;
bool is_sat() override;