Definition at line 389 of file matrix.cpp.
390{
393 {
394 ERROR(
"matrices have different base rings");
395 return nullptr;
396 }
398 {
399 ERROR(
"matrices have different shapes");
400 return nullptr;
401 }
402
406
408
410
411 auto D = R->degree_monoid();
414 else
415 deg = D->make_one();
416
418 for (
int i = 0; i <
n_cols(); i++)
419 {
420 vec v = R->copy_vec(
elem(i));
421 vec w = R->copy_vec(m[i]);
422 R->add_vec_to(v, w);
423 mat.set_column(i, v);
424 }
425 return mat.to_matrix();
426}
const_monomial degree_shift() const
const Ring * get_ring() const
ring_elem elem(int i, int j) const
friend class MatrixConstructor
const FreeModule * rows() const
const FreeModule * cols() const
bool is_equal(const Matrix &m) const
const int * const_monomial
size_t rank(const DMatZZpFFPACK &A)
References cols(), degree_shift(), elem(), EQ, ERROR, FreeModule, G, get_ring(), is_equal(), Matrix(), MatrixConstructor, n_cols(), n_rows(), operator+(), FreeModule::rank(), rows(), MatrixConstructor::set_column(), and MatrixConstructor::to_matrix().
Referenced by operator+().