mirror of
https://github.com/Z3Prover/z3
synced 2025-06-21 21:33:39 +00:00
rebase with Z3Prover/z3/master
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
parent
90f14ec0b3
commit
8ebeaf03b4
3 changed files with 8 additions and 14 deletions
|
@ -268,13 +268,7 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
lia_move create_cut() {
|
lia_move create_cut() {
|
||||||
TRACE("gomory_cut",
|
TRACE("gomory_cut", dump(tout););
|
||||||
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;
|
|
||||||
);
|
|
||||||
|
|
||||||
// gomory will be t <= k and the current solution has a property t > k
|
// gomory will be t <= k and the current solution has a property t > k
|
||||||
m_k = 1;
|
m_k = 1;
|
||||||
|
|
|
@ -403,7 +403,7 @@ lia_move int_solver::hnf_cut() {
|
||||||
return lia_move::undef;
|
return lia_move::undef;
|
||||||
}
|
}
|
||||||
|
|
||||||
lia_move int_solver::check() {
|
lia_move int_solver::check(lp::explanation * e) {
|
||||||
++m_number_of_calls;
|
++m_number_of_calls;
|
||||||
m_lar_solver->restore_rounded_columns();
|
m_lar_solver->restore_rounded_columns();
|
||||||
SASSERT(m_lar_solver->ax_is_correct());
|
SASSERT(m_lar_solver->ax_is_correct());
|
||||||
|
|
|
@ -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; }
|
void lar_solver::set_status(lp_status s) { m_status = s; }
|
||||||
|
|
||||||
lp_status lar_solver::find_feasible_solution() {
|
lp_status lar_solver::find_feasible_solution() {
|
||||||
m_settings.st().m_make_feasible++;
|
m_settings.stats().m_make_feasible++;
|
||||||
restore_rounded_columns();
|
restore_rounded_columns();
|
||||||
if (A_r().column_count() > m_settings.st().m_max_cols)
|
if (A_r().column_count() > m_settings.stats().m_max_cols)
|
||||||
m_settings.st().m_max_cols = A_r().column_count();
|
m_settings.stats().m_max_cols = A_r().column_count();
|
||||||
if (A_r().row_count() > m_settings.st().m_max_rows)
|
if (A_r().row_count() > m_settings.stats().m_max_rows)
|
||||||
m_settings.st().m_max_rows = A_r().row_count();
|
m_settings.stats().m_max_rows = A_r().row_count();
|
||||||
if (strategy_is_undecided())
|
if (strategy_is_undecided())
|
||||||
decide_on_strategy_and_adjust_initial_state();
|
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) {
|
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();
|
constraint_index ci = m_constraints.size();
|
||||||
if (!is_term(j)) { // j is a var
|
if (!is_term(j)) { // j is a var
|
||||||
lp_assert(bound_is_integer_for_integer_column(j, right_side));
|
lp_assert(bound_is_integer_for_integer_column(j, right_side));
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue