|
Macaulay2 Engine
|
Engine-side immutable monomial value type wrapping a varpower- encoded exponent vector. More...
#include <monomial.hpp>
Public Member Functions | |
| int * | ints () |
| const int * | ints () const |
| EngineMonomial * | operator* (const EngineMonomial &b) const |
| EngineMonomial * | operator/ (const EngineMonomial &b) const |
| EngineMonomial * | power (int n) const |
| void | monsyz (const EngineMonomial &b, EngineMonomial *&sa, EngineMonomial *&sb) const |
| EngineMonomial * | lcm (const EngineMonomial &b) const |
| EngineMonomial * | gcd (const EngineMonomial &b) const |
| EngineMonomial * | radical () const |
| EngineMonomial * | erase (const EngineMonomial &b) const |
| bool | is_one () const |
| bool | is_equal (const EngineMonomial &b) const |
| bool | divides (const Monoid *M, const EngineMonomial &b) const |
| int | compare (const Monoid *M, const EngineMonomial &b) const |
| int | simple_degree () const |
| void | text_out (buffer &o) const |
| M2_arrayint | to_arrayint () const |
| Public Member Functions inherited from EngineObject | |
| EngineObject () | |
| virtual | ~EngineObject () |
| unsigned int | hash () const |
Static Public Member Functions | |
| static EngineMonomial * | make (int v, int e) |
| static EngineMonomial * | make (M2_arrayint m) |
| static EngineMonomial * | make (const int *vp) |
| static EngineMonomial * | make (const std::vector< int > &vp) |
| Static Public Member Functions inherited from our_new_delete | |
| static void * | operator new (size_t size) |
| static void * | operator new[] (size_t size) |
| static void | operator delete (void *obj) |
| static void | operator delete[] (void *obj) |
| static void * | operator new (size_t size, void *existing_memory) |
| static void * | operator new[] (size_t size, void *existing_memory) |
| static void | operator delete (void *obj, void *existing_memory) |
| static void | operator delete[] (void *obj, void *existing_memory) |
Protected Member Functions | |
| virtual unsigned int | computeHashValue () const |
Private Member Functions | |
| EngineMonomial () | |
| EngineMonomial (int v, int e) | |
| EngineMonomial (const int *vp) | |
| EngineMonomial (M2_arrayint a) | |
| EngineMonomial (const std::vector< int > &vp) | |
Private Attributes | |
| gc_vector< int > | val |
Engine-side immutable monomial value type wrapping a varpower- encoded exponent vector.
Storage is [2n+1, v_1, e_1, ..., v_n, e_n] (per ExponentList.hpp): leading length, then alternating variable indices and exponents. Inherits from EngineObject so the monomial can carry a stable content-based hash once exposed to the front end. The TODO at the top of the file notes a planned template-based unification with the lower-level varpower routines.
Definition at line 60 of file monomial.hpp.