29#define idDelete(H) id_Delete((H),currRing)
33#define idMaxIdeal(D) id_MaxIdeal(D,currRing)
37#define idPosConstant(I) id_PosConstant(I,currRing)
40#define idIsConstant(I) id_IsConstant(I,currRing)
42#define idSimpleAdd(A,B) id_SimpleAdd(A,B,currRing)
44ideal
id_Copy (ideal h1,
const ring r);
46#define idPrint(id) id_Print(id, currRing, currRing)
47#define idTest(id) id_Test(id, currRing)
52ideal idDBCopy(ideal h1,
const char *
f,
int l,
const ring r);
53#define id_DBCopy(A,r) idDBCopy(A,__FILE__,__LINE__,r)
68inline ideal
idAdd (ideal h1, ideal h2)
84static inline ideal
idMult (ideal h1, ideal h2)
109int binom (
int n,
int r);
149ideal
idQuot (ideal h1,ideal h2,
159poly idMinor(
matrix a,
int ar,
unsigned long which, ideal
R =
NULL);
199poly
id_GCD(poly
f, poly
g,
const ring r);
201ideal
id_Farey(ideal
x, number
N,
const ring r);
205ideal
id_Satstd(
const ideal I, ideal J,
const ring r);
const CanonicalForm CFMap CFMap & N
CanonicalForm divide(const CanonicalForm &ff, const CanonicalForm &f, const CFList &as)
ideal idMinors(matrix a, int ar, ideal R=NULL)
compute all ar-minors of the matrix a the caller of mpRecMin the elements of the result are not in R ...
matrix idCoeffOfKBase(ideal arg, ideal kbase, poly how)
ideal idElimination(ideal h1, poly delVar, intvec *hilb=NULL, GbVariant a=GbDefault)
matrix idDiff(matrix i, int k)
BOOLEAN idTestHomModule(ideal m, ideal Q, intvec *w)
ideal idMinBase(ideal h1, ideal *SB=NULL)
ideal id_Homogenize(ideal I, int var_num, const ring r)
void idDelEquals(ideal id)
ideal idMultSect(resolvente arg, int length, GbVariant a=GbDefault)
ideal id_HomogenizeW(ideal I, int var_num, intvec *w, const ring r)
void idGetNextChoise(int r, int end, BOOLEAN *endch, int *choise)
ideal idElimination2(ideal h1, poly delVar, bigintmat *hilb=NULL, GbVariant a=GbDefault)
static ideal idVec2Ideal(poly vec)
ideal idSaturateGB(ideal I, ideal J, int &ki, BOOLEAN isIdeal=TRUE)
BOOLEAN idIsSubModule(ideal id1, ideal id2)
ideal idSaturate(ideal I, ideal J, int &ki, BOOLEAN isIdeal=TRUE)
poly id_GCD(poly f, poly g, const ring r)
ideal idLift(ideal mod, ideal submod, ideal *rest=NULL, BOOLEAN goodShape=FALSE, BOOLEAN isSB=TRUE, BOOLEAN divide=FALSE, matrix *unit=NULL, GbVariant a=GbDefault)
represents the generators of submod in terms of the generators of mod (Matrix(SM)*U-Matrix(rest)) = M...
BOOLEAN idInsertPoly(ideal h1, poly h2)
insert h2 into h1 (if h2 is not the zero polynomial) return TRUE iff h2 was indeed inserted
ideal id_Copy(ideal h1, const ring r)
copy an ideal
static BOOLEAN idIsZeroDim(ideal i)
BOOLEAN idIs0(ideal h)
returns true if h is the zero ideal
ideal id_TensorModuleMult(const int m, const ideal M, const ring rRing)
BOOLEAN idInsertPolyOnPos(ideal I, poly p, int pos)
insert p into I on position pos
ideal idLiftStd(ideal h1, matrix *m, tHomog h=testHomog, ideal *syz=NULL, GbVariant a=GbDefault, ideal h11=NULL)
static BOOLEAN idHomModule(ideal m, ideal Q, intvec **w)
ideal idMinEmbedding(ideal arg, BOOLEAN inPlace=FALSE, intvec **w=NULL)
BOOLEAN idInsertPolyWithTests(ideal h1, const int validEntries, const poly h2, const bool zeroOk, const bool duplicateOk)
matrix idDiffOp(ideal I, ideal J, BOOLEAN multiply=TRUE)
void idKeepFirstK(ideal ide, const int k)
keeps the first k (>= 1) entries of the given ideal (Note that the kept polynomials may be zero....
ideal idSect(ideal h1, ideal h2, GbVariant a=GbDefault)
ideal idSyzygies(ideal h1, tHomog h, intvec **w, BOOLEAN setSyzComp=TRUE, BOOLEAN setRegularity=FALSE, int *deg=NULL, GbVariant a=GbDefault)
ideal idSaturate_intern(ideal I, ideal J, int &ki, BOOLEAN isIdeal, BOOLEAN isSB)
void idLiftW(ideal P, ideal Q, int n, matrix &T, ideal &R, int *w=NULL)
static BOOLEAN idHomIdeal(ideal id, ideal Q=NULL)
static ideal idMult(ideal h1, ideal h2)
hh := h1 * h2
ideal idAdd(ideal h1, ideal h2)
h1 + h2
GbVariant syGetAlgorithm(char *n, const ring r, const ideal M)
ideal idMinEmbedding_with_map_v(ideal arg, intvec **w, ideal &trans, int *red_comp)
ideal idMinEmbedding_with_map(ideal arg, intvec **w, ideal &trans)
ideal id_Farey(ideal x, number N, const ring r)
int idGetNumberOfChoise(int t, int d, int begin, int end, int *choise)
ideal id_Satstd(const ideal I, ideal J, const ring r)
static ideal idCopyFirstK(const ideal ide, const int k)
ideal idQuot(ideal h1, ideal h2, BOOLEAN h1IsStb=FALSE, BOOLEAN resultIsIdeal=FALSE)
void idInitChoise(int r, int beg, int end, BOOLEAN *endch, int *choise)
ideal idModulo(ideal h1, ideal h2, tHomog h=testHomog, intvec **w=NULL, matrix *T=NULL, GbVariant a=GbDefault)
static intvec * idSort(ideal id, BOOLEAN nolex=TRUE)
ideal idSeries(int n, ideal M, matrix U=NULL, intvec *w=NULL)
ideal id_Sat_principal(const ideal I, ideal J, const ring r)
ideal idFreeModule(int i)
static BOOLEAN length(leftv result, leftv arg)
VAR ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
ideal id_Add(ideal h1, ideal h2, const ring r)
h1 + h2
ideal id_Vec2Ideal(poly vec, const ring R)
intvec * id_Sort(const ideal id, const BOOLEAN nolex, const ring r)
sorts the ideal w.r.t. the actual ringordering uses lex-ordering when nolex = FALSE
BOOLEAN id_HomIdeal(ideal id, ideal Q, const ring r)
ideal id_FreeModule(int i, const ring r)
the free module of rank i
BOOLEAN id_IsZeroDim(ideal I, const ring r)
BOOLEAN id_InsertPolyWithTests(ideal h1, const int validEntries, const poly h2, const bool zeroOk, const bool duplicateOk, const ring r)
insert h2 into h1 depending on the two boolean parameters:
ideal id_Mult(ideal h1, ideal h2, const ring R)
h1 * h2 one h_i must be an ideal (with at least one column) the other h_i may be a module (with no co...
ideal id_CopyFirstK(const ideal ide, const int k, const ring r)
copies the first k (>= 1) entries of the given ideal/module and returns these as a new ideal/module (...
BOOLEAN id_HomModule(ideal m, ideal Q, intvec **w, const ring R)