mirror of
https://github.com/Z3Prover/z3
synced 2025-08-27 13:39:49 +00:00
delay internalize (#4714)
* adding array solver Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * use default in model construction Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * debug delay internalization Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * bv Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * arrays Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * get rid of implied values and bounds Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * redo egraph * remove out Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com> * remove files Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
25724401cf
commit
367e5fdd52
60 changed files with 1343 additions and 924 deletions
|
@ -54,6 +54,7 @@ namespace euf {
|
|||
class solver : public sat::extension, public th_internalizer, public th_decompile {
|
||||
typedef top_sort<euf::enode> deps_t;
|
||||
friend class ackerman;
|
||||
class user_sort;
|
||||
// friend class sat::ba_solver;
|
||||
struct stats {
|
||||
unsigned m_ackerman;
|
||||
|
@ -129,7 +130,7 @@ namespace euf {
|
|||
th_solver* func_decl2solver(func_decl* f) { return get_solver(f->get_family_id(), f); }
|
||||
th_solver* expr2solver(expr* e);
|
||||
th_solver* bool_var2solver(sat::bool_var v);
|
||||
th_solver* fid2solver(family_id fid) { return m_id2solver.get(fid, nullptr); }
|
||||
th_solver* fid2solver(family_id fid) const { return m_id2solver.get(fid, nullptr); }
|
||||
void add_solver(family_id fid, th_solver* th);
|
||||
void init_ackerman();
|
||||
|
||||
|
@ -234,6 +235,8 @@ namespace euf {
|
|||
sat::check_result check() override;
|
||||
void push() override;
|
||||
void pop(unsigned n) override;
|
||||
void user_push();
|
||||
void user_pop(unsigned n);
|
||||
void pre_simplify() override;
|
||||
void simplify() override;
|
||||
// have a way to replace l by r in all constraints
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue