diff --git a/src/opt/opt_solver.cpp b/src/opt/opt_solver.cpp index ee91b06a491..955025fd96c 100644 --- a/src/opt/opt_solver.cpp +++ b/src/opt/opt_solver.cpp @@ -52,7 +52,7 @@ namespace opt { if (m_params.m_case_split_strategy == CS_ACTIVITY_DELAY_NEW) { m_params.m_relevancy_lvl = 0; } - m_params.m_arith_auto_config_simplex = false; + m_params.m_arith_auto_config_simplex = true; m_params.m_threads = 1; // need to interact with the solver that created model so can't have threads // m_params.m_auto_config = false; } @@ -67,7 +67,7 @@ namespace opt { m_dump_benchmarks = p.dump_benchmarks(); m_params.updt_params(_p); m_context.updt_params(_p); - m_params.m_arith_auto_config_simplex = false; + m_params.m_arith_auto_config_simplex = true; } solver* opt_solver::translate(ast_manager& m, params_ref const& p) { diff --git a/src/smt/theory_arith_pp.h b/src/smt/theory_arith_pp.h index b0d43bc00ac..edc640d86aa 100644 --- a/src/smt/theory_arith_pp.h +++ b/src/smt/theory_arith_pp.h @@ -83,9 +83,11 @@ namespace smt { template void theory_arith::display_row(std::ostream & out, row const & r, bool compact) const { - + if (static_cast(r.get_base_var()) >= m_columns.size()) + return; column const & c = m_columns[r.get_base_var()]; - out << "(v" << r.get_base_var() << " r" << c[0].m_row_id << ") : "; + if (c.size() > 0) + out << "(v" << r.get_base_var() << " r" << c[0].m_row_id << ") : "; bool first = true; for (auto const& e : r) { if (!e.is_dead()) {