3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 01:25:31 +00:00

simplify the nla_solver interface (#4312)

* simplify the nla_solver interface

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* more simplifications

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

* init m_use_nra_model

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>

Co-authored-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Lev Nachmanson 2020-05-12 19:34:03 -07:00 committed by GitHub
parent 7a6c66a085
commit b2dc21b107
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 55 additions and 55 deletions

View file

@ -2158,24 +2158,13 @@ public:
}
lbool check_nla_continue() {
auto & lv = m_nla_lemma_vector;
m_explanation.clear();
lbool r = m_nla->check(lv, m_explanation);
if (use_nra_model())
m_stats.m_nra_calls ++;
if (m_explanation.size()) {
SASSERT(use_nra_model());
SASSERT(r == l_false);
set_conflict();
return l_false;
}
lbool r = m_nla->check(m_nla_lemma_vector);
if (use_nra_model()) m_stats.m_nra_calls ++;
switch (r) {
case l_false: {
SASSERT(m_explanation.size() == 0);
m_stats.m_nla_lemmas += lv.size();
for (const nla::lemma & l : lv) {
m_stats.m_nla_lemmas += m_nla_lemma_vector.size();
for (const nla::lemma & l : m_nla_lemma_vector) {
false_case_of_check_nla(l);
}
break;