Macaulay2 Engine
Loading...
Searching...
No Matches
EngineMonomial Class Reference

Engine-side immutable monomial value type wrapping a varpower- encoded exponent vector. More...

#include <monomial.hpp>

Inheritance diagram for EngineMonomial:
EngineObject our_new_delete

Public Member Functions

intints ()
const intints () const
EngineMonomialoperator* (const EngineMonomial &b) const
EngineMonomialoperator/ (const EngineMonomial &b) const
EngineMonomialpower (int n) const
void monsyz (const EngineMonomial &b, EngineMonomial *&sa, EngineMonomial *&sb) const
EngineMonomiallcm (const EngineMonomial &b) const
EngineMonomialgcd (const EngineMonomial &b) const
EngineMonomialradical () const
EngineMonomialerase (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 EngineMonomialmake (int v, int e)
static EngineMonomialmake (M2_arrayint m)
static EngineMonomialmake (const int *vp)
static EngineMonomialmake (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< intval

Detailed Description

Engine-side immutable monomial value type wrapping a varpower- encoded exponent vector.

Note
AI-generated documentation. Verify against the source before relying on it.

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.


The documentation for this class was generated from the following files: