Macaulay2 Engine
Loading...
Searching...
No Matches
gb-toric.hpp File Reference

binomialGB_comp — Buchberger GB specialised to binomial / toric ideals. More...

#include "comp-gb.hpp"
#include "matrix.hpp"

Go to the source code of this file.

Classes

struct  binomial
struct  binomial_gb_elem
struct  binomial_s_pair
class  binomial_ring
class  binomial_s_pair_set
struct  binomial_s_pair_set::s_pair_degree_list
struct  binomial_s_pair_set::s_pair_lcm_list
struct  binomial_s_pair_set::s_pair_elem
class  binomialGB
struct  binomialGB::gbmin_elem
struct  binomialGB::monomial_list
class  binomialGB::iterator
class  binomialGB_comp
 Non-functional. More...

Macros

#define GB_FLAG_IS_HOMOGENEOUS   1
#define GB_FLAG_IS_NONDEGENERATE   2
#define GB_FLAG_BIGCELL   4

Typedefs

typedef intmonomial0

Detailed Description

binomialGB_comp — Buchberger GB specialised to binomial / toric ideals.

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

Declares binomialGB_comp along with its purpose-built value types: binomial (a (lead, tail) pair of monomial pointers encoding a binomial m_lead - m_tail) and binomial_gb_elem, the intrusive list node carrying a binomial together with a smaller back-link (non-null iff the current element is not a minimal GB generator, in which case it points at a GB element whose leading monomial divides this one). Specialising to binomials lets the algorithm skip generic-coefficient arithmetic entirely — every operation is monomial manipulation through the helper class binomial_ring.

The dispatcher in comp-gb.cpp selects this path via algorithm == 7. The in-source class doxygen flags the implementation "Non-functional": get_change, get_syzygies, matrix_remainder, matrix_lift, and contains are declared but not planned to be implemented, and text_out is a no-op. Sibling GB specialisations live in gb-default.hpp, gb-sugarless.hpp, gb-homog2.hpp, and gb-walk.hpp. The TODO at the top of the header flags the still-undecided typing of the int * monomial pointers that the binomial struct uses.

See also
comp-gb.hpp
gb-default.hpp

Definition in file gb-toric.hpp.