3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 11:55:51 +00:00

updates to saturation

This commit is contained in:
Nikolaj Bjorner 2023-12-23 16:59:17 -08:00
parent fbbad72c29
commit 50358e43ed
6 changed files with 131 additions and 1913 deletions

View file

@ -199,8 +199,11 @@ namespace polysat {
unsigned level = 0;
for (auto c : core)
level = std::max(level, s().lvl(c));
if (!eqs.empty()) // over-approximate propagation level if it uses equalities.
level = level = s().scope_lvl();
sat::literal_vector eqlits;
for (auto [n1, n2] : eqs)
ctx.get_eq_antecedents(n1, n2, eqlits);
for (auto lit : eqlits)
level = std::max(level, s().lvl(lit));
ctx.propagate(lit, ex);
return dependency(lit, level);
}