256 int SlantedDegreeLimit,
263 int SlantedDegreeLimit,
282 int calc(
const int *DegreeLimit,
Engine-side free module R^n over a Ring.
Engine-side commutative monomial monoid: variable names, ordering, multidegree machinery,...
Engine-side monomial ideal: a decision tree of Nmi_nodes storing the (typically minimal) generators b...
Abstract base for the engine's polynomial-ring hierarchy.
void resize(const Ring *new_ring)
res2_comp * cast_to_res2_comp()
res2_pair * reduce(res2term *&f, res2term *&fsyz, res2term *&pivot, res2_pair *p)
int compare_res2_pairs(res2_pair *f, res2_pair *g) const
unsigned char do_by_degree
VECTOR(res2_pair *) base_components
void remove_res2_pair(res2_pair *p)
void remove_res2_level(res2_level *lev)
res2_pair * new_res2_pair(int i)
FreeModule * free_of(int i) const
const Ring * get_ring() const
int complete_thru_degree() const
void sort_res2_pairs(res2_pair *&p) const
const Matrix * get_matrix(int level)
res2term * s_pair(res2term *fsyz) const
const Ring * getCoefficientRing() const
enum ComputationStatusCode do_pairs_by_degree(int level, int degree)
int calc(const int *DegreeLimit, int LengthLimit, int SyzygyLimit, int PairLimit, int SyzLimitValue, int SyzLimitLevel, int SyzLimitDegree)
void handle_pair_by_level(res2_pair *p)
void new_pairs(res2_pair *p)
int compare_use_descending
res2_pair * reduce_heap_by_level(res2term *&f, res2term *&fsyz)
enum ComputationStatusCode do_pairs_by_level(int level)
res2_pair * reduce4(res2term *&f, res2term *&fsyz, res2term *&pivot, res2_pair *p)
Matrix * make(int i) const
void text_out(const res2_pair *p) const
const Matrix * generator_matrix
res2_pair * new_base_res2_pair(int i)
void increase_level(int newmax)
void insert_pair(res2_pair *p)
void handle_pair(res2_pair *p)
FreeModule * minimal_free_of(int i) const
M2_arrayint get_betti(int type) const
void sort_reduction(res2_pair *&p)
int find_ring_divisor(const int *exp, ring_elem &result) const
void initialize(const Matrix *mat, int LengthLimit, bool UseDegreeLimit, int SlantedDegreeLimit, int SortStrategy)
void display_order(buffer &o, int sortval) const
void sort_skeleton(res2_pair *&p)
res2_pair * reduce3(res2term *&f, res2term *&fsyz, res2term *&pivot, res2_pair *p)
int find_divisor(const MonomialIdeal *mi, const int *exp, res2_pair *&result)
M2_arrayint betti_skeleton() const
int sort_value(res2_pair *p, const std::vector< int > sort_order) const
void do_auto_reductions(res2_pair *p, auto_reduce_node *au)
unsigned char use_respolyHeaps
res2_pair * reduce_by_level(res2term *&f, res2term *&fsyz)
VECTOR(res2_level *) resn
M2_arrayint betti_remaining() const
res2_pair * reduce2(res2term *&f, res2term *&fsyz, res2term *&pivot, res2_pair *p)
void reduce_minimal(int x, res2term *&f, VECTOR(res2_pair *)&elems, VECTOR(res2term *)&stripped) const
res2_comp(const Matrix *m, int LengthLimit, bool UseDegreeLimit, int SlantedDegreeLimit, int SortStrategy)
enum ComputationStatusCode do_pairs(int level, int degree)
void handle_pair_by_degree(res2_pair *p)
const Monoid * getMonoid() const
const FreeModule * get_free(int level)
enum ComputationStatusCode skeleton(int level)
unsigned char do_by_level
void multi_degree(const res2_pair *q, int *result) const
enum ComputationStatusCode do_all_pairs(int level, int degree)
M2_arrayint betti_minimal() const
bool stop_conditions_ok()
M2_arrayint betti_nmonoms() const
res2_pair * merge_res2_pairs(res2_pair *f, res2_pair *g) const
Matrix * make_minimal(int i) const
void sort_monorder(res2_pair *&p)
One of the Resolution computations, based on Schreyer and Lascala.
ResolutionComputation — abstract base for every free-resolution algorithm in the engine.
VALGRIND_MAKE_MEM_DEFINED & result(result)
Matrix — the engine's immutable homomorphism F -> G between free modules.
MonomialIdeal — exponent-vector-only representation of an ideal generated by monomials.
Concrete commutative PolyRing — standard polynomial ring inheriting from PolyRingFlat.
const int COMPARE_MONORDER
const int COMPARE_LEX_EXTENDED
const int SORT_REDUCTIONS
const int COMPUTE_MONOMIAL_RES
const int COMPUTE_SKELETON
const int COMPARE_LEX_EXTENDED2
const int FLAGS_DEGREELEVEL
const int FLAGS_LEVEL_STRIP
const int COMPUTE_MONORDER
Engine-wide stylistic constants: LT / EQ / GT codes, INTSIZE, GEOHEAP_SIZE.