Implements GBComputation.
Definition at line 344 of file gauss.cpp.
346{
348 {
349 ERROR(
"encountered different rings");
350 return nullptr;
351 }
353 {
354 ERROR(
"expected matrices to have same number of rows");
355 return nullptr;
356 }
358 for (
int i = 0; i < m->
n_cols(); i++)
359 {
360 vec f =
R->copy_vec(m->
elem(i));
361
363 mat_remainder.set_column(i, f);
364 }
365 return mat_remainder.to_matrix();
366}
void reduce(gm_elem *&p, gm_elem *q)
const_monomial degree_shift() const
const Ring * get_ring() const
ring_elem elem(int i, int j) const
const FreeModule * rows() const
const FreeModule * cols() const
References Matrix::cols(), Matrix::degree_shift(), Matrix::elem(), ERROR, gens, Matrix::get_ring(), Matrix, Matrix::n_cols(), Matrix::n_rows(), R, reduce(), Matrix::rows(), MatrixConstructor::set_column(), and MatrixConstructor::to_matrix().