@@ -328,6 +328,7 @@ namespace lp {
328328 public:
329329 imp (int_solver& lia, lar_solver& lra) : lia(lia), lra(lra) {
330330 lra.register_add_term_delegate ([this ](const lar_term*t){add_term_delegate (t);});
331+ lra.register_add_column_bound_delegate ([this ](unsigned j) {add_column_bound_delegate (j);});
331332 }
332333 term_o get_term_from_entry (unsigned i) const {
333334 term_o t;
@@ -395,15 +396,10 @@ namespace lp {
395396 }
396397
397398 void init () {
398- m_e_matrix = static_matrix<mpq, mpq>();
399399 m_report_branch = false ;
400- m_k2s.clear ();
401- m_fresh_definitions.clear ();
402400 m_conflict_index = -1 ;
403401 m_infeas_explanation.clear ();
404402 lia.get_term ().clear ();
405- m_entries.clear ();
406- m_var_register.clear ();
407403 m_number_of_iterations = 0 ;
408404 m_branch_stack.clear ();
409405 m_lra_level = 0 ;
@@ -1071,7 +1067,6 @@ namespace lp {
10711067 if (m_branch_stack.size () == 0 ) {
10721068 lra.stats ().m_dio_branching_infeasibles ++;
10731069 transfer_explanations_from_closed_branches ();
1074- enable_trace (" dioph_eq" );
10751070 return lia_move::conflict;
10761071 }
10771072 TRACE (" dio_br" , tout << lp_status_to_string (lra.get_status ()) << std::endl;
@@ -1393,7 +1388,7 @@ namespace lp {
13931388 m_e_matrix.add_new_element (fresh_row, i, q);
13941389 }
13951390
1396- m_k2s.resize (std::max ( k + 1 , xt + 1 ) , -1 );
1391+ m_k2s.resize (k + 1 , -1 );
13971392 m_k2s[k] = fresh_row;
13981393 m_fresh_definitions.resize (xt + 1 , -1 );
13991394 m_fresh_definitions[xt] = fresh_row;
0 commit comments