3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-19 09:40:20 +00:00

use lookahead for simplification

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-04-18 16:58:56 -07:00
parent 352f8b6cb9
commit a3f4d58b00
11 changed files with 183 additions and 45 deletions

View file

@ -21,6 +21,7 @@ Revision History:
#include"sat_simplifier.h"
#include"sat_simplifier_params.hpp"
#include"sat_solver.h"
#include"sat_lookahead.h"
#include"stopwatch.h"
#include"trace.h"
@ -204,6 +205,11 @@ namespace sat {
}
while (!m_sub_todo.empty());
if (!learned) {
// perform lookahead simplification
lookahead(s).simplify();
}
bool vars_eliminated = m_num_elim_vars > old_num_elim_vars;
if (m_need_cleanup) {
@ -219,9 +225,11 @@ namespace sat {
cleanup_clauses(s.m_learned, true, true, learned_in_use_lists);
}
}
CASSERT("sat_solver", s.check_invariant());
TRACE("after_simplifier", s.display(tout); tout << "model_converter:\n"; s.m_mc.display(tout););
finalize();
}
/**