25 ERROR(
"expected polynomial ring");
Append-only GC-backed byte buffer used throughout the engine for text output.
void to_expvector(const_monomial m, exponents_t result_exp) const
void text_out(buffer &o) const
static Monoid * create(const MonomialOrdering *mo, const PolynomialRing *DR, const std::vector< std::string > &names, const std::vector< int > °s, const std::vector< int > &hefts)
static Monoid * get_trivial_monoid()
Engine-side commutative monomial monoid: variable names, ordering, multidegree machinery,...
unsigned int hash() const
virtual const PolynomialRing * cast_to_PolynomialRing() const
Engine error-reporting primitives: ERROR, INTERNAL_ERROR, error, error_message.
const int * const_monomial
M2_arrayint to_degree_vector(const Monoid *M, const_monomial d)
int rawMonoidNumberOfBlocks(const Monoid *M)
const Monoid * rawMonoid(const MonomialOrdering *mo, const Ring *deg_ring, M2_ArrayString names, M2_arrayint degs, M2_arrayint hefts)
unsigned int rawMonoidHash(const Monoid *M)
const Monoid * rawTrivialMonoid()
M2_string rawMonoidToString(const Monoid *M)
VALGRIND_MAKE_MEM_DEFINED & result(result)
M2_arrayint M2_makearrayint(int n)
Engine-boundary C API for constructing and inspecting Monoid objects.
Monoid — variable count, naming, grading, and monomial order of a polynomial ring.
Ring — the legacy abstract base class for every coefficient and polynomial ring.
Front-end-side description of a monomial ordering as a list of mon_part blocks.
void M2_ArrayString_to_stdvector(M2_ArrayString strs, std::vector< std::string > &result)
std::vector< T > M2_arrayint_to_stdvector(M2_arrayint arr)
Conversion helpers between M2 boundary types and standard C++ containers.