3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-24 09:35:32 +00:00

merge changes from Z3Prover

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2019-12-25 17:50:59 -08:00
parent aafdab65bd
commit 5e19a52772
6 changed files with 44 additions and 3 deletions

View file

@ -723,7 +723,6 @@ namespace dd {
bool do_gc = m_free_nodes.empty();
if (do_gc && !m_disable_gc) {
gc();
SASSERT(n.m_hi == 0 || (!m_free_nodes.contains(n.m_hi) && !m_free_nodes.contains(n.m_lo)));
e = m_node_table.insert_if_not_there2(n);
e->get_data().m_refcount = 0;
}

View file

@ -378,6 +378,8 @@ namespace dd {
inline pdd operator-(rational const& r, pdd const& b) { return b.rev_sub(r); }
inline pdd operator-(int x, pdd const& b) { return rational(x) - b; }
inline pdd operator-(pdd const& b, int x) { return b + (-rational(x)); }
inline pdd& operator*=(pdd & p, pdd const& q) { p = p * q; return p; }
inline pdd& operator|=(pdd & p, pdd const& q) { p = p | q; return p; }
inline pdd& operator&=(pdd & p, pdd const& q) { p = p & q; return p; }
inline pdd& operator^=(pdd & p, pdd const& q) { p = p ^ q; return p; }

View file

@ -698,6 +698,7 @@ namespace dd {
}
}
if (eq) {
pop_equation(eq);
m_watch[eq->poly().var()].erase(eq);
return eq;

View file

@ -130,6 +130,7 @@ public:
private:
bool step();
equation* pick_next();
equation* pick_linear();
bool canceled();
bool done();
void superpose(equation const& eq1, equation const& eq2);

View file

@ -20,6 +20,7 @@ Revision History:
#include "math/lp/nla_core.h"
#include "math/lp/factorization_factory_imp.h"
#include "math/lp/nex.h"
#include "math/grobner/pdd_grobner.h"
namespace nla {
core::core(lp::lar_solver& s, reslimit & lim) :