3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-08 18:31:49 +00:00

move propagation to after binary clause addition

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2018-03-26 15:51:00 -07:00
parent 96b717f494
commit 51d62684e1

View file

@ -416,6 +416,7 @@ namespace sat {
case 2:
SASSERT(s.value(c[0]) == l_undef && s.value(c[1]) == l_undef);
s.mk_bin_clause(c[0], c[1], c.is_learned());
if (s.m_trail.size() > s.m_qhead) s.propagate_core(false);
scoped_d.del_clause();
return false;
default:
@ -459,9 +460,7 @@ namespace sat {
// try asymmetric branching
// clause must not be used for propagation
s.propagate(false);
if (s.inconsistent())
return true;
scoped_detach scoped_d(s, c);
unsigned new_sz = c.size();
unsigned flip_position = m_rand(c.size());