mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 17:15:31 +00:00
fix #2817 - rows may apparently not be correct (root cause of this tbd), but avoid Gomory on incorrect rows
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
05da2508bf
commit
ad965ac896
2 changed files with 5 additions and 1 deletions
|
@ -268,7 +268,8 @@ public:
|
|||
for (auto & p : m_row) {
|
||||
m_int_solver.m_lar_solver->m_mpq_lar_core_solver.m_r_solver.print_column_info(p.var(), tout);
|
||||
}
|
||||
tout << "inf_col = " << m_inf_col << std::endl;);
|
||||
tout << "inf_col = " << m_inf_col << std::endl;
|
||||
);
|
||||
|
||||
// gomory will be t <= k and the current solution has a property t > k
|
||||
m_k = 1;
|
||||
|
|
|
@ -147,6 +147,9 @@ lia_move int_solver::proceed_with_gomory_cut(unsigned j) {
|
|||
if (!is_gomory_cut_target(row))
|
||||
return create_branch_on_column(j);
|
||||
|
||||
if (!m_lar_solver->row_is_correct(row_of_basic_column(j)))
|
||||
return lia_move::undef;
|
||||
|
||||
m_upper = true;
|
||||
return mk_gomory_cut(j, row);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue