3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-19 10:52:02 +00:00
add unit propagation
This commit is contained in:
Nikolaj Bjorner 2021-08-24 11:24:31 -07:00
parent 26db68bf2c
commit 7bae297297

View file

@ -85,6 +85,8 @@ namespace fpa {
sat::check_result solver::check() { sat::check_result solver::check() {
SASSERT(m_converter.m_extra_assertions.empty()); SASSERT(m_converter.m_extra_assertions.empty());
if (unit_propagate())
return sat::check_result::CR_CONTINUE;
SASSERT(m_nodes.size() <= m_nodes_qhead); SASSERT(m_nodes.size() <= m_nodes_qhead);
return sat::check_result::CR_DONE; return sat::check_result::CR_DONE;
} }
@ -165,7 +167,6 @@ namespace fpa {
} }
bool solver::unit_propagate() { bool solver::unit_propagate() {
if (m_nodes.size() <= m_nodes_qhead) if (m_nodes.size() <= m_nodes_qhead)
return false; return false;
ctx.push(value_trail<unsigned>(m_nodes_qhead)); ctx.push(value_trail<unsigned>(m_nodes_qhead));