43 gfan::ZFan* zf =
new gfan::ZFan(gfan::ZFan::fullFan(n));
48 gfan::ZVector lowerHalfSpaceCondition = gfan::ZVector(n);
49 lowerHalfSpaceCondition[0] = -1;
52 int* expv = (
int*)
omAlloc((n+1)*
sizeof(int));
53 gfan::ZMatrix exponents = gfan::ZMatrix(0,n);
63 gfan::ZFan* zf =
new gfan::ZFan(n);
64 int l = exponents.getHeight();
65 for (
int i=0;
i<
l;
i++)
69 if (onlyLowerHalfSpace)
71 for (
int j=0;
j<
l;
j++)
74 inequalities.appendRow(exponents[
i].toVector()-exponents[
j].toVector());
90 ideal I = (ideal) u->
CopyD();
102 res->data = (
char*) zf;
105 catch (
const std::exception& ex)
120 res->data = (
char*) zf;
123 catch (
const std::exception& ex)
133 poly
g = (poly) u->
Data();
141 res->data = (
char*) zf;
144 catch (
const std::exception& ex)
151 WerrorS(
"groebnerFan: unexpected parameters");
BOOLEAN inequalities(leftv res, leftv args)
gfan::ZVector intStar2ZVector(const int d, const int *i)
gfan::ZFan * toFanStar(std::set< gfan::ZCone > setOfCones)
Class used for (list of) interpreter objects.
const CanonicalForm int s
const Variable & v
< [in] a sqrfree bivariate poly
void WerrorS(const char *s)
implementation of the class groebnerCone
std::set< groebnerCone, groebnerCone_compare > groebnerCones
VAR BITSET groebnerBitsetSave2
gfan::ZFan * groebnerFan(const tropicalStrategy currentStrategy)
static void setOptionRedSB()
static void undoSetOptionRedSB()
gfan::ZFan * groebnerFanOfPolynomial(poly g, ring r, bool onlyLowerHalfSpace=false)
VAR BITSET groebnerBitsetSave1
#define omFreeSize(addr, size)
#define SI_SAVE_OPT(A, B)
#define SI_RESTORE_OPT(A, B)
static void p_GetExpV(poly p, int *ev, const ring r)
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
static short rVar(const ring r)
#define rVar(r) (r->N)
static int idElem(const ideal F)
number of non-zero polys in F
groebnerCone groebnerStartingCone(const tropicalStrategy ¤tStrategy)
groebnerCones groebnerTraversal(const groebnerCone startingCone)