3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-10 17:58:06 +00:00

add totalizer version of rc2

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2022-06-29 23:10:42 -07:00
parent 8ab8b63a4c
commit c3d2120bdd
7 changed files with 72 additions and 12 deletions

View file

@ -30,8 +30,9 @@ namespace opt {
ast_manager& m;
expr_ref_vector m_literals;
node* m_tree;
vector<expr_ref_vector> m_clauses;
node* m_tree = nullptr;
expr_ref_vector m_clauses;
vector<std::pair<expr_ref, expr_ref>> m_defs;
void ensure_bound(node* n, unsigned k);
@ -39,6 +40,7 @@ namespace opt {
totalizer(expr_ref_vector const& literals);
~totalizer();
expr* at_least(unsigned k);
vector<expr_ref_vector>& clauses() { return m_clauses; }
expr_ref_vector& clauses() { return m_clauses; }
vector<std::pair<expr_ref, expr_ref>>& defs() { return m_defs; }
};
}