|
Macaulay2 Engine
|
Engine-side free module R^n over a Ring. More...
#include <freemod.hpp>
Static Public Member Functions | |
| static FreeModule * | make_schreyer (const Matrix *m) |
| static FreeModule * | make_schreyer (const GBMatrix *m) |
| 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 |
| void | initialize (const Ring *RR) |
| virtual FreeModule * | new_free () const |
Protected Attributes | |
| gc_vector< monomial > | components |
| SchreyerOrder * | schreyer |
| const Ring * | R |
Private Member Functions | |
| FreeModule (const Ring *R, int n, bool has_schreyer_order) | |
Friends | |
| class | Ring |
| class | ResF4toM2Interface |
Engine-side free module R^n over a Ring.
Holds the underlying Ring* plus a components vector with the multi-degree of each generator; optionally carries a SchreyerOrder* that pins the per-component tie-breaker data used when the free module participates in a Schreyer resolution. Constructed only through Ring-side factory paths (the constructor is private) so the engine can guarantee the ring / degree pair is consistent before any vectors live in it.
Definition at line 65 of file freemod.hpp.