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

hook up nla_solver it lp bound propagation

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2019-06-05 15:26:11 -07:00
parent 33cbd29ed0
commit 9c18ede687
11 changed files with 177 additions and 93 deletions

View file

@ -41,7 +41,7 @@ Revision History:
#include "math/lp/conversion_helper.h"
#include "math/lp/int_solver.h"
#include "math/lp/nra_solver.h"
#include "math/lp/bound_propagator.h"
#include "math/lp/lp_bound_propagator.h"
namespace lp {
@ -264,16 +264,16 @@ public:
void analyze_new_bounds_on_row(
unsigned row_index,
bound_propagator & bp);
lp_bound_propagator & bp);
void analyze_new_bounds_on_row_tableau(
unsigned row_index,
bound_propagator & bp);
lp_bound_propagator & bp);
void substitute_basis_var_in_terms_for_row(unsigned i);
void calculate_implied_bounds_for_row(unsigned i, bound_propagator & bp);
void calculate_implied_bounds_for_row(unsigned i, lp_bound_propagator & bp);
unsigned adjust_column_index_to_term_index(unsigned j) const;
@ -313,19 +313,19 @@ public:
}
void propagate_bounds_on_a_term(const lar_term& t, bound_propagator & bp, unsigned term_offset);
void propagate_bounds_on_a_term(const lar_term& t, lp_bound_propagator & bp, unsigned term_offset);
void explain_implied_bound(implied_bound & ib, bound_propagator & bp);
void explain_implied_bound(implied_bound & ib, lp_bound_propagator & bp);
bool term_is_used_as_row(unsigned term) const;
void propagate_bounds_on_terms(bound_propagator & bp);
void propagate_bounds_on_terms(lp_bound_propagator & bp);
// goes over touched rows and tries to induce bounds
void propagate_bounds_for_touched_rows(bound_propagator & bp);
void propagate_bounds_for_touched_rows(lp_bound_propagator & bp);
lp_status get_status() const;