3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-05-11 17:54:43 +00:00
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2025-05-09 16:33:00 -07:00
parent 11a35d109b
commit fe0807f21a

View file

@ -1475,7 +1475,7 @@ namespace lp {
explanation& exp, explanation& exp,
const vector<std::pair<mpq, unsigned>>& inf_row, const vector<std::pair<mpq, unsigned>>& inf_row,
int inf_sign) const { int inf_sign) const {
#if 0
impq slack(0); impq slack(0);
std_vector<unsigned> indices; std_vector<unsigned> indices;
@ -1493,16 +1493,17 @@ namespace lp {
if (k != j) if (k != j)
std::swap(indices[j], indices[k]); std::swap(indices[j], indices[k]);
} }
#endif
for (unsigned k : indices) { for (auto& [coeff, j]: inf_row) {
const auto& p = inf_row[k]; // for (unsigned k : indices) {
unsigned j = p.second; // const auto& p = inf_row[k];
const mpq& coeff = p.first; // unsigned j = p.second;
// const mpq& coeff = p.first;
int adj_sign = coeff.is_pos() ? inf_sign : -inf_sign; int adj_sign = coeff.is_pos() ? inf_sign : -inf_sign;
bool is_upper = adj_sign < 0; bool is_upper = adj_sign < 0;
const column& ul = m_imp->m_columns[j]; const column& ul = m_imp->m_columns[j];
u_dependency* bound_constr_i = is_upper ? ul.upper_bound_witness() : ul.lower_bound_witness(); u_dependency* bound_constr_i = is_upper ? ul.upper_bound_witness() : ul.lower_bound_witness();
#if 0
if(is_upper) { if(is_upper) {
if (ul.previous_upper() != UINT_MAX) { if (ul.previous_upper() != UINT_MAX) {
auto const& [_is_upper, _j, _bound, _column] = m_imp->m_column_updates[ul.previous_upper()]; auto const& [_is_upper, _j, _bound, _column] = m_imp->m_column_updates[ul.previous_upper()];
@ -1525,7 +1526,7 @@ namespace lp {
} }
} }
} }
#endif
svector<constraint_index> deps; svector<constraint_index> deps;
dep_manager().linearize(bound_constr_i, deps); dep_manager().linearize(bound_constr_i, deps);
for (auto d : deps) { for (auto d : deps) {