3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-19 10:52:02 +00:00

move flatten functionality to asserted_formulas, sort variables in lut_finder

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2020-02-06 09:16:23 -08:00
parent 38d690650b
commit 8b23a1701a
9 changed files with 88 additions and 57 deletions

View file

@ -276,13 +276,13 @@ namespace sat {
}
void aig_cuts::add_cut(bool_var v, uint64_t lut, bool_var_vector const& args) {
// args can be assumed to be sorted
DEBUG_CODE(for (unsigned i = 0; i + 1 < args.size(); ++i) VERIFY(args[i] < args[i+1]););
reserve(v);
for (bool_var w : args) reserve(w);
// optional: reshuffle lut and sort variables.
cut c;
for (bool_var w : args) VERIFY(c.add(w));
c.set_table(lut);
// add-don't care?
insert_cut(v, c, m_cuts[v]);
}