Macaulay2 Engine
Loading...
Searching...
No Matches

◆ create()

binomialGB_comp * binomialGB_comp::create ( const Matrix * m,
M2_bool collect_syz,
int n_rows_to_keep,
M2_arrayint gb_weights,
int strategy,
M2_bool use_max_degree,
int max_degree )
static

Definition at line 993 of file gb-toric.cpp.

1000{
1001 (void) gb_weights;
1002 (void) use_max_degree_limit;
1003 (void) max_degree_limit;
1004 if (collect_syz || n_rows_to_keep > 0)
1005 {
1006 ERROR("Groebner basis Algorithm=>Toric cannot keep syzygies");
1007 return nullptr;
1008 }
1009 const PolynomialRing *R = m->get_ring()->cast_to_PolynomialRing();
1010 if (R == nullptr)
1011 {
1012 ERROR("expected polynomial ring");
1013 return nullptr;
1014 }
1015 binomialGB_comp *result = new binomialGB_comp(R, nullptr, true, strategy);
1016 result->add_generators(m);
1017 return result;
1018}
const Ring * get_ring() const
Definition matrix.hpp:134
virtual const PolynomialRing * cast_to_PolynomialRing() const
Definition ring.hpp:243
binomial_ring * R
Definition gb-toric.hpp:313
binomialGB_comp(const PolynomialRing *R, int *wts, bool revlex, unsigned int options)
Definition gb-toric.cpp:972
const int ERROR
Definition m2-mem.cpp:55
VALGRIND_MAKE_MEM_DEFINED & result(result)

References binomialGB_comp(), Ring::cast_to_PolynomialRing(), ERROR, Matrix::get_ring(), Matrix, R, and result().

Referenced by GBComputation::choose_gb().