Go to the source code of this file.
|
| intvec * | hFirstSeries (ideal S, intvec *modulweight, ideal Q=NULL, intvec *wdegree=NULL) |
| |
| intvec * | hFirstSeries1 (ideal S, intvec *modulweight, ideal Q=NULL, intvec *wdegree=NULL) |
| |
| intvec * | hFirstSeries0 (ideal S, ideal Q, intvec *wdegree, const ring src, const ring Qt) |
| |
| poly | hFirstSeries0p (ideal A, ideal Q, intvec *wdegree, const ring src, const ring Qt) |
| |
| bigintmat * | hPoly2BIV (poly h, const ring Qt, const coeffs biv_cf) |
| |
| poly | hBIV2Poly (bigintmat *b, const ring Qt, const coeffs biv_cf) |
| |
| bigintmat * | hFirstSeries0b (ideal I, ideal Q, intvec *wdegree, intvec *shifts, const ring src, const coeffs biv_cf) |
| |
| bigintmat * | hSecondSeries0b (ideal I, ideal Q, intvec *wdegree, intvec *shifts, const ring src, const coeffs biv_cf) |
| |
| poly | hFirstSeries0m (ideal A, ideal Q, intvec *wdegree, intvec *shifts, const ring src, const ring Qt) |
| |
| intvec * | hSecondSeries (intvec *hseries1) |
| |
| void | hLookSeries (ideal S, intvec *modulweight, ideal Q=NULL, intvec *wdegree=NULL) |
| |
◆ hBIV2Poly()
Definition at line 2005 of file hilb.cc.
2006{
2009 for(
int d=0;d<
b->rows()-1;d++)
2010 {
2015 }
2017}
#define BIMATELEM(M, I, J)
static FORCE_INLINE nMapFunc n_SetMap(const coeffs src, const coeffs dst)
set the mapping function pointers for translating numbers from src to dst
number(* nMapFunc)(number a, const coeffs src, const coeffs dst)
maps "a", which lives in src, into dst
static poly p_Add_q(poly p, poly q, const ring r)
static unsigned long p_SetExp(poly p, const unsigned long e, const unsigned long iBitmask, const int VarOffset)
set a single variable exponent @Note: VarOffset encodes the position in p->exp
static void p_Setm(poly p, const ring r)
static poly p_New(const ring, omBin bin)
◆ hFirstSeries()
Definition at line 1514 of file hilb.cc.
1515{
1517 #if 0
1518
1523 while(
prod<(1<<15) && (a>1))
1524 {
1528 }
1529 if (a==1)
b=(1<<15);
1530
1534 {
1536 {
1539 {
1542 {
1544 break;
1545 }
1546 }
1547 }
1548 }
1550 {
1556 {
1558 }
1560 }
1561 #endif
1562
1569 {
1572 }
1573 for(
int c=1;c<=
A->rank;c++)
1574 {
1585 {
1588 }
1589 }
1592}
const CanonicalForm int s
static int max(int a, int b)
VAR void(* WerrorS_callback)(const char *s)
static ideal getModuleComp(ideal A, int c, const ring src)
intvec * hFirstSeries0(ideal A, ideal Q, intvec *wdegree, const ring src, const ring Qt)
intvec * hFirstSeries1(ideal S, intvec *modulweight, ideal Q, intvec *wdegree)
intvec * ivAddShift(intvec *a, intvec *b, int s)
intvec * ivAdd(intvec *a, intvec *b)
static void WerrorS_dummy(const char *)
static long p_Totaldegree(poly p, 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)
void id_Delete(ideal *h, ring r)
deletes an ideal/module/matrix
BOOLEAN id_IsModule(ideal A, const ring src)
◆ hFirstSeries0()
Definition at line 1478 of file hilb.cc.
1479{
1484 else
1485 {
1488 {
1493 {
1495 }
1498 }
1499 }
1501}
static FORCE_INLINE long n_Int(number &n, const coeffs r)
conversion of n to an int; 0 if not possible in Z/pZ: the representing int lying in (-p/2 ....
poly hFirstSeries0p(ideal A, ideal Q, intvec *wdegree, const ring src, const ring Qt)
static number & pGetCoeff(poly p)
return an alias to the leading coefficient of p assumes that p != NULL NOTE: not copy
static void p_LmDelete(poly p, const ring r)
void Werror(const char *fmt,...)
◆ hFirstSeries0b()
Definition at line 2019 of file hilb.cc.
2020{
2025 {
2028 }
2029 else
2033 {
2036 }
2039}
static FORCE_INLINE void n_Delete(number *p, const coeffs r)
delete 'p'
static FORCE_INLINE number n_Init(long i, const coeffs r)
a number representing i in the given coeff field/ring r
poly hFirstSeries0m(ideal A, ideal Q, intvec *wdegree, intvec *shifts, const ring src, const ring Qt)
bigintmat * hPoly2BIV(poly h, const ring Qt, const coeffs biv_cf)
static void p_Delete(poly *p, const ring r)
◆ hFirstSeries0m()
Definition at line 1427 of file hilb.cc.
1428{
1431 for(
int i=1;
i<=
rk;
i++)
1432 {
1436 {
1438 {
1441 else
1442 {
1446 }
1447 }
1448 }
1450
1452 {
1455 }
1456 else
1457 {
1459 }
1463 {
1465 int sh=(*shifts)[
i-1]-
m;
1467 {
1470 }
1471 }
1474 }
1476}
static poly p_Mult_q(poly p, poly q, const ring r)
static unsigned long p_SetComp(poly p, unsigned long c, ring r)
ideal id_Head(ideal h, const ring r)
returns the ideals of initial terms
void idSkipZeroes(ideal ide)
gives an ideal/module the minimal possible size
◆ hFirstSeries0p()
Definition at line 1384 of file hilb.cc.
1385{
1390 {
1397 if (c!=0)
1398 {
1401 }
1402 }
1406
1408 #ifdef HAVE_QSORT_R
1409 #if defined(__APPLE__) || defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__CYGWIN__)
1411 #else
1413 #endif
1414 #else
1415 {
1420 }
1421 #endif
1425}
static poly hilbert_series(ideal A, const ring src, const intvec *wdegree, const ring Qt)
static int compare_rp_currRing(const void *pp1, const void *pp2)
int idSkipZeroes0(ideal ide)
void id_Delete0(ideal *h, ring r)
void id_DelDiv(ideal id, const ring r)
delete id[j], if LT(j) == coeff*mon*LT(i) and vice versa, i.e., delete id[i], if LT(i) == coeff*mon*L...
ideal id_SimpleAdd(ideal h1, ideal h2, const ring R)
concat the lists h1 and h2 without zeros
◆ hFirstSeries1()
Definition at line 1974 of file hilb.cc.
1975{
1978
1982}
static intvec * hSeries(ideal S, intvec *modulweight, intvec *wdegree, ideal Q)
◆ hLookSeries()
Definition at line 220 of file hilb.cc.
221{
223
225 {
228
231 }
232 else
233 {
237 {
239 Print(
"module weights:%s\n",
s);
241 }
244 }
245}
static void hPrintHilb(poly hseries, const ring Qt, intvec *modul_weight)
◆ hPoly2BIV()
Definition at line 1984 of file hilb.cc.
1985{
1989 {
1993 }
1996 {
2001 }
2003}
static poly p_Copy(poly p, const ring r)
returns a copy of p
◆ hSecondSeries()
Definition at line 71 of file hilb.cc.
72{
81 for (
i =
k-1;
i >= 0;
i--)
84 {
85 if ((
s != 0) || (
k == 1))
86 break;
90 for (
i =
k-1;
i >= 0;
i--)
91 {
96 }
97 }
99 for (
i =
k-1;
i >= 0;
i--)
101 (*hseries2)[
k] = (*work)[
l];
104}
◆ hSecondSeries0b()
Definition at line 2041 of file hilb.cc.
2042{
2047 else
2055}
poly hFirst2Second(poly h, const ring Qt, int &co)