mirror of
https://github.com/Z3Prover/z3
synced 2025-08-02 17:30:23 +00:00
filter out empty lemmas from nla_solver on consumption
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
parent
4e33b44d27
commit
20fb830682
3 changed files with 66 additions and 6 deletions
|
@ -178,6 +178,9 @@ class theory_lra::imp {
|
|||
// integer arithmetic
|
||||
scoped_ptr<lp::int_solver> m_lia;
|
||||
|
||||
// temporary lemma storage
|
||||
nla::lemma m_lemma;
|
||||
|
||||
|
||||
struct var_value_eq {
|
||||
imp & m_th;
|
||||
|
@ -1962,8 +1965,6 @@ public:
|
|||
return FC_DONE;
|
||||
}
|
||||
|
||||
nla::lemma m_lemma;
|
||||
|
||||
literal mk_literal(nla::ineq const& ineq) {
|
||||
bool is_lower = true, pos = true, is_eq = false;
|
||||
switch (ineq.cmp()) {
|
||||
|
@ -2010,6 +2011,7 @@ public:
|
|||
m_lemma = l; //todo avoid the copy
|
||||
m_explanation = l.expl();
|
||||
literal_vector core;
|
||||
SASSERT(!m_lemma.is_empty());
|
||||
for (auto const& ineq : m_lemma.ineqs()) {
|
||||
auto lit = mk_literal(ineq);
|
||||
core.push_back(~lit);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue