3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-01-21 01:24:43 +00:00

Propagation must be justified by a prefix of Gamma

This commit is contained in:
Jakob Rath 2022-11-22 13:42:31 +01:00
parent 33ea8d6e57
commit a144a09ede
4 changed files with 34 additions and 1 deletions

View file

@ -981,6 +981,16 @@ namespace polysat {
m_search.push_boolean(lit);
}
/** Push c onto \Gamma, unless it is already true. */
void solver::try_assign_eval(signed_constraint c) {
sat::literal const lit = c.blit();
if (m_bvars.is_assigned(lit))
return;
if (c.is_always_true())
return;
assign_eval(lit);
}
/**
* Activate constraint immediately
* Activation and de-activation of constraints follows the scope controlled by push/pop.