Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

563516 views
1
#ifdef __cplusplus
2
extern "C" {
3
#endif
4
5
6
#ifndef _LONGTOOLS_H_
7
#define _LONGTOOLS_H_
8
9
#ifndef _CARAT_TYPEDEF_H_
10
#include"typedef.h"
11
#endif
12
13
#ifndef _GMP_H_
14
#include "gmp.h"
15
#endif
16
17
#ifdef __STDC__
18
/*-------------------------------------------------------------*\
19
| FILE: MP_conv_mat.c
20
\*-------------------------------------------------------------*/
21
extern MP_INT **matrix_to_MP_mat(matrix_TYP *M);
22
extern matrix_TYP *MP_mat_to_matrix(MP_INT **M, int rows, int cols);
23
extern void write_MP_mat_to_matrix(matrix_TYP *Mat, MP_INT **mp);
24
extern MP_INT **init_MP_mat(int rows, int cols);
25
extern void free_MP_mat(MP_INT **M, int rows, int cols);
26
27
/*-------------------------------------------------------------*\
28
| FILE: MP_gauss.c
29
\*-------------------------------------------------------------*/
30
extern int MP_trf_gauss(MP_INT **M, MP_INT **Trf, int rows, int cols);
31
extern int MP_row_gauss(MP_INT **M, int rows, int cols);
32
extern int MP_row_gauss_simultaneous(MP_INT **M, int rows, int cols,
33
MP_INT **B, int Bcols);
34
extern void MP_row_gauss_reverse(MP_INT **A,int rows,int cols,int option);
35
36
/*-------------------------------------------------------------*\
37
| FILE: MP_hnf.c
38
\*-------------------------------------------------------------*/
39
extern int MP_trf_hnf(MP_INT **M, MP_INT **Trf, int rows, int cols);
40
extern int MP_hnf(MP_INT **M, int rows, int cols);
41
extern int MP_hnf_simultaneous(MP_INT **M, int rows, int cols, MP_INT **B,
42
int Bcols);
43
44
/*-------------------------------------------------------------*\
45
| FILE: MP_pair_red.c
46
\*-------------------------------------------------------------*/
47
extern void MP_pair_red(MP_INT **G, MP_INT **T, int n);
48
49
/*-------------------------------------------------------------*\
50
| FILE: MP_red_sort.c
51
\*-------------------------------------------------------------*/
52
extern void MP_reduction_sort(MP_INT **G,MP_INT **T,int n);
53
54
/*-------------------------------------------------------------*\
55
| FILE: MP_solve.c
56
\*-------------------------------------------------------------*/
57
extern MP_INT ***MP_solve_mat(MP_INT **M, int rows, int cols, MP_INT **B,
58
int Bcols, int *X1cols, MP_INT *X0kgv);
59
60
/*-------------------------------------------------------------*\
61
| FILE: long_elt.c
62
\*-------------------------------------------------------------*/
63
extern matrix_TYP *long_elt_mat(matrix_TYP *left_trans,
64
matrix_TYP *Mat,
65
matrix_TYP *right_trans);
66
67
/*-------------------------------------------------------------------*\
68
| FILE: long_gauss.c
69
\*-------------------------------------------------------------------*/
70
extern int long_row_gauss(matrix_TYP *Mat);
71
extern int long_row_basis(matrix_TYP *Mat,int flag);
72
extern int long_row_trf_gauss(matrix_TYP *M, matrix_TYP *T);
73
extern int long_row_gauss_simultaneous(matrix_TYP *A, matrix_TYP *B);
74
75
/*-------------------------------------------------------------------*\
76
| FILE: long_hnf.c
77
\*-------------------------------------------------------------------*/
78
extern int long_row_hnf(matrix_TYP *Mat);
79
extern int long_col_hnf(matrix_TYP *Mat);
80
extern int long_row_trf_hnf(matrix_TYP *M, matrix_TYP *T);
81
extern int long_row_hnf_simultaneous(matrix_TYP *A, matrix_TYP *B);
82
83
/*-------------------------------------------------------------*\
84
| FILE: long_kernel_mat.c
85
\*-------------------------------------------------------------*/
86
extern matrix_TYP *long_kernel_mat(matrix_TYP *A);
87
88
/*-------------------------------------------------------------*\
89
| FILE: long_mat_inv.c
90
\*-------------------------------------------------------------*/
91
extern matrix_TYP *long_mat_inv(matrix_TYP *A);
92
93
/*-------------------------------------------------------------*\
94
| FILE: long_qbase.c
95
\*-------------------------------------------------------------*/
96
extern matrix_TYP *long_qbase();
97
98
/*-------------------------------------------------------------*\
99
| FILE: long_rein_mat.c
100
\*-------------------------------------------------------------*/
101
extern matrix_TYP *long_rein_mat(matrix_TYP *M);
102
extern int long_rein_formspace(matrix_TYP **forms,int number,int option);
103
104
/*-------------------------------------------------------------*\
105
| FILE: long_solve_mat.c
106
\*-------------------------------------------------------------*/
107
extern matrix_TYP **long_solve_mat(matrix_TYP *A, matrix_TYP *B);
108
109
#else
110
/*-------------------------------------------------------------*\
111
| FILE: MP_conv_mat.c
112
\*-------------------------------------------------------------*/
113
extern MP_INT **matrix_to_MP_mat();
114
extern matrix_TYP *MP_mat_to_matrix();
115
extern void write_MP_mat_to_matrix();
116
extern MP_INT **init_MP_mat();
117
extern void free_MP_mat();
118
119
/*-------------------------------------------------------------*\
120
| FILE: MP_gauss.c
121
\*-------------------------------------------------------------*/
122
extern int MP_trf_gauss();
123
extern int MP_row_gauss();
124
extern int MP_row_gauss_simultaneous();
125
extern void MP_row_gauss_reverse();
126
127
/*-------------------------------------------------------------*\
128
| FILE: MP_hnf.c
129
\*-------------------------------------------------------------*/
130
extern int MP_trf_hnf();
131
extern int MP_hnf();
132
extern int MP_hnf_simultaneous();
133
134
/*-------------------------------------------------------------*\
135
| FILE: MP_pair_red.c
136
\*-------------------------------------------------------------*/
137
extern void MP_pair_red();
138
139
/*-------------------------------------------------------------*\
140
| FILE: MP_red_sort.c
141
\*-------------------------------------------------------------*/
142
extern void MP_reduction_sort();
143
144
/*-------------------------------------------------------------*\
145
| FILE: MP_solve.c
146
\*-------------------------------------------------------------*/
147
extern MP_INT ***MP_solve_mat();
148
149
/*-------------------------------------------------------------*\
150
| FILE: long_elt.c
151
\*-------------------------------------------------------------*/
152
extern matrix_TYP *long_elt_mat();
153
154
/*-------------------------------------------------------------------*\
155
| FILE: long_gauss.c
156
\*-------------------------------------------------------------------*/
157
extern int long_row_gauss();
158
extern int long_row_basis();
159
extern int long_row_trf_gauss();
160
extern int long_row_gauss_simultaneous();
161
162
/*-------------------------------------------------------------------*\
163
| FILE: long_hnf.c
164
\*-------------------------------------------------------------------*/
165
extern int long_row_hnf();
166
extern int long_row_trf_hnf();
167
extern int long_row_hnf_simultaneous();
168
169
/*-------------------------------------------------------------*\
170
| FILE: long_kernel_mat.c
171
\*-------------------------------------------------------------*/
172
extern matrix_TYP *long_kernel_mat();
173
174
/*-------------------------------------------------------------*\
175
| FILE: long_mat_inv.c
176
\*-------------------------------------------------------------*/
177
extern matrix_TYP *long_mat_inv();
178
179
/*-------------------------------------------------------------*\
180
| FILE: long_qbase.c
181
\*-------------------------------------------------------------*/
182
extern matrix_TYP *long_qbase(matrix_TYP *Mat);
183
184
/*-------------------------------------------------------------*\
185
| FILE: long_rein_mat.c
186
\*-------------------------------------------------------------*/
187
extern matrix_TYP *long_rein_mat();
188
extern int long_rein_formspace();
189
190
/*-------------------------------------------------------------*\
191
| FILE: long_solve_mat.c
192
\*-------------------------------------------------------------*/
193
extern matrix_TYP **long_solve_mat();
194
195
#endif
196
#endif
197
198
199
#ifdef __cplusplus
200
}
201
#endif
202
203
204