3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-08 18:31:49 +00:00

rebase with Z3Prover/z3/master

Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
Lev Nachmanson 2020-01-24 16:55:56 -08:00
parent 90f14ec0b3
commit 8ebeaf03b4
3 changed files with 8 additions and 14 deletions

View file

@ -268,13 +268,7 @@ public:
}
lia_move create_cut() {
TRACE("gomory_cut",
print_linear_combination_of_column_indices_only(m_row, tout << "applying cut at:\n"); tout << std::endl;
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;
);
TRACE("gomory_cut", dump(tout););
// gomory will be t <= k and the current solution has a property t > k
m_k = 1;

View file

@ -403,7 +403,7 @@ lia_move int_solver::hnf_cut() {
return lia_move::undef;
}
lia_move int_solver::check() {
lia_move int_solver::check(lp::explanation * e) {
++m_number_of_calls;
m_lar_solver->restore_rounded_columns();
SASSERT(m_lar_solver->ax_is_correct());

View file

@ -283,12 +283,12 @@ lp_status lar_solver::get_status() const { return m_status; }
void lar_solver::set_status(lp_status s) { m_status = s; }
lp_status lar_solver::find_feasible_solution() {
m_settings.st().m_make_feasible++;
m_settings.stats().m_make_feasible++;
restore_rounded_columns();
if (A_r().column_count() > m_settings.st().m_max_cols)
m_settings.st().m_max_cols = A_r().column_count();
if (A_r().row_count() > m_settings.st().m_max_rows)
m_settings.st().m_max_rows = A_r().row_count();
if (A_r().column_count() > m_settings.stats().m_max_cols)
m_settings.stats().m_max_cols = A_r().column_count();
if (A_r().row_count() > m_settings.stats().m_max_rows)
m_settings.stats().m_max_rows = A_r().row_count();
if (strategy_is_undecided())
decide_on_strategy_and_adjust_initial_state();
@ -1917,7 +1917,7 @@ bool lar_solver::bound_is_integer_for_integer_column(unsigned j, const mpq & rig
}
constraint_index lar_solver::add_var_bound(var_index j, lconstraint_kind kind, const mpq & right_side) {
TRACE("lar_solver", tout << "j = " << j << std::endl;);
TRACE("lar_solver", tout << "j = " << j << " " << lconstraint_kind_string(kind) << " " << right_side<< std::endl;);
constraint_index ci = m_constraints.size();
if (!is_term(j)) { // j is a var
lp_assert(bound_is_integer_for_integer_column(j, right_side));