mirror of
https://github.com/Z3Prover/z3
synced 2025-09-02 08:10:43 +00:00
Phase saving and some minor changes (#5209)
* Implement phase saving * Implement signed comparison on BDD vectors * Add fdd::non_zero * Simplify construction of fdds over disjoint variables * Minor changes to adding constraint
This commit is contained in:
parent
09f31ebb0a
commit
12444c7e8b
7 changed files with 156 additions and 31 deletions
|
@ -41,6 +41,7 @@ namespace polysat {
|
|||
|
||||
friend class eq_constraint;
|
||||
friend class var_constraint;
|
||||
friend class ule_constraint;
|
||||
|
||||
typedef ptr_vector<constraint> constraints;
|
||||
|
||||
|
@ -150,6 +151,7 @@ namespace polysat {
|
|||
|
||||
dd::pdd_manager& sz2pdd(unsigned sz);
|
||||
dd::fdd const& sz2bits(unsigned sz);
|
||||
dd::fdd const& var2bits(pvar v) { return sz2bits(size(v)); }
|
||||
|
||||
void push_level();
|
||||
void pop_levels(unsigned num_levels);
|
||||
|
@ -201,6 +203,8 @@ namespace polysat {
|
|||
void backjump(unsigned new_level);
|
||||
void add_lemma(constraint* c);
|
||||
|
||||
void add_constraint(constraint* c);
|
||||
|
||||
bool invariant();
|
||||
bool invariant(scoped_ptr_vector<constraint> const& cs);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue