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

add cube functionality

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2017-09-24 13:29:46 -07:00
parent ae9a6664d4
commit 82922d92f7
4 changed files with 83 additions and 58 deletions

View file

@ -857,8 +857,7 @@ namespace sat {
return lookahead_search();
}
if (m_config.m_lookahead_cube && num_lits == 0) {
lookahead_cube();
return l_undef;
return lookahead_cube();
}
if (m_config.m_local_search) {
return do_local_search(num_lits, lits);
@ -952,16 +951,18 @@ namespace sat {
return r;
}
void solver::lookahead_cube() {
lbool solver::lookahead_cube() {
lookahead lh(*this);
lbool r = l_undef;
try {
lh.cube();
r = lh.cube();
}
catch (z3_exception&) {
lh.collect_statistics(m_aux_stats);
throw;
}
lh.collect_statistics(m_aux_stats);
return r;
}
lbool solver::lookahead_search() {