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

clean m_nla_lemma_vector in nla_solver

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2023-09-25 12:10:59 -07:00
parent 87a839c794
commit 26a9b776c6
5 changed files with 7 additions and 6 deletions

View file

@ -2027,11 +2027,12 @@ void core::add_lower_bound_monic(lpvar j, const lp::mpq& v, bool is_strict, std:
} }
} }
void core::init_bound_propagation() { void core::init_bound_propagation(vector<nla::lemma>& lemma_vector) {
m_implied_bounds.clear(); m_implied_bounds.clear();
m_improved_lower_bounds.reset(); m_improved_lower_bounds.reset();
m_improved_upper_bounds.reset(); m_improved_upper_bounds.reset();
m_column_types = &lra.get_column_types(); m_column_types = &lra.get_column_types();
lemma_vector.clear();
} }
} // namespace nla } // namespace nla

View file

@ -451,7 +451,7 @@ private:
void save_tableau(); void save_tableau();
bool integrality_holds(); bool integrality_holds();
void calculate_implied_bounds_for_monic(lp::lpvar v); void calculate_implied_bounds_for_monic(lp::lpvar v);
void init_bound_propagation(); void init_bound_propagation(vector<nla::lemma> &);
}; // end of core }; // end of core
struct pp_mon { struct pp_mon {

View file

@ -100,8 +100,8 @@ namespace nla {
m_core->check_bounded_divisions(lemmas); m_core->check_bounded_divisions(lemmas);
} }
void solver::init_bound_propagation() { void solver::init_bound_propagation(vector<nla::lemma>& nla_lemma_vector) {
m_core->init_bound_propagation(); m_core->init_bound_propagation(nla_lemma_vector);
} }
} }

View file

@ -49,6 +49,6 @@ namespace nla {
nlsat::anum const& am_value(lp::var_index v) const; nlsat::anum const& am_value(lp::var_index v) const;
void collect_statistics(::statistics & st); void collect_statistics(::statistics & st);
void calculate_implied_bounds_for_monic(lp::lpvar v); void calculate_implied_bounds_for_monic(lp::lpvar v);
void init_bound_propagation(); void init_bound_propagation(vector<nla::lemma>&);
}; };
} }

View file

@ -2201,7 +2201,7 @@ public:
} }
void propagate_bounds_for_touched_monomials() { void propagate_bounds_for_touched_monomials() {
m_nla->init_bound_propagation(); m_nla->init_bound_propagation(m_nla_lemma_vector);
for (unsigned v : m_nla->monics_with_changed_bounds()) for (unsigned v : m_nla->monics_with_changed_bounds())
m_nla->calculate_implied_bounds_for_monic(v); m_nla->calculate_implied_bounds_for_monic(v);