3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-28 11:25:51 +00:00

fix a bug in nla_expr

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2019-07-05 14:35:40 -07:00
parent 1e625db84b
commit 87cc5c8d96
6 changed files with 48 additions and 21 deletions

View file

@ -1361,6 +1361,16 @@ std::ostream& lar_solver::print_constraint_indices_only(constraint_index ci, std
return print_constraint_indices_only(m_constraints[ci], out);
}
std::ostream& lar_solver::print_constraint_indices_only_customized(constraint_index ci, std::function<std::string (unsigned)> var_str, std::ostream & out) const {
if (ci >= m_constraints.size()) {
out << "constraint " << T_to_string(ci) << " is not found";
out << std::endl;
return out;
}
return print_constraint_indices_only_customized(m_constraints[ci], var_str, out);
}
std::ostream& lar_solver::print_constraints(std::ostream& out) const {
out << "number of constraints = " << m_constraints.size() << std::endl;
for (auto c : m_constraints) {
@ -1443,6 +1453,12 @@ std::ostream& lar_solver::print_constraint_indices_only(const lar_base_constrain
return out << " " << lconstraint_kind_string(c->m_kind) << " " << c->m_right_side << std::endl;
}
std::ostream& lar_solver::print_constraint_indices_only_customized(const lar_base_constraint * c,
std::function<std::string (unsigned)> var_str, std::ostream & out) const {
print_linear_combination_customized(c->coeffs(), var_str, out);
return out << " " << lconstraint_kind_string(c->m_kind) << " " << c->m_right_side << std::endl;
}
void lar_solver::fill_var_set_for_random_update(unsigned sz, var_index const * vars, vector<unsigned>& column_list) {
for (unsigned i = 0; i < sz; i++) {
var_index var = vars[i];