--- 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<T, X>::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<T> & 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
 };
 }
