1 #ifndef CALLGFANLIB_GROEBNERCONE_H 2 #define CALLGFANLIB_GROEBNERCONE_H 10 #include <gfanlib/gfanlib.h> 25 typedef std::set<groebnerCone,groebnerCone_compare>
groebnerCones;
56 assume ((!polynomialIdeal) || (polynomialIdeal && polynomialRing));
57 if (polynomialIdeal)
id_Delete(&polynomialIdeal,polynomialRing);
58 if (polynomialRing)
rDelete(polynomialRing);
59 polynomialIdeal =
NULL;
60 polynomialRing =
NULL;
72 bool b = (polynomialRing==
NULL);
79 bool contains(
const gfan::ZVector &
w)
const;
91 groebnerCone flipCone(
const gfan::ZVector &interiorPoint,
const gfan::ZVector &facetNormal)
const;
107 bool checkFlipConeInput(
const gfan::ZVector interiorPoint,
const gfan::ZVector facetNormal)
const;
118 assume (p1.size() == p2.size());
implementation of the class tropicalStrategy
gfan::ZVector getInteriorPoint() const
const tropicalStrategy * currentStrategy
Class used for (list of) interpreter objects.
const tropicalStrategy * getTropicalStrategy() const
groebnerCone flipCone(const gfan::ZVector &interiorPoint, const gfan::ZVector &facetNormal) const
Given an interior point on the facet and the outer normal factor on the facet, returns the adjacent g...
BOOLEAN flipConeDebug(leftv res, leftv args)
gfan::ZCone polyhedralCone
Compatiblity layer for legacy polynomial operations (over currRing)
void id_Delete(ideal *h, ring r)
deletes an ideal/module/matrix
gfan::ZCone getPolyhedralCone() const
groebnerCones tropicalNeighbours() const
Returns a complete list of neighboring Groebner cones in the tropical variety.
BOOLEAN tropicalNeighboursDebug(leftv res, leftv args)
bool checkFlipConeInput(const gfan::ZVector interiorPoint, const gfan::ZVector facetNormal) const
Debug tools.
std::set< groebnerCone, groebnerCone_compare > groebnerCones
void deletePolynomialData()
ideal polynomialIdeal
ideal to which this Groebner cone belongs to
groebnerCones groebnerNeighbours() const
Returns a complete list of neighboring Groebner cones.
ideal getPolynomialIdeal() const
ring polynomialRing
ring in which the ideal exists
bool pointsOutwards(const gfan::ZVector) const
BOOLEAN groebnerNeighboursDebug(leftv res, leftv args)
gfan::ZVector interiorPoint
bool operator()(const groebnerCone &sigma, const groebnerCone &theta) const
bool contains(const gfan::ZVector &w) const
Returns true if Groebner cone contains w, false otherwise.
void rDelete(ring r)
unconditionally deletes fields in r
ring getPolynomialRing() const
gfan::ZFan * toFanStar(groebnerCones setOfCones)
groebnerCone & operator=(const groebnerCone &sigma)
gfan::ZVector tropicalPoint() const
Returns a point in the tropical variety, if the groebnerCone contains one.