Implements GBComputation.
Definition at line 1070 of file gb-homog2.cpp.
1071{
1073 {
1074 ERROR(
"expected matrix over the same ring");
1075 return nullptr;
1076 }
1077
1079 {
1080 ERROR(
"expected matrices to have same number of rows");
1081 return nullptr;
1082 }
1085 for (
int i = 0; i < m->
n_cols(); i++)
1086 {
1087 ring_elem denom;
1088 gbvector *f =
originalR->translate_gbvector_from_vec(
_F, (*m)[i], denom);
1089 gbvector *fsyz =
_GR->gbvector_zero();
1090
1092
1093 vec fv =
originalR->translate_gbvector_to_vec_denom(
_F, f, denom);
1094 red.set_column(i, fv);
1095 }
1096 return red.to_matrix();
1097}
void gb_reduce(gbvector *&f, gbvector *&fsyz)
const PolynomialRing * originalR
const_monomial degree_shift() const
const Ring * get_ring() const
const FreeModule * rows() const
const FreeModule * cols() const
References _F, _GR, Matrix::cols(), Matrix::degree_shift(), ERROR, gb_reduce(), Matrix::get_ring(), Matrix, Matrix::n_cols(), Matrix::n_rows(), originalR, Matrix::rows(), MatrixConstructor::set_column(), start_computation(), and MatrixConstructor::to_matrix().