--- src/util/lp/column_info.h +++ src/util/lp/column_info.h @@ -47,7 +47,7 @@ public: m_lower_bound_is_strict == c.m_lower_bound_is_strict && m_upper_bound_is_set == c.m_upper_bound_is_set&& m_upper_bound_is_strict == c.m_upper_bound_is_strict&& - (!m_lower_bound_is_set || m_lower_bound == c.m_low_bound) && + (!m_lower_bound_is_set || m_lower_bound == c.m_lower_bound) && (!m_upper_bound_is_set || m_upper_bound == c.m_upper_bound) && m_cost == c.m_cost && m_is_fixed == c.m_is_fixed && --- src/util/lp/lp_core_solver_base.h +++ src/util/lp/lp_core_solver_base.h @@ -600,7 +600,7 @@ public: out << " \n"; } - bool column_is_free(unsigned j) const { return this->m_column_type[j] == free; } + bool column_is_free(unsigned j) const { return this->m_column_types[j] == column_type::free_column; } bool column_has_upper_bound(unsigned j) const { switch(m_column_types[j]) { --- src/util/lp/static_matrix.h +++ src/util/lp/static_matrix.h @@ -83,7 +83,7 @@ public: ref(static_matrix & m, unsigned row, unsigned col):m_matrix(m), m_row(row), m_col(col) {} ref & operator=(T const & v) { m_matrix.set( m_row, m_col, v); return *this; } - ref operator=(ref & v) { m_matrix.set(m_row, m_col, v.m_matrix.get(v.m_row, v.m_col)); return *this; } + ref operator=(ref & v) { m_matrix.set(m_row, m_col, v.m_matrix.get_elem(v.m_row, v.m_col)); return *this; } operator T () const { return m_matrix.get_elem(m_row, m_col); } }; --- src/util/lp/static_matrix_def.h +++ src/util/lp/static_matrix_def.h @@ -86,7 +86,7 @@ static_matrix::static_matrix(static_matrix const &A, unsigned * /* basis * init_row_columns(m, m); while (m--) { for (auto & col : A.m_columns[m]){ - set(col.var(), m, A.get_value_of_column_cell(col)); + set(col.var(), m, A.get_column_cell(col)); } } } --- src/util/lp/tail_matrix.h +++ src/util/lp/tail_matrix.h @@ -39,6 +39,7 @@ public: virtual void apply_from_right(indexed_vector & w) = 0; virtual ~tail_matrix() {} virtual bool is_dense() const = 0; +#ifdef Z3DEBUG struct ref_row { const tail_matrix & m_A; unsigned m_row; @@ -46,5 +47,6 @@ public: T operator[](unsigned j) const { return m_A.get_elem(m_row, j);} }; ref_row operator[](unsigned i) const { return ref_row(*this, i);} +#endif }; }