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

Merge branch 'unit_prop_on_monomials' of https://github.com/z3prover/z3 into unit_prop_on_monomials

This commit is contained in:
Nikolaj Bjorner 2023-09-23 17:20:08 -07:00
commit 3433366bef
10 changed files with 283 additions and 231 deletions

View file

@ -61,7 +61,7 @@ namespace arith {
void solver::ensure_nla() {
if (!m_nla) {
m_nla = alloc(nla::solver, *m_solver.get(), s().params(), m.limit());
m_nla = alloc(nla::solver, *m_solver.get(), s().params(), m.limit(), m_implied_bounds);
for (auto const& _s : m_scopes) {
(void)_s;
m_nla->push();

View file

@ -26,7 +26,7 @@ namespace arith {
m_model_eqs(DEFAULT_HASHTABLE_INITIAL_CAPACITY, var_value_hash(*this), var_value_eq(*this)),
m_local_search(*this),
m_resource_limit(*this),
m_bp(*this),
m_bp(*this, m_implied_bounds),
a(m),
m_bound_terms(m),
m_bound_predicate(m)

View file

@ -243,6 +243,7 @@ namespace arith {
resource_limit m_resource_limit;
lp_bounds m_new_bounds;
symbol m_farkas;
std_vector<lp::implied_bound> m_implied_bounds;
lp::lp_bound_propagator<solver> m_bp;
mutable vector<std::pair<lp::tv, rational>> m_todo_terms;