hutil.h
Go to the documentation of this file.
1 #ifndef HUTIL_H
2 #define HUTIL_H
3 /****************************************
4 * Computer Algebra System SINGULAR *
5 ****************************************/
6 /*
7 * ABSTRACT
8 */
9 
10 class intvec;
11 
12 struct ip_sring ; typedef struct ip_sring * ring;
13 struct sip_sideal; typedef struct sip_sideal * ideal;
14 struct spolyrec ; typedef struct spolyrec polyrec; typedef polyrec * poly;
15 typedef poly * polyset;
16 
17 extern ring currRing;
18 
19 typedef int * scmon;
20 typedef scmon * scfmon;
21 typedef int * varset;
22 struct monrec;
23 typedef struct monrec monh;
24 typedef monh * monp;
25 typedef monp * monf;
26 struct monrec
27 {
29  int a;
30 };
31 
32 typedef struct sindlist indlist;
33 typedef indlist * indset;
34 struct sindlist
35 {
37  intvec * set;
38 };
39 
40 #define LEN_MON (sizeof(scfmon) + sizeof(int))
41 
42 extern omBin indlist_bin;
43 
44 extern scfmon hexist, hstc, hrad, hwork;
45 extern scmon hpure, hpur0;
46 extern varset hvar, hsel;
47 extern int hNexist, hNstc, hNrad, hNvar, hNpure;
48 extern monf stcmem, radmem;
49 extern int hisModule;
50 extern monf stcmem, radmem;
51 extern indset ISet, JSet;
52 extern int hCo, hMu, hMu2;
53 
54 
55 void hDelete(scfmon ev, int ev_length);
56 void hComp(scfmon exist, int Nexist, int ak, scfmon stc, int * Nstc);
57 void hSupp(scfmon stc, int Nstc, varset var, int * Nvar);
58 void hOrdSupp(scfmon stc, int Nstc, varset var, int Nvar);
59 void hStaircase(scfmon stc, int * Nstc, varset var, int Nvar);
60 void hRadical(scfmon rad, int * Nrad, int Nvar);
61 void hLexS(scfmon stc, int Nstc, varset var, int Nvar);
62 void hLexR(scfmon rad, int Nrad, varset var, int Nvar);
63 void hPure(scfmon stc, int a, int *Nstc, varset var, int Nvar,
64  scmon pure, int *Npure);
65 void hElimS(scfmon stc, int * e1, int a2, int e2,varset var, int Nvar);
66 void hElimR(scfmon rad, int * e1, int a2, int e2,varset var, int Nvar);
67 void hLex2S(scfmon stc, int e1, int a2, int e2,varset var,
68  int Nvar, scfmon w);
69 void hLex2R(scfmon rad, int e1, int a2, int e2,varset var,
70  int Nvar, scfmon w);
71 void hStepS(scfmon stc, int Nstc, varset var, int Nvar,int *a, int *x);
72 void hStepR(scfmon rad, int Nrad, varset var, int Nvar,int *a);
73 monf hCreate(int Nvar);
74 void hKill(monf xmem, int Nvar);
75 scfmon hGetmem(int lm, scfmon old, monp monmem);
77 void hDimSolve(scmon pure, int Npure, scfmon rad, int Nrad,
78  varset var, int Nvar);
79 void hIndMult(scmon pure, int Npure, scfmon rad, int Nrad,
80  varset var, int Nvar);
81 void hIndAllMult(scmon pure, int Npure, scfmon rad, int Nrad,
82  varset var, int Nvar);
83 void hDegreeSeries(intvec *s1, intvec *s2, int *co, int *mu);
84 
85 
86 scfmon hInit(ideal S, ideal Q, int * Nexist, ring tailRing);
87 void slicehilb(ideal I);
88 #endif
void hDelete(scfmon ev, int ev_length)
Definition: hutil.cc:146
void hKill(monf xmem, int Nvar)
Definition: hutil.cc:1016
void hDegreeSeries(intvec *s1, intvec *s2, int *co, int *mu)
Definition: hilb.cc:1341
omBin_t * omBin
Definition: omStructs.h:12
void mu(int **points, int sizePoints)
int * varset
Definition: hutil.h:21
void hIndAllMult(scmon pure, int Npure, scfmon rad, int Nrad, varset var, int Nvar)
Definition: hdegree.cc:496
return P p
Definition: myNF.cc:203
scmon * scfmon
Definition: hutil.h:20
scfmon hInit(ideal S, ideal Q, int *Nexist, ring tailRing)
Definition: hutil.cc:34
BEGIN_NAMESPACE_SINGULARXX const ring const ring tailRing
Definition: DebugPrint.h:30
void hLexS(scfmon stc, int Nstc, varset var, int Nvar)
Definition: hutil.cc:512
scfmon mo
Definition: hutil.h:28
omBin indlist_bin
Definition: hdegree.cc:23
Definition: ring.h:209
void hComp(scfmon exist, int Nexist, int ak, scfmon stc, int *Nstc)
Definition: hutil.cc:160
#define Q
Definition: sirandom.c:25
monp * monf
Definition: hutil.h:25
indset ISet
Definition: hdegree.cc:279
ring currRing
Widely used global variable which specifies the current polynomial ring for Singular interpreter and ...
Definition: polys.cc:12
int hCo
Definition: hdegree.cc:22
int hNrad
Definition: hutil.cc:22
void hRadical(scfmon rad, int *Nrad, int Nvar)
Definition: hutil.cc:417
int hNvar
Definition: hutil.cc:22
indset nx
Definition: hutil.h:36
void hElimR(scfmon rad, int *e1, int a2, int e2, varset var, int Nvar)
Definition: hutil.cc:748
int hNpure
Definition: hutil.cc:22
indset JSet
Definition: hdegree.cc:279
void hStepS(scfmon stc, int Nstc, varset var, int Nvar, int *a, int *x)
Definition: hutil.cc:955
scfmon hexist
Definition: hutil.cc:19
Definition: intvec.h:14
int hMu2
Definition: hdegree.cc:22
int hisModule
Definition: hutil.cc:23
scmon hGetpure(scmon p)
Definition: hutil.cc:1058
void hLex2R(scfmon rad, int e1, int a2, int e2, varset var, int Nvar, scfmon w)
Definition: hutil.cc:886
scfmon hwork
Definition: hutil.cc:19
void hPure(scfmon stc, int a, int *Nstc, varset var, int Nvar, scmon pure, int *Npure)
Definition: hutil.cc:627
scfmon hrad
Definition: hutil.cc:19
indlist * indset
Definition: hutil.h:33
monh * monp
Definition: hutil.h:24
int * scmon
Definition: hutil.h:19
int a
Definition: hutil.h:29
void hLexR(scfmon rad, int Nrad, varset var, int Nvar)
Definition: hutil.cc:571
scmon hpur0
Definition: hutil.cc:20
monf hCreate(int Nvar)
Definition: hutil.cc:1002
void hIndMult(scmon pure, int Npure, scfmon rad, int Nrad, varset var, int Nvar)
Definition: hdegree.cc:313
scmon hpure
Definition: hutil.cc:20
Definition: hutil.h:34
int hNstc
Definition: hutil.cc:22
monf stcmem
Definition: hutil.h:50
The following sip_sideal structure has many different uses thoughout Singular. Basic use-cases for it...
Definition: simpleideals.h:18
poly * polyset
Definition: hutil.h:15
int hMu
Definition: hdegree.cc:22
void hSupp(scfmon stc, int Nstc, varset var, int *Nvar)
Definition: hutil.cc:180
void hStaircase(scfmon stc, int *Nstc, varset var, int Nvar)
Definition: hutil.cc:319
const CanonicalForm & w
Definition: facAbsFact.cc:55
strat ak
Definition: myNF.cc:321
Variable x
Definition: cfModGcd.cc:4023
varset hsel
Definition: hutil.cc:21
void slicehilb(ideal I)
Definition: hilb.cc:1095
scfmon hstc
Definition: hutil.cc:19
monf radmem
Definition: hutil.h:50
void hStepR(scfmon rad, int Nrad, varset var, int Nvar, int *a)
Definition: hutil.cc:980
polyrec * poly
Definition: hutil.h:14
void hDimSolve(scmon pure, int Npure, scfmon rad, int Nrad, varset var, int Nvar)
Definition: hdegree.cc:29
polyrec * poly
Definition: hilb.h:10
Definition: hutil.h:26
void hElimS(scfmon stc, int *e1, int a2, int e2, varset var, int Nvar)
Definition: hutil.cc:678
scfmon hGetmem(int lm, scfmon old, monp monmem)
Definition: hutil.cc:1029
void hLex2S(scfmon stc, int e1, int a2, int e2, varset var, int Nvar, scfmon w)
Definition: hutil.cc:818
void hOrdSupp(scfmon stc, int Nstc, varset var, int Nvar)
Definition: hutil.cc:208
varset hvar
Definition: hutil.cc:21
int hNexist
Definition: hutil.cc:22