3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-10-09 01:11:55 +00:00

use explanation.h for conflict explanations everywhere

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2018-08-17 12:27:54 +08:00
parent fd0f6bcbf9
commit 0911fc2bda
10 changed files with 43 additions and 42 deletions

View file

@ -307,7 +307,7 @@ public:
lp_status solve();
void fill_explanation_from_infeasible_column(explanation_t & evidence) const;
void fill_explanation_from_infeasible_column(explanation & evidence) const;
unsigned get_total_iterations() const;
@ -454,11 +454,11 @@ public:
bool the_right_sides_do_not_sum_to_zero(const vector<std::pair<mpq, unsigned>> & evidence);
bool explanation_is_correct(const vector<std::pair<mpq, unsigned>>& explanation) const;
bool explanation_is_correct(explanation&) const;
bool inf_explanation_is_correct() const;
mpq sum_of_right_sides_of_explanation(const vector<std::pair<mpq, unsigned>> & explanation) const;
mpq sum_of_right_sides_of_explanation(explanation &) const;
bool has_lower_bound(var_index var, constraint_index& ci, mpq& value, bool& is_strict) const;
@ -466,10 +466,10 @@ public:
bool has_value(var_index var, mpq& value) const;
void get_infeasibility_explanation(vector<std::pair<mpq, constraint_index>> & explanation) const;
void get_infeasibility_explanation(explanation &) const;
void get_infeasibility_explanation_for_inf_sign(
vector<std::pair<mpq, constraint_index>> & explanation,
explanation & exp,
const vector<std::pair<mpq, unsigned>> & inf_row,
int inf_sign) const;