My Project
Toggle main menu visibility
Loading...
Searching...
No Matches
kernel
GBEngine
janet.h
Go to the documentation of this file.
1
#ifndef __JANET_INTERFACE__
2
#define __JANET_INTERFACE__
3
4
#include "
kernel/structs.h
"
5
6
#define GCM(sz) omAlloc((sz))
7
#define GCMA(sz) omAlloc((sz))
8
#define GCF(x) omFree((x))
9
10
#define ListNode struct LISTNODE
11
#define TreeM struct TREEM
12
#define NodeM struct NODEM
13
14
typedef
struct
15
{
16
poly
root
;
//poly for parent, NULL for prol
17
kBucket_pt
root_b
;
18
int
root_l
;
19
poly
history
;
//parent
20
poly
lead
;
//leading monomial for prolongation
21
char
*
mult
;
//[multi].[prol]
22
int
changed
;
23
int
prolonged
;
//number of prolonged variable for prolongation, otherwise = -1;
24
}
Poly
;
25
26
typedef
void (*
poly_function
)(
Poly
*);
27
28
ListNode
29
{
30
Poly
*
info
;
31
ListNode
*
next
;
32
};
33
34
typedef
struct
35
{
36
ListNode
*
root
;
37
}
jList
;
38
39
NodeM
40
{
41
NodeM
*left,*right;
42
Poly
*
ended
;
43
};
44
45
TreeM
46
{
47
NodeM
*root;
48
};
49
50
typedef
ListNode
*
LCI
;
51
typedef
ListNode
**
LI
;
52
53
//-------FUNCS----------
54
Poly
*
FindMinList
(
jList
*);
55
void
DestroyTree
(
NodeM
*);
56
NodeM
*
create
();
57
//void ForEach(TreeM *,poly_function);
58
void
ControlProlong
(
Poly
*);
59
Poly
*
is_div_
(
TreeM
*root, poly item);
60
void
insert_
(
TreeM
**tree,
Poly
*item);
61
Poly
*
NewPoly
(poly
p
=
NULL
);
62
void
DestroyPoly
();
63
64
void
NFL
(
Poly
*,
TreeM
*);
65
void
PNF
(
Poly
*,
TreeM
*);
66
void
ClearProl
(
Poly
*
x
,
int
i
);
67
void
InitProl
(
Poly
*
p
);
68
void
InitHistory
(
Poly
*
p
);
69
Poly
*
is_present
(
jList
*,poly);
70
int
GetMult
(
Poly
*,
int
);
71
int
GB_length
();
72
73
void
InsertInList
(
jList
*,
Poly
*);
74
void
ForEachPNF
(
jList
*,
int
);
75
void
ClearMult
(
Poly
*,
int
);
76
void
ProlVar
(
Poly
*,
int
);
77
void
SetMult
(
Poly
*,
int
);
78
void
InitLead
(
Poly
*);
79
void
InsertInCount
(
jList
*,
Poly
*);
80
int
GetProl
(
Poly
*,
int
);
81
void
SetProl
(
Poly
*,
int
);
82
int
ProlCompare
(
Poly
*,
Poly
*);
83
int
ValidatePoly
(
Poly
*,
TreeM
*);
84
int
ListGreatMoveDegree
(
jList
*,
jList
*,poly);
85
int
ListGreatMoveOrder
(
jList
*,
jList
*,poly);
86
void
ForEachControlProlong
(
jList
*);
87
void
NFListQ
();
88
int
CountList
(
jList
*);
89
void
DestroyList
(
jList
*);
90
91
int
ReducePoly
(
Poly
*
x
,
Poly
*
y
);
92
int
ReducePolyLead
(
Poly
*
x
,
Poly
*
y
);
93
void
Define
(
TreeM
**
G
);
94
ListNode
*
CreateListNode
(
Poly
*
x
);
95
void
DestroyListNode
(
ListNode
*
x
);
96
void
DestroyFreeNodes
();
97
98
int
ComputeBasis
(
jList
*,
jList
*);
99
void
Initialization
(
char
*);
100
101
#endif
//JANET_INTERFACE
i
int i
Definition
cfEzgcd.cc:132
x
Variable x
Definition
cfModGcd.cc:4090
p
int p
Definition
cfModGcd.cc:4086
y
const CanonicalForm int const CFList const Variable & y
Definition
facAbsFact.cc:53
G
STATIC_VAR TreeM * G
Definition
janet.cc:31
create
NodeM * create()
Definition
janet.cc:757
NewPoly
Poly * NewPoly(poly p=NULL)
Definition
janet.cc:361
SetMult
void SetMult(Poly *, int)
Definition
janet.cc:426
InitHistory
void InitHistory(Poly *p)
Definition
janet.cc:402
DestroyList
void DestroyList(jList *)
Definition
janet.cc:714
CreateListNode
ListNode * CreateListNode(Poly *x)
Definition
janet.cc:508
ProlCompare
int ProlCompare(Poly *, Poly *)
Definition
janet.cc:463
ReducePolyLead
int ReducePolyLead(Poly *x, Poly *y)
Definition
janet.cc:74
ForEachPNF
void ForEachPNF(jList *, int)
Definition
janet.cc:692
is_div_
Poly * is_div_(TreeM *root, poly item)
Definition
janet.cc:853
ended
Poly * ended
Definition
janet.h:42
ListNode
#define ListNode
Definition
janet.h:10
NodeM
#define NodeM
Definition
janet.h:12
TreeM
#define TreeM
Definition
janet.h:11
SetProl
void SetProl(Poly *, int)
Definition
janet.cc:441
ValidatePoly
int ValidatePoly(Poly *, TreeM *)
Definition
janet.cc:299
jList::root
ListNode * root
Definition
janet.h:36
InsertInCount
void InsertInCount(jList *, Poly *)
Definition
janet.cc:571
ProlVar
void ProlVar(Poly *, int)
Definition
janet.cc:480
InitProl
void InitProl(Poly *p)
Definition
janet.cc:416
DestroyListNode
void DestroyListNode(ListNode *x)
Definition
janet.cc:502
DestroyFreeNodes
void DestroyFreeNodes()
Definition
janet.cc:776
is_present
Poly * is_present(jList *, poly)
Definition
janet.cc:729
ListGreatMoveOrder
int ListGreatMoveOrder(jList *, jList *, poly)
Definition
janet.cc:582
LI
ListNode ** LI
Definition
janet.h:51
LCI
ListNode * LCI
Definition
janet.h:50
FindMinList
Poly * FindMinList(jList *)
Definition
janet.cc:517
ControlProlong
void ControlProlong(Poly *)
Definition
janet.cc:392
ClearProl
void ClearProl(Poly *x, int i)
Definition
janet.cc:446
Define
void Define(TreeM **G)
Definition
janet.cc:815
ClearMult
void ClearMult(Poly *, int)
Definition
janet.cc:431
GetProl
int GetProl(Poly *, int)
Definition
janet.cc:436
Initialization
void Initialization(char *)
Definition
janet.cc:952
ListGreatMoveDegree
int ListGreatMoveDegree(jList *, jList *, poly)
Definition
janet.cc:599
ReducePoly
int ReducePoly(Poly *x, Poly *y)
poly_function
void(* poly_function)(Poly *)
Definition
janet.h:26
GetMult
int GetMult(Poly *, int)
Definition
janet.cc:421
next
ListNode * next
Definition
janet.h:31
ComputeBasis
int ComputeBasis(jList *, jList *)
Definition
janet.cc:1000
InitLead
void InitLead(Poly *)
Definition
janet.cc:409
GB_length
int GB_length()
Definition
janet.cc:740
NFListQ
void NFListQ()
Definition
janet.cc:631
DestroyTree
void DestroyTree(NodeM *)
Definition
janet.cc:804
CountList
int CountList(jList *)
Definition
janet.cc:617
ForEachControlProlong
void ForEachControlProlong(jList *)
Definition
janet.cc:703
InsertInList
void InsertInList(jList *, Poly *)
Definition
janet.cc:552
NFL
void NFL(Poly *, TreeM *)
Definition
janet.cc:187
PNF
void PNF(Poly *, TreeM *)
Definition
janet.cc:143
DestroyPoly
void DestroyPoly()
insert_
void insert_(TreeM **tree, Poly *item)
Definition
janet.cc:912
jList
Definition
janet.h:35
info
#define info
Definition
libparse.cc:1256
NULL
#define NULL
Definition
omList.c:12
kBucket_pt
kBucket * kBucket_pt
Definition
ring.h:26
Poly
Definition
janet.h:15
Poly::mult
char * mult
Definition
janet.h:21
Poly::history
poly history
Definition
janet.h:19
Poly::root_b
kBucket_pt root_b
Definition
janet.h:17
Poly::root_l
int root_l
Definition
janet.h:18
Poly::lead
poly lead
Definition
janet.h:20
Poly::changed
int changed
Definition
janet.h:22
Poly::root
poly root
Definition
janet.h:16
Poly::prolonged
int prolonged
Definition
janet.h:23
structs.h
Generated on
for My Project by
doxygen 1.17.0
for
Singular