1use libc::*;
4use crate::deps::*;
5use crate::flint::*;
6use crate::gr_types::*;
7
8
9pub const GR_TMP_VEC_ALLOC_MAX_STACK: u32 = 1024;
10pub const GR_FRACTION_NO_REDUCTION: u32 = 1;
11pub const GR_FRACTION_STRONGLY_CANONICAL: u32 = 2;
12pub const GR_DEBUG_WRAP: u32 = 1;
13pub const GR_DEBUG_VERBOSE: u32 = 2;
14pub const GR_DEBUG_CHECK_ALWAYS_ABLE: u32 = 4;
15pub const GR_DEBUG_TIMING: u32 = 8;
16pub const GR_TEST_VERBOSE: u32 = 8;
17pub const GR_TEST_ALWAYS_ABLE: u32 = 16;
18pub const gr_method_GR_METHOD_CTX_WRITE: gr_method = 0;
19pub const gr_method_GR_METHOD_CTX_CLEAR: gr_method = 1;
20pub const gr_method_GR_METHOD_CTX_IS_RING: gr_method = 2;
21pub const gr_method_GR_METHOD_CTX_IS_COMMUTATIVE_RING: gr_method = 3;
22pub const gr_method_GR_METHOD_CTX_IS_INTEGRAL_DOMAIN: gr_method = 4;
23pub const gr_method_GR_METHOD_CTX_IS_FIELD: gr_method = 5;
24pub const gr_method_GR_METHOD_CTX_IS_UNIQUE_FACTORIZATION_DOMAIN: gr_method = 6;
25pub const gr_method_GR_METHOD_CTX_IS_FINITE: gr_method = 7;
26pub const gr_method_GR_METHOD_CTX_IS_FINITE_CHARACTERISTIC: gr_method = 8;
27pub const gr_method_GR_METHOD_CTX_IS_ALGEBRAICALLY_CLOSED: gr_method = 9;
28pub const gr_method_GR_METHOD_CTX_IS_ZERO_RING: gr_method = 10;
29pub const gr_method_GR_METHOD_CTX_IS_RATIONAL_VECTOR_SPACE: gr_method = 11;
30pub const gr_method_GR_METHOD_CTX_IS_REAL_VECTOR_SPACE: gr_method = 12;
31pub const gr_method_GR_METHOD_CTX_IS_COMPLEX_VECTOR_SPACE: gr_method = 13;
32pub const gr_method_GR_METHOD_CTX_IS_ORDERED_RING: gr_method = 14;
33pub const gr_method_GR_METHOD_CTX_IS_APPROX_COMMUTATIVE_RING: gr_method = 15;
34pub const gr_method_GR_METHOD_CTX_IS_MULTIPLICATIVE_GROUP: gr_method = 16;
35pub const gr_method_GR_METHOD_CTX_IS_EXACT: gr_method = 17;
36pub const gr_method_GR_METHOD_CTX_IS_CANONICAL: gr_method = 18;
37pub const gr_method_GR_METHOD_CTX_IS_THREADSAFE: gr_method = 19;
38pub const gr_method_GR_METHOD_CTX_HAS_REAL_PREC: gr_method = 20;
39pub const gr_method_GR_METHOD_CTX_SET_REAL_PREC: gr_method = 21;
40pub const gr_method_GR_METHOD_CTX_GET_REAL_PREC: gr_method = 22;
41pub const gr_method_GR_METHOD_CTX_SET_IS_FIELD: gr_method = 23;
42pub const gr_method_GR_METHOD_CTX_SET_GEN_NAME: gr_method = 24;
43pub const gr_method_GR_METHOD_CTX_SET_GEN_NAMES: gr_method = 25;
44pub const gr_method_GR_METHOD_CTX_NGENS: gr_method = 26;
45pub const gr_method_GR_METHOD_CTX_GEN_NAME: gr_method = 27;
46pub const gr_method_GR_METHOD_CTX_BASE: gr_method = 28;
47pub const gr_method_GR_METHOD_INIT: gr_method = 29;
48pub const gr_method_GR_METHOD_CLEAR: gr_method = 30;
49pub const gr_method_GR_METHOD_SWAP: gr_method = 31;
50pub const gr_method_GR_METHOD_SET_SHALLOW: gr_method = 32;
51pub const gr_method_GR_METHOD_WRITE: gr_method = 33;
52pub const gr_method_GR_METHOD_WRITE_N: gr_method = 34;
53pub const gr_method__GR_METHOD_LENGTH: gr_method = 35;
54pub const gr_method_GR_METHOD_RANDTEST: gr_method = 36;
55pub const gr_method_GR_METHOD_RANDTEST_NOT_ZERO: gr_method = 37;
56pub const gr_method_GR_METHOD_RANDTEST_INVERTIBLE: gr_method = 38;
57pub const gr_method_GR_METHOD_RANDTEST_SMALL: gr_method = 39;
58pub const gr_method_GR_METHOD_ZERO: gr_method = 40;
59pub const gr_method_GR_METHOD_ONE: gr_method = 41;
60pub const gr_method_GR_METHOD_NEG_ONE: gr_method = 42;
61pub const gr_method_GR_METHOD_IS_ZERO: gr_method = 43;
62pub const gr_method_GR_METHOD_IS_ONE: gr_method = 44;
63pub const gr_method_GR_METHOD_IS_NEG_ONE: gr_method = 45;
64pub const gr_method_GR_METHOD_EQUAL: gr_method = 46;
65pub const gr_method_GR_METHOD_SET: gr_method = 47;
66pub const gr_method_GR_METHOD_SET_UI: gr_method = 48;
67pub const gr_method_GR_METHOD_SET_SI: gr_method = 49;
68pub const gr_method_GR_METHOD_SET_FMPZ: gr_method = 50;
69pub const gr_method_GR_METHOD_SET_FMPQ: gr_method = 51;
70pub const gr_method_GR_METHOD_SET_D: gr_method = 52;
71pub const gr_method_GR_METHOD_SET_OTHER: gr_method = 53;
72pub const gr_method_GR_METHOD_SET_STR: gr_method = 54;
73pub const gr_method_GR_METHOD_GET_SI: gr_method = 55;
74pub const gr_method_GR_METHOD_GET_UI: gr_method = 56;
75pub const gr_method_GR_METHOD_GET_FMPZ: gr_method = 57;
76pub const gr_method_GR_METHOD_GET_FMPQ: gr_method = 58;
77pub const gr_method_GR_METHOD_GET_D: gr_method = 59;
78pub const gr_method_GR_METHOD_GET_FEXPR: gr_method = 60;
79pub const gr_method_GR_METHOD_GET_FEXPR_SERIALIZE: gr_method = 61;
80pub const gr_method_GR_METHOD_SET_FEXPR: gr_method = 62;
81pub const gr_method_GR_METHOD_NEG: gr_method = 63;
82pub const gr_method_GR_METHOD_ADD: gr_method = 64;
83pub const gr_method_GR_METHOD_ADD_UI: gr_method = 65;
84pub const gr_method_GR_METHOD_ADD_SI: gr_method = 66;
85pub const gr_method_GR_METHOD_ADD_FMPZ: gr_method = 67;
86pub const gr_method_GR_METHOD_ADD_FMPQ: gr_method = 68;
87pub const gr_method_GR_METHOD_ADD_OTHER: gr_method = 69;
88pub const gr_method_GR_METHOD_OTHER_ADD: gr_method = 70;
89pub const gr_method_GR_METHOD_SUB: gr_method = 71;
90pub const gr_method_GR_METHOD_SUB_UI: gr_method = 72;
91pub const gr_method_GR_METHOD_SUB_SI: gr_method = 73;
92pub const gr_method_GR_METHOD_SUB_FMPZ: gr_method = 74;
93pub const gr_method_GR_METHOD_SUB_FMPQ: gr_method = 75;
94pub const gr_method_GR_METHOD_SUB_OTHER: gr_method = 76;
95pub const gr_method_GR_METHOD_OTHER_SUB: gr_method = 77;
96pub const gr_method_GR_METHOD_MUL: gr_method = 78;
97pub const gr_method_GR_METHOD_MUL_UI: gr_method = 79;
98pub const gr_method_GR_METHOD_MUL_SI: gr_method = 80;
99pub const gr_method_GR_METHOD_MUL_FMPZ: gr_method = 81;
100pub const gr_method_GR_METHOD_MUL_FMPQ: gr_method = 82;
101pub const gr_method_GR_METHOD_MUL_OTHER: gr_method = 83;
102pub const gr_method_GR_METHOD_OTHER_MUL: gr_method = 84;
103pub const gr_method_GR_METHOD_ADDMUL: gr_method = 85;
104pub const gr_method_GR_METHOD_ADDMUL_UI: gr_method = 86;
105pub const gr_method_GR_METHOD_ADDMUL_SI: gr_method = 87;
106pub const gr_method_GR_METHOD_ADDMUL_FMPZ: gr_method = 88;
107pub const gr_method_GR_METHOD_ADDMUL_FMPQ: gr_method = 89;
108pub const gr_method_GR_METHOD_ADDMUL_OTHER: gr_method = 90;
109pub const gr_method_GR_METHOD_SUBMUL: gr_method = 91;
110pub const gr_method_GR_METHOD_SUBMUL_UI: gr_method = 92;
111pub const gr_method_GR_METHOD_SUBMUL_SI: gr_method = 93;
112pub const gr_method_GR_METHOD_SUBMUL_FMPZ: gr_method = 94;
113pub const gr_method_GR_METHOD_SUBMUL_FMPQ: gr_method = 95;
114pub const gr_method_GR_METHOD_SUBMUL_OTHER: gr_method = 96;
115pub const gr_method_GR_METHOD_FMA: gr_method = 97;
116pub const gr_method_GR_METHOD_FMS: gr_method = 98;
117pub const gr_method_GR_METHOD_FMMA: gr_method = 99;
118pub const gr_method_GR_METHOD_FMMS: gr_method = 100;
119pub const gr_method_GR_METHOD_MUL_TWO: gr_method = 101;
120pub const gr_method_GR_METHOD_SQR: gr_method = 102;
121pub const gr_method_GR_METHOD_MUL_2EXP_SI: gr_method = 103;
122pub const gr_method_GR_METHOD_MUL_2EXP_FMPZ: gr_method = 104;
123pub const gr_method_GR_METHOD_SET_FMPZ_2EXP_FMPZ: gr_method = 105;
124pub const gr_method_GR_METHOD_GET_FMPZ_2EXP_FMPZ: gr_method = 106;
125pub const gr_method_GR_METHOD_SET_FMPZ_10EXP_FMPZ: gr_method = 107;
126pub const gr_method_GR_METHOD_GET_D_2EXP_SI: gr_method = 108;
127pub const gr_method_GR_METHOD_IS_INVERTIBLE: gr_method = 109;
128pub const gr_method_GR_METHOD_INV: gr_method = 110;
129pub const gr_method_GR_METHOD_DIV: gr_method = 111;
130pub const gr_method_GR_METHOD_DIV_UI: gr_method = 112;
131pub const gr_method_GR_METHOD_DIV_SI: gr_method = 113;
132pub const gr_method_GR_METHOD_DIV_FMPZ: gr_method = 114;
133pub const gr_method_GR_METHOD_DIV_FMPQ: gr_method = 115;
134pub const gr_method_GR_METHOD_DIV_OTHER: gr_method = 116;
135pub const gr_method_GR_METHOD_OTHER_DIV: gr_method = 117;
136pub const gr_method_GR_METHOD_DIV_NONUNIQUE: gr_method = 118;
137pub const gr_method_GR_METHOD_DIVIDES: gr_method = 119;
138pub const gr_method_GR_METHOD_DIVEXACT: gr_method = 120;
139pub const gr_method_GR_METHOD_DIVEXACT_UI: gr_method = 121;
140pub const gr_method_GR_METHOD_DIVEXACT_SI: gr_method = 122;
141pub const gr_method_GR_METHOD_DIVEXACT_FMPZ: gr_method = 123;
142pub const gr_method_GR_METHOD_DIVEXACT_FMPQ: gr_method = 124;
143pub const gr_method_GR_METHOD_DIVEXACT_OTHER: gr_method = 125;
144pub const gr_method_GR_METHOD_OTHER_DIVEXACT: gr_method = 126;
145pub const gr_method_GR_METHOD_POW: gr_method = 127;
146pub const gr_method_GR_METHOD_POW_UI: gr_method = 128;
147pub const gr_method_GR_METHOD_POW_SI: gr_method = 129;
148pub const gr_method_GR_METHOD_POW_FMPZ: gr_method = 130;
149pub const gr_method_GR_METHOD_POW_FMPQ: gr_method = 131;
150pub const gr_method_GR_METHOD_POW_OTHER: gr_method = 132;
151pub const gr_method_GR_METHOD_OTHER_POW: gr_method = 133;
152pub const gr_method_GR_METHOD_DERIVATIVE_GEN: gr_method = 134;
153pub const gr_method_GR_METHOD_IS_SQUARE: gr_method = 135;
154pub const gr_method_GR_METHOD_SQRT: gr_method = 136;
155pub const gr_method_GR_METHOD_RSQRT: gr_method = 137;
156pub const gr_method_GR_METHOD_HYPOT: gr_method = 138;
157pub const gr_method_GR_METHOD_IS_PERFECT_POWER: gr_method = 139;
158pub const gr_method_GR_METHOD_FACTOR_PERFECT_POWER: gr_method = 140;
159pub const gr_method_GR_METHOD_ROOT_UI: gr_method = 141;
160pub const gr_method_GR_METHOD_EUCLIDEAN_DIV: gr_method = 142;
161pub const gr_method_GR_METHOD_EUCLIDEAN_REM: gr_method = 143;
162pub const gr_method_GR_METHOD_EUCLIDEAN_DIVREM: gr_method = 144;
163pub const gr_method_GR_METHOD_GCD: gr_method = 145;
164pub const gr_method_GR_METHOD_LCM: gr_method = 146;
165pub const gr_method_GR_METHOD_FACTOR: gr_method = 147;
166pub const gr_method_GR_METHOD_NUMERATOR: gr_method = 148;
167pub const gr_method_GR_METHOD_DENOMINATOR: gr_method = 149;
168pub const gr_method_GR_METHOD_FLOOR: gr_method = 150;
169pub const gr_method_GR_METHOD_CEIL: gr_method = 151;
170pub const gr_method_GR_METHOD_TRUNC: gr_method = 152;
171pub const gr_method_GR_METHOD_NINT: gr_method = 153;
172pub const gr_method_GR_METHOD_CMP: gr_method = 154;
173pub const gr_method_GR_METHOD_CMPABS: gr_method = 155;
174pub const gr_method_GR_METHOD_CMP_OTHER: gr_method = 156;
175pub const gr_method_GR_METHOD_CMPABS_OTHER: gr_method = 157;
176pub const gr_method_GR_METHOD_MIN: gr_method = 158;
177pub const gr_method_GR_METHOD_MAX: gr_method = 159;
178pub const gr_method_GR_METHOD_ABS: gr_method = 160;
179pub const gr_method_GR_METHOD_ABS2: gr_method = 161;
180pub const gr_method_GR_METHOD_I: gr_method = 162;
181pub const gr_method_GR_METHOD_CONJ: gr_method = 163;
182pub const gr_method_GR_METHOD_RE: gr_method = 164;
183pub const gr_method_GR_METHOD_IM: gr_method = 165;
184pub const gr_method_GR_METHOD_SGN: gr_method = 166;
185pub const gr_method_GR_METHOD_CSGN: gr_method = 167;
186pub const gr_method_GR_METHOD_ARG: gr_method = 168;
187pub const gr_method_GR_METHOD_CANONICAL_ASSOCIATE: gr_method = 169;
188pub const gr_method_GR_METHOD_POS_INF: gr_method = 170;
189pub const gr_method_GR_METHOD_NEG_INF: gr_method = 171;
190pub const gr_method_GR_METHOD_UINF: gr_method = 172;
191pub const gr_method_GR_METHOD_UNDEFINED: gr_method = 173;
192pub const gr_method_GR_METHOD_UNKNOWN: gr_method = 174;
193pub const gr_method_GR_METHOD_IS_INTEGER: gr_method = 175;
194pub const gr_method_GR_METHOD_IS_RATIONAL: gr_method = 176;
195pub const gr_method_GR_METHOD_IS_REAL: gr_method = 177;
196pub const gr_method_GR_METHOD_IS_POSITIVE_INTEGER: gr_method = 178;
197pub const gr_method_GR_METHOD_IS_NONNEGATIVE_INTEGER: gr_method = 179;
198pub const gr_method_GR_METHOD_IS_NEGATIVE_INTEGER: gr_method = 180;
199pub const gr_method_GR_METHOD_IS_NONPOSITIVE_INTEGER: gr_method = 181;
200pub const gr_method_GR_METHOD_IS_POSITIVE_REAL: gr_method = 182;
201pub const gr_method_GR_METHOD_IS_NONNEGATIVE_REAL: gr_method = 183;
202pub const gr_method_GR_METHOD_IS_NEGATIVE_REAL: gr_method = 184;
203pub const gr_method_GR_METHOD_IS_NONPOSITIVE_REAL: gr_method = 185;
204pub const gr_method_GR_METHOD_SET_INTERVAL_MID_RAD: gr_method = 186;
205pub const gr_method_GR_METHOD_IS_ROOT_OF_UNITY: gr_method = 187;
206pub const gr_method_GR_METHOD_ROOT_OF_UNITY_UI: gr_method = 188;
207pub const gr_method_GR_METHOD_ROOT_OF_UNITY_UI_VEC: gr_method = 189;
208pub const gr_method_GR_METHOD_PI: gr_method = 190;
209pub const gr_method_GR_METHOD_EXP: gr_method = 191;
210pub const gr_method_GR_METHOD_EXPM1: gr_method = 192;
211pub const gr_method_GR_METHOD_EXP_PI_I: gr_method = 193;
212pub const gr_method_GR_METHOD_EXP2: gr_method = 194;
213pub const gr_method_GR_METHOD_EXP10: gr_method = 195;
214pub const gr_method_GR_METHOD_LOG: gr_method = 196;
215pub const gr_method_GR_METHOD_LOG1P: gr_method = 197;
216pub const gr_method_GR_METHOD_LOG_PI_I: gr_method = 198;
217pub const gr_method_GR_METHOD_LOG2: gr_method = 199;
218pub const gr_method_GR_METHOD_LOG10: gr_method = 200;
219pub const gr_method_GR_METHOD_SIN: gr_method = 201;
220pub const gr_method_GR_METHOD_COS: gr_method = 202;
221pub const gr_method_GR_METHOD_SIN_COS: gr_method = 203;
222pub const gr_method_GR_METHOD_TAN: gr_method = 204;
223pub const gr_method_GR_METHOD_COT: gr_method = 205;
224pub const gr_method_GR_METHOD_SEC: gr_method = 206;
225pub const gr_method_GR_METHOD_CSC: gr_method = 207;
226pub const gr_method_GR_METHOD_SIN_PI: gr_method = 208;
227pub const gr_method_GR_METHOD_COS_PI: gr_method = 209;
228pub const gr_method_GR_METHOD_SIN_COS_PI: gr_method = 210;
229pub const gr_method_GR_METHOD_TAN_PI: gr_method = 211;
230pub const gr_method_GR_METHOD_COT_PI: gr_method = 212;
231pub const gr_method_GR_METHOD_SEC_PI: gr_method = 213;
232pub const gr_method_GR_METHOD_CSC_PI: gr_method = 214;
233pub const gr_method_GR_METHOD_SINC: gr_method = 215;
234pub const gr_method_GR_METHOD_SINC_PI: gr_method = 216;
235pub const gr_method_GR_METHOD_SINH: gr_method = 217;
236pub const gr_method_GR_METHOD_COSH: gr_method = 218;
237pub const gr_method_GR_METHOD_SINH_COSH: gr_method = 219;
238pub const gr_method_GR_METHOD_TANH: gr_method = 220;
239pub const gr_method_GR_METHOD_COTH: gr_method = 221;
240pub const gr_method_GR_METHOD_SECH: gr_method = 222;
241pub const gr_method_GR_METHOD_CSCH: gr_method = 223;
242pub const gr_method_GR_METHOD_ASIN: gr_method = 224;
243pub const gr_method_GR_METHOD_ACOS: gr_method = 225;
244pub const gr_method_GR_METHOD_ATAN: gr_method = 226;
245pub const gr_method_GR_METHOD_ATAN2: gr_method = 227;
246pub const gr_method_GR_METHOD_ACOT: gr_method = 228;
247pub const gr_method_GR_METHOD_ASEC: gr_method = 229;
248pub const gr_method_GR_METHOD_ACSC: gr_method = 230;
249pub const gr_method_GR_METHOD_ASINH: gr_method = 231;
250pub const gr_method_GR_METHOD_ACOSH: gr_method = 232;
251pub const gr_method_GR_METHOD_ATANH: gr_method = 233;
252pub const gr_method_GR_METHOD_ACOTH: gr_method = 234;
253pub const gr_method_GR_METHOD_ASECH: gr_method = 235;
254pub const gr_method_GR_METHOD_ACSCH: gr_method = 236;
255pub const gr_method_GR_METHOD_ASIN_PI: gr_method = 237;
256pub const gr_method_GR_METHOD_ACOS_PI: gr_method = 238;
257pub const gr_method_GR_METHOD_ATAN_PI: gr_method = 239;
258pub const gr_method_GR_METHOD_ACOT_PI: gr_method = 240;
259pub const gr_method_GR_METHOD_ASEC_PI: gr_method = 241;
260pub const gr_method_GR_METHOD_ACSC_PI: gr_method = 242;
261pub const gr_method_GR_METHOD_FAC: gr_method = 243;
262pub const gr_method_GR_METHOD_FAC_UI: gr_method = 244;
263pub const gr_method_GR_METHOD_FAC_FMPZ: gr_method = 245;
264pub const gr_method_GR_METHOD_FAC_VEC: gr_method = 246;
265pub const gr_method_GR_METHOD_RFAC: gr_method = 247;
266pub const gr_method_GR_METHOD_RFAC_UI: gr_method = 248;
267pub const gr_method_GR_METHOD_RFAC_FMPZ: gr_method = 249;
268pub const gr_method_GR_METHOD_RFAC_VEC: gr_method = 250;
269pub const gr_method_GR_METHOD_BIN: gr_method = 251;
270pub const gr_method_GR_METHOD_BIN_UI: gr_method = 252;
271pub const gr_method_GR_METHOD_BIN_UIUI: gr_method = 253;
272pub const gr_method_GR_METHOD_BIN_VEC: gr_method = 254;
273pub const gr_method_GR_METHOD_BIN_UI_VEC: gr_method = 255;
274pub const gr_method_GR_METHOD_RISING_UI: gr_method = 256;
275pub const gr_method_GR_METHOD_RISING: gr_method = 257;
276pub const gr_method_GR_METHOD_FALLING_UI: gr_method = 258;
277pub const gr_method_GR_METHOD_FALLING: gr_method = 259;
278pub const gr_method_GR_METHOD_GAMMA: gr_method = 260;
279pub const gr_method_GR_METHOD_GAMMA_FMPZ: gr_method = 261;
280pub const gr_method_GR_METHOD_GAMMA_FMPQ: gr_method = 262;
281pub const gr_method_GR_METHOD_RGAMMA: gr_method = 263;
282pub const gr_method_GR_METHOD_LGAMMA: gr_method = 264;
283pub const gr_method_GR_METHOD_DIGAMMA: gr_method = 265;
284pub const gr_method_GR_METHOD_BETA: gr_method = 266;
285pub const gr_method_GR_METHOD_DOUBLEFAC: gr_method = 267;
286pub const gr_method_GR_METHOD_DOUBLEFAC_UI: gr_method = 268;
287pub const gr_method_GR_METHOD_BARNES_G: gr_method = 269;
288pub const gr_method_GR_METHOD_LOG_BARNES_G: gr_method = 270;
289pub const gr_method_GR_METHOD_HARMONIC: gr_method = 271;
290pub const gr_method_GR_METHOD_HARMONIC_UI: gr_method = 272;
291pub const gr_method_GR_METHOD_BERNOULLI_UI: gr_method = 273;
292pub const gr_method_GR_METHOD_BERNOULLI_FMPZ: gr_method = 274;
293pub const gr_method_GR_METHOD_BERNOULLI_VEC: gr_method = 275;
294pub const gr_method_GR_METHOD_FIB_UI: gr_method = 276;
295pub const gr_method_GR_METHOD_FIB_FMPZ: gr_method = 277;
296pub const gr_method_GR_METHOD_FIB_VEC: gr_method = 278;
297pub const gr_method_GR_METHOD_STIRLING_S1U_UIUI: gr_method = 279;
298pub const gr_method_GR_METHOD_STIRLING_S1_UIUI: gr_method = 280;
299pub const gr_method_GR_METHOD_STIRLING_S2_UIUI: gr_method = 281;
300pub const gr_method_GR_METHOD_STIRLING_S1U_UI_VEC: gr_method = 282;
301pub const gr_method_GR_METHOD_STIRLING_S1_UI_VEC: gr_method = 283;
302pub const gr_method_GR_METHOD_STIRLING_S2_UI_VEC: gr_method = 284;
303pub const gr_method_GR_METHOD_EULERNUM_UI: gr_method = 285;
304pub const gr_method_GR_METHOD_EULERNUM_FMPZ: gr_method = 286;
305pub const gr_method_GR_METHOD_EULERNUM_VEC: gr_method = 287;
306pub const gr_method_GR_METHOD_BELLNUM_UI: gr_method = 288;
307pub const gr_method_GR_METHOD_BELLNUM_FMPZ: gr_method = 289;
308pub const gr_method_GR_METHOD_BELLNUM_VEC: gr_method = 290;
309pub const gr_method_GR_METHOD_PARTITIONS_UI: gr_method = 291;
310pub const gr_method_GR_METHOD_PARTITIONS_FMPZ: gr_method = 292;
311pub const gr_method_GR_METHOD_PARTITIONS_VEC: gr_method = 293;
312pub const gr_method_GR_METHOD_CHEBYSHEV_T_FMPZ: gr_method = 294;
313pub const gr_method_GR_METHOD_CHEBYSHEV_U_FMPZ: gr_method = 295;
314pub const gr_method_GR_METHOD_CHEBYSHEV_T: gr_method = 296;
315pub const gr_method_GR_METHOD_CHEBYSHEV_U: gr_method = 297;
316pub const gr_method_GR_METHOD_JACOBI_P: gr_method = 298;
317pub const gr_method_GR_METHOD_GEGENBAUER_C: gr_method = 299;
318pub const gr_method_GR_METHOD_LAGUERRE_L: gr_method = 300;
319pub const gr_method_GR_METHOD_HERMITE_H: gr_method = 301;
320pub const gr_method_GR_METHOD_LEGENDRE_P: gr_method = 302;
321pub const gr_method_GR_METHOD_LEGENDRE_Q: gr_method = 303;
322pub const gr_method_GR_METHOD_LEGENDRE_P_ROOT_UI: gr_method = 304;
323pub const gr_method_GR_METHOD_SPHERICAL_Y_SI: gr_method = 305;
324pub const gr_method_GR_METHOD_EULER: gr_method = 306;
325pub const gr_method_GR_METHOD_CATALAN: gr_method = 307;
326pub const gr_method_GR_METHOD_KHINCHIN: gr_method = 308;
327pub const gr_method_GR_METHOD_GLAISHER: gr_method = 309;
328pub const gr_method_GR_METHOD_LAMBERTW: gr_method = 310;
329pub const gr_method_GR_METHOD_LAMBERTW_FMPZ: gr_method = 311;
330pub const gr_method_GR_METHOD_ERF: gr_method = 312;
331pub const gr_method_GR_METHOD_ERFC: gr_method = 313;
332pub const gr_method_GR_METHOD_ERFCX: gr_method = 314;
333pub const gr_method_GR_METHOD_ERFI: gr_method = 315;
334pub const gr_method_GR_METHOD_ERFINV: gr_method = 316;
335pub const gr_method_GR_METHOD_ERFCINV: gr_method = 317;
336pub const gr_method_GR_METHOD_FRESNEL_S: gr_method = 318;
337pub const gr_method_GR_METHOD_FRESNEL_C: gr_method = 319;
338pub const gr_method_GR_METHOD_FRESNEL: gr_method = 320;
339pub const gr_method_GR_METHOD_GAMMA_UPPER: gr_method = 321;
340pub const gr_method_GR_METHOD_GAMMA_LOWER: gr_method = 322;
341pub const gr_method_GR_METHOD_BETA_LOWER: gr_method = 323;
342pub const gr_method_GR_METHOD_EXP_INTEGRAL: gr_method = 324;
343pub const gr_method_GR_METHOD_EXP_INTEGRAL_EI: gr_method = 325;
344pub const gr_method_GR_METHOD_SIN_INTEGRAL: gr_method = 326;
345pub const gr_method_GR_METHOD_COS_INTEGRAL: gr_method = 327;
346pub const gr_method_GR_METHOD_SINH_INTEGRAL: gr_method = 328;
347pub const gr_method_GR_METHOD_COSH_INTEGRAL: gr_method = 329;
348pub const gr_method_GR_METHOD_LOG_INTEGRAL: gr_method = 330;
349pub const gr_method_GR_METHOD_DILOG: gr_method = 331;
350pub const gr_method_GR_METHOD_BESSEL_J: gr_method = 332;
351pub const gr_method_GR_METHOD_BESSEL_Y: gr_method = 333;
352pub const gr_method_GR_METHOD_BESSEL_J_Y: gr_method = 334;
353pub const gr_method_GR_METHOD_BESSEL_I: gr_method = 335;
354pub const gr_method_GR_METHOD_BESSEL_I_SCALED: gr_method = 336;
355pub const gr_method_GR_METHOD_BESSEL_K: gr_method = 337;
356pub const gr_method_GR_METHOD_BESSEL_K_SCALED: gr_method = 338;
357pub const gr_method_GR_METHOD_AIRY: gr_method = 339;
358pub const gr_method_GR_METHOD_AIRY_AI: gr_method = 340;
359pub const gr_method_GR_METHOD_AIRY_BI: gr_method = 341;
360pub const gr_method_GR_METHOD_AIRY_AI_PRIME: gr_method = 342;
361pub const gr_method_GR_METHOD_AIRY_BI_PRIME: gr_method = 343;
362pub const gr_method_GR_METHOD_AIRY_AI_ZERO: gr_method = 344;
363pub const gr_method_GR_METHOD_AIRY_BI_ZERO: gr_method = 345;
364pub const gr_method_GR_METHOD_AIRY_AI_PRIME_ZERO: gr_method = 346;
365pub const gr_method_GR_METHOD_AIRY_BI_PRIME_ZERO: gr_method = 347;
366pub const gr_method_GR_METHOD_COULOMB: gr_method = 348;
367pub const gr_method_GR_METHOD_COULOMB_F: gr_method = 349;
368pub const gr_method_GR_METHOD_COULOMB_G: gr_method = 350;
369pub const gr_method_GR_METHOD_COULOMB_HPOS: gr_method = 351;
370pub const gr_method_GR_METHOD_COULOMB_HNEG: gr_method = 352;
371pub const gr_method_GR_METHOD_ZETA: gr_method = 353;
372pub const gr_method_GR_METHOD_ZETA_UI: gr_method = 354;
373pub const gr_method_GR_METHOD_HURWITZ_ZETA: gr_method = 355;
374pub const gr_method_GR_METHOD_LERCH_PHI: gr_method = 356;
375pub const gr_method_GR_METHOD_STIELTJES: gr_method = 357;
376pub const gr_method_GR_METHOD_DIRICHLET_ETA: gr_method = 358;
377pub const gr_method_GR_METHOD_DIRICHLET_BETA: gr_method = 359;
378pub const gr_method_GR_METHOD_RIEMANN_XI: gr_method = 360;
379pub const gr_method_GR_METHOD_ZETA_ZERO: gr_method = 361;
380pub const gr_method_GR_METHOD_ZETA_ZERO_VEC: gr_method = 362;
381pub const gr_method_GR_METHOD_ZETA_NZEROS: gr_method = 363;
382pub const gr_method_GR_METHOD_DIRICHLET_CHI_UI: gr_method = 364;
383pub const gr_method_GR_METHOD_DIRICHLET_CHI_FMPZ: gr_method = 365;
384pub const gr_method_GR_METHOD_DIRICHLET_L: gr_method = 366;
385pub const gr_method_GR_METHOD_DIRICHLET_HARDY_THETA: gr_method = 367;
386pub const gr_method_GR_METHOD_DIRICHLET_HARDY_Z: gr_method = 368;
387pub const gr_method_GR_METHOD_BERNPOLY_UI: gr_method = 369;
388pub const gr_method_GR_METHOD_EULERPOLY_UI: gr_method = 370;
389pub const gr_method_GR_METHOD_POLYLOG: gr_method = 371;
390pub const gr_method_GR_METHOD_POLYGAMMA: gr_method = 372;
391pub const gr_method_GR_METHOD_HYPGEOM_0F1: gr_method = 373;
392pub const gr_method_GR_METHOD_HYPGEOM_1F1: gr_method = 374;
393pub const gr_method_GR_METHOD_HYPGEOM_2F0: gr_method = 375;
394pub const gr_method_GR_METHOD_HYPGEOM_2F1: gr_method = 376;
395pub const gr_method_GR_METHOD_HYPGEOM_U: gr_method = 377;
396pub const gr_method_GR_METHOD_HYPGEOM_PFQ: gr_method = 378;
397pub const gr_method_GR_METHOD_JACOBI_THETA: gr_method = 379;
398pub const gr_method_GR_METHOD_JACOBI_THETA_1: gr_method = 380;
399pub const gr_method_GR_METHOD_JACOBI_THETA_2: gr_method = 381;
400pub const gr_method_GR_METHOD_JACOBI_THETA_3: gr_method = 382;
401pub const gr_method_GR_METHOD_JACOBI_THETA_4: gr_method = 383;
402pub const gr_method_GR_METHOD_JACOBI_THETA_Q: gr_method = 384;
403pub const gr_method_GR_METHOD_JACOBI_THETA_Q_1: gr_method = 385;
404pub const gr_method_GR_METHOD_JACOBI_THETA_Q_2: gr_method = 386;
405pub const gr_method_GR_METHOD_JACOBI_THETA_Q_3: gr_method = 387;
406pub const gr_method_GR_METHOD_JACOBI_THETA_Q_4: gr_method = 388;
407pub const gr_method_GR_METHOD_MODULAR_J: gr_method = 389;
408pub const gr_method_GR_METHOD_MODULAR_LAMBDA: gr_method = 390;
409pub const gr_method_GR_METHOD_MODULAR_DELTA: gr_method = 391;
410pub const gr_method_GR_METHOD_HILBERT_CLASS_POLY: gr_method = 392;
411pub const gr_method_GR_METHOD_DEDEKIND_ETA: gr_method = 393;
412pub const gr_method_GR_METHOD_DEDEKIND_ETA_Q: gr_method = 394;
413pub const gr_method_GR_METHOD_EISENSTEIN_E: gr_method = 395;
414pub const gr_method_GR_METHOD_EISENSTEIN_G: gr_method = 396;
415pub const gr_method_GR_METHOD_EISENSTEIN_G_VEC: gr_method = 397;
416pub const gr_method_GR_METHOD_AGM: gr_method = 398;
417pub const gr_method_GR_METHOD_AGM1: gr_method = 399;
418pub const gr_method_GR_METHOD_ELLIPTIC_K: gr_method = 400;
419pub const gr_method_GR_METHOD_ELLIPTIC_E: gr_method = 401;
420pub const gr_method_GR_METHOD_ELLIPTIC_PI: gr_method = 402;
421pub const gr_method_GR_METHOD_ELLIPTIC_F: gr_method = 403;
422pub const gr_method_GR_METHOD_ELLIPTIC_E_INC: gr_method = 404;
423pub const gr_method_GR_METHOD_ELLIPTIC_PI_INC: gr_method = 405;
424pub const gr_method_GR_METHOD_CARLSON_RF: gr_method = 406;
425pub const gr_method_GR_METHOD_CARLSON_RC: gr_method = 407;
426pub const gr_method_GR_METHOD_CARLSON_RJ: gr_method = 408;
427pub const gr_method_GR_METHOD_CARLSON_RG: gr_method = 409;
428pub const gr_method_GR_METHOD_CARLSON_RD: gr_method = 410;
429pub const gr_method_GR_METHOD_ELLIPTIC_ROOTS: gr_method = 411;
430pub const gr_method_GR_METHOD_ELLIPTIC_INVARIANTS: gr_method = 412;
431pub const gr_method_GR_METHOD_WEIERSTRASS_P: gr_method = 413;
432pub const gr_method_GR_METHOD_WEIERSTRASS_P_PRIME: gr_method = 414;
433pub const gr_method_GR_METHOD_WEIERSTRASS_P_INV: gr_method = 415;
434pub const gr_method_GR_METHOD_WEIERSTRASS_ZETA: gr_method = 416;
435pub const gr_method_GR_METHOD_WEIERSTRASS_SIGMA: gr_method = 417;
436pub const gr_method_GR_METHOD_GEN: gr_method = 418;
437pub const gr_method_GR_METHOD_GENS: gr_method = 419;
438pub const gr_method_GR_METHOD_GENS_RECURSIVE: gr_method = 420;
439pub const gr_method_GR_METHOD_CTX_FQ_PRIME: gr_method = 421;
440pub const gr_method_GR_METHOD_CTX_FQ_DEGREE: gr_method = 422;
441pub const gr_method_GR_METHOD_CTX_FQ_ORDER: gr_method = 423;
442pub const gr_method_GR_METHOD_FQ_FROBENIUS: gr_method = 424;
443pub const gr_method_GR_METHOD_FQ_MULTIPLICATIVE_ORDER: gr_method = 425;
444pub const gr_method_GR_METHOD_FQ_NORM: gr_method = 426;
445pub const gr_method_GR_METHOD_FQ_TRACE: gr_method = 427;
446pub const gr_method_GR_METHOD_FQ_IS_PRIMITIVE: gr_method = 428;
447pub const gr_method_GR_METHOD_FQ_PTH_ROOT: gr_method = 429;
448pub const gr_method_GR_METHOD_VEC_INIT: gr_method = 430;
449pub const gr_method_GR_METHOD_VEC_CLEAR: gr_method = 431;
450pub const gr_method_GR_METHOD_VEC_SWAP: gr_method = 432;
451pub const gr_method_GR_METHOD_VEC_SET: gr_method = 433;
452pub const gr_method_GR_METHOD_VEC_ZERO: gr_method = 434;
453pub const gr_method_GR_METHOD_VEC_EQUAL: gr_method = 435;
454pub const gr_method_GR_METHOD_VEC_IS_ZERO: gr_method = 436;
455pub const gr_method_GR_METHOD_VEC_NEG: gr_method = 437;
456pub const gr_method_GR_METHOD_VEC_NORMALISE: gr_method = 438;
457pub const gr_method_GR_METHOD_VEC_NORMALISE_WEAK: gr_method = 439;
458pub const gr_method_GR_METHOD_VEC_ADD: gr_method = 440;
459pub const gr_method_GR_METHOD_VEC_SUB: gr_method = 441;
460pub const gr_method_GR_METHOD_VEC_MUL: gr_method = 442;
461pub const gr_method_GR_METHOD_VEC_DIV: gr_method = 443;
462pub const gr_method_GR_METHOD_VEC_DIVEXACT: gr_method = 444;
463pub const gr_method_GR_METHOD_VEC_POW: gr_method = 445;
464pub const gr_method_GR_METHOD_VEC_ADD_SCALAR: gr_method = 446;
465pub const gr_method_GR_METHOD_VEC_SUB_SCALAR: gr_method = 447;
466pub const gr_method_GR_METHOD_VEC_MUL_SCALAR: gr_method = 448;
467pub const gr_method_GR_METHOD_VEC_DIV_SCALAR: gr_method = 449;
468pub const gr_method_GR_METHOD_VEC_DIVEXACT_SCALAR: gr_method = 450;
469pub const gr_method_GR_METHOD_VEC_POW_SCALAR: gr_method = 451;
470pub const gr_method_GR_METHOD_SCALAR_ADD_VEC: gr_method = 452;
471pub const gr_method_GR_METHOD_SCALAR_SUB_VEC: gr_method = 453;
472pub const gr_method_GR_METHOD_SCALAR_MUL_VEC: gr_method = 454;
473pub const gr_method_GR_METHOD_SCALAR_DIV_VEC: gr_method = 455;
474pub const gr_method_GR_METHOD_SCALAR_DIVEXACT_VEC: gr_method = 456;
475pub const gr_method_GR_METHOD_SCALAR_POW_VEC: gr_method = 457;
476pub const gr_method_GR_METHOD_VEC_ADD_OTHER: gr_method = 458;
477pub const gr_method_GR_METHOD_VEC_SUB_OTHER: gr_method = 459;
478pub const gr_method_GR_METHOD_VEC_MUL_OTHER: gr_method = 460;
479pub const gr_method_GR_METHOD_VEC_DIV_OTHER: gr_method = 461;
480pub const gr_method_GR_METHOD_VEC_DIVEXACT_OTHER: gr_method = 462;
481pub const gr_method_GR_METHOD_VEC_POW_OTHER: gr_method = 463;
482pub const gr_method_GR_METHOD_OTHER_ADD_VEC: gr_method = 464;
483pub const gr_method_GR_METHOD_OTHER_SUB_VEC: gr_method = 465;
484pub const gr_method_GR_METHOD_OTHER_MUL_VEC: gr_method = 466;
485pub const gr_method_GR_METHOD_OTHER_DIV_VEC: gr_method = 467;
486pub const gr_method_GR_METHOD_OTHER_DIVEXACT_VEC: gr_method = 468;
487pub const gr_method_GR_METHOD_OTHER_POW_VEC: gr_method = 469;
488pub const gr_method_GR_METHOD_VEC_ADD_SCALAR_OTHER: gr_method = 470;
489pub const gr_method_GR_METHOD_VEC_SUB_SCALAR_OTHER: gr_method = 471;
490pub const gr_method_GR_METHOD_VEC_MUL_SCALAR_OTHER: gr_method = 472;
491pub const gr_method_GR_METHOD_VEC_DIV_SCALAR_OTHER: gr_method = 473;
492pub const gr_method_GR_METHOD_VEC_DIVEXACT_SCALAR_OTHER: gr_method = 474;
493pub const gr_method_GR_METHOD_VEC_POW_SCALAR_OTHER: gr_method = 475;
494pub const gr_method_GR_METHOD_SCALAR_OTHER_ADD_VEC: gr_method = 476;
495pub const gr_method_GR_METHOD_SCALAR_OTHER_SUB_VEC: gr_method = 477;
496pub const gr_method_GR_METHOD_SCALAR_OTHER_MUL_VEC: gr_method = 478;
497pub const gr_method_GR_METHOD_SCALAR_OTHER_DIV_VEC: gr_method = 479;
498pub const gr_method_GR_METHOD_SCALAR_OTHER_DIVEXACT_VEC: gr_method = 480;
499pub const gr_method_GR_METHOD_SCALAR_OTHER_POW_VEC: gr_method = 481;
500pub const gr_method_GR_METHOD_VEC_ADD_SCALAR_SI: gr_method = 482;
501pub const gr_method_GR_METHOD_VEC_ADD_SCALAR_UI: gr_method = 483;
502pub const gr_method_GR_METHOD_VEC_ADD_SCALAR_FMPZ: gr_method = 484;
503pub const gr_method_GR_METHOD_VEC_ADD_SCALAR_FMPQ: gr_method = 485;
504pub const gr_method_GR_METHOD_VEC_SUB_SCALAR_SI: gr_method = 486;
505pub const gr_method_GR_METHOD_VEC_SUB_SCALAR_UI: gr_method = 487;
506pub const gr_method_GR_METHOD_VEC_SUB_SCALAR_FMPZ: gr_method = 488;
507pub const gr_method_GR_METHOD_VEC_SUB_SCALAR_FMPQ: gr_method = 489;
508pub const gr_method_GR_METHOD_VEC_MUL_SCALAR_SI: gr_method = 490;
509pub const gr_method_GR_METHOD_VEC_MUL_SCALAR_UI: gr_method = 491;
510pub const gr_method_GR_METHOD_VEC_MUL_SCALAR_FMPZ: gr_method = 492;
511pub const gr_method_GR_METHOD_VEC_MUL_SCALAR_FMPQ: gr_method = 493;
512pub const gr_method_GR_METHOD_VEC_DIV_SCALAR_SI: gr_method = 494;
513pub const gr_method_GR_METHOD_VEC_DIV_SCALAR_UI: gr_method = 495;
514pub const gr_method_GR_METHOD_VEC_DIV_SCALAR_FMPZ: gr_method = 496;
515pub const gr_method_GR_METHOD_VEC_DIV_SCALAR_FMPQ: gr_method = 497;
516pub const gr_method_GR_METHOD_VEC_DIVEXACT_SCALAR_SI: gr_method = 498;
517pub const gr_method_GR_METHOD_VEC_DIVEXACT_SCALAR_UI: gr_method = 499;
518pub const gr_method_GR_METHOD_VEC_DIVEXACT_SCALAR_FMPZ: gr_method = 500;
519pub const gr_method_GR_METHOD_VEC_DIVEXACT_SCALAR_FMPQ: gr_method = 501;
520pub const gr_method_GR_METHOD_VEC_POW_SCALAR_SI: gr_method = 502;
521pub const gr_method_GR_METHOD_VEC_POW_SCALAR_UI: gr_method = 503;
522pub const gr_method_GR_METHOD_VEC_POW_SCALAR_FMPZ: gr_method = 504;
523pub const gr_method_GR_METHOD_VEC_POW_SCALAR_FMPQ: gr_method = 505;
524pub const gr_method_GR_METHOD_VEC_MUL_SCALAR_2EXP_SI: gr_method = 506;
525pub const gr_method_GR_METHOD_VEC_MUL_SCALAR_2EXP_FMPZ: gr_method = 507;
526pub const gr_method_GR_METHOD_VEC_ADDMUL_SCALAR: gr_method = 508;
527pub const gr_method_GR_METHOD_VEC_SUBMUL_SCALAR: gr_method = 509;
528pub const gr_method_GR_METHOD_VEC_ADDMUL_SCALAR_SI: gr_method = 510;
529pub const gr_method_GR_METHOD_VEC_SUBMUL_SCALAR_SI: gr_method = 511;
530pub const gr_method_GR_METHOD_VEC_ADDMUL_SCALAR_FMPZ: gr_method = 512;
531pub const gr_method_GR_METHOD_VEC_SUM: gr_method = 513;
532pub const gr_method_GR_METHOD_VEC_PRODUCT: gr_method = 514;
533pub const gr_method_GR_METHOD_VEC_DOT: gr_method = 515;
534pub const gr_method_GR_METHOD_VEC_DOT_REV: gr_method = 516;
535pub const gr_method_GR_METHOD_VEC_DOT_UI: gr_method = 517;
536pub const gr_method_GR_METHOD_VEC_DOT_SI: gr_method = 518;
537pub const gr_method_GR_METHOD_VEC_DOT_FMPZ: gr_method = 519;
538pub const gr_method_GR_METHOD_VEC_SET_POWERS: gr_method = 520;
539pub const gr_method_GR_METHOD_VEC_RECIPROCALS: gr_method = 521;
540pub const gr_method_GR_METHOD_POLY_MULLOW: gr_method = 522;
541pub const gr_method_GR_METHOD_POLY_MULMID: gr_method = 523;
542pub const gr_method_GR_METHOD_POLY_DIV: gr_method = 524;
543pub const gr_method_GR_METHOD_POLY_DIVREM: gr_method = 525;
544pub const gr_method_GR_METHOD_POLY_DIVEXACT: gr_method = 526;
545pub const gr_method_GR_METHOD_POLY_GCD: gr_method = 527;
546pub const gr_method_GR_METHOD_POLY_XGCD: gr_method = 528;
547pub const gr_method_GR_METHOD_POLY_TAYLOR_SHIFT: gr_method = 529;
548pub const gr_method_GR_METHOD_POLY_INV_SERIES: gr_method = 530;
549pub const gr_method_GR_METHOD_POLY_INV_SERIES_BASECASE: gr_method = 531;
550pub const gr_method_GR_METHOD_POLY_DIV_SERIES: gr_method = 532;
551pub const gr_method_GR_METHOD_POLY_DIV_SERIES_BASECASE: gr_method = 533;
552pub const gr_method_GR_METHOD_POLY_RSQRT_SERIES: gr_method = 534;
553pub const gr_method_GR_METHOD_POLY_SQRT_SERIES: gr_method = 535;
554pub const gr_method_GR_METHOD_POLY_EXP_SERIES: gr_method = 536;
555pub const gr_method_GR_METHOD_POLY_FACTOR: gr_method = 537;
556pub const gr_method_GR_METHOD_POLY_ROOTS: gr_method = 538;
557pub const gr_method_GR_METHOD_POLY_ROOTS_OTHER: gr_method = 539;
558pub const gr_method_GR_METHOD_MAT_MUL: gr_method = 540;
559pub const gr_method_GR_METHOD_MAT_NONSINGULAR_SOLVE_TRIL: gr_method = 541;
560pub const gr_method_GR_METHOD_MAT_NONSINGULAR_SOLVE_TRIU: gr_method = 542;
561pub const gr_method_GR_METHOD_MAT_LU: gr_method = 543;
562pub const gr_method_GR_METHOD_MAT_DET: gr_method = 544;
563pub const gr_method_GR_METHOD_MAT_LQ: gr_method = 545;
564pub const gr_method_GR_METHOD_MAT_EXP: gr_method = 546;
565pub const gr_method_GR_METHOD_MAT_LOG: gr_method = 547;
566pub const gr_method_GR_METHOD_MAT_FIND_NONZERO_PIVOT: gr_method = 548;
567pub const gr_method_GR_METHOD_MAT_DIAGONALIZATION: gr_method = 549;
568pub const gr_method_GR_METHOD_MAT_CHARPOLY: gr_method = 550;
569pub const gr_method_GR_METHOD_MAT_REDUCE_ROW: gr_method = 551;
570pub const gr_method_GR_METHOD_MAT_PERMANENT: gr_method = 552;
571pub const gr_method_GR_METHOD_TAB_SIZE: gr_method = 553;
572pub type gr_method = libc::c_uint;
573pub type gr_static_method_table = [gr_funcptr; 553usize];
574#[repr(C)]
575pub struct gr_method_tab_input {
576 pub index: gr_method,
577 pub function: gr_funcptr,
578}
579#[allow(clippy::unnecessary_operation, clippy::identity_op)]
580const _: () = {
581 ["Size of gr_method_tab_input"][::std::mem::size_of::<gr_method_tab_input>() - 16usize];
582 ["Alignment of gr_method_tab_input"][::std::mem::align_of::<gr_method_tab_input>() - 8usize];
583 ["Offset of field: gr_method_tab_input::index"]
584 [::std::mem::offset_of!(gr_method_tab_input, index) - 0usize];
585 ["Offset of field: gr_method_tab_input::function"]
586 [::std::mem::offset_of!(gr_method_tab_input, function) - 8usize];
587};
588impl Default for gr_method_tab_input {
589 fn default() -> Self {
590 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
591 unsafe {
592 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
593 s.assume_init()
594 }
595 }
596}
597pub const gr_which_structure_GR_CTX_FMPZ: gr_which_structure = 0;
598pub const gr_which_structure_GR_CTX_RADIX_INTEGER: gr_which_structure = 1;
599pub const gr_which_structure_GR_CTX_FMPQ: gr_which_structure = 2;
600pub const gr_which_structure_GR_CTX_FMPZI: gr_which_structure = 3;
601pub const gr_which_structure_GR_CTX_FMPZ_MOD: gr_which_structure = 4;
602pub const gr_which_structure_GR_CTX_NMOD: gr_which_structure = 5;
603pub const gr_which_structure_GR_CTX_NMOD8: gr_which_structure = 6;
604pub const gr_which_structure_GR_CTX_NMOD32: gr_which_structure = 7;
605pub const gr_which_structure_GR_CTX_NMOD_REDC: gr_which_structure = 8;
606pub const gr_which_structure_GR_CTX_NMOD_REDC_FAST: gr_which_structure = 9;
607pub const gr_which_structure_GR_CTX_MPN_MOD: gr_which_structure = 10;
608pub const gr_which_structure_GR_CTX_FQ: gr_which_structure = 11;
609pub const gr_which_structure_GR_CTX_FQ_NMOD: gr_which_structure = 12;
610pub const gr_which_structure_GR_CTX_FQ_ZECH: gr_which_structure = 13;
611pub const gr_which_structure_GR_CTX_NF: gr_which_structure = 14;
612pub const gr_which_structure_GR_CTX_REAL_ALGEBRAIC_QQBAR: gr_which_structure = 15;
613pub const gr_which_structure_GR_CTX_COMPLEX_ALGEBRAIC_QQBAR: gr_which_structure = 16;
614pub const gr_which_structure_GR_CTX_REAL_ALGEBRAIC_CA: gr_which_structure = 17;
615pub const gr_which_structure_GR_CTX_COMPLEX_ALGEBRAIC_CA: gr_which_structure = 18;
616pub const gr_which_structure_GR_CTX_RR_CA: gr_which_structure = 19;
617pub const gr_which_structure_GR_CTX_CC_CA: gr_which_structure = 20;
618pub const gr_which_structure_GR_CTX_COMPLEX_EXTENDED_CA: gr_which_structure = 21;
619pub const gr_which_structure_GR_CTX_RR_ARB: gr_which_structure = 22;
620pub const gr_which_structure_GR_CTX_CC_ACB: gr_which_structure = 23;
621pub const gr_which_structure_GR_CTX_REAL_FLOAT_ARF: gr_which_structure = 24;
622pub const gr_which_structure_GR_CTX_COMPLEX_FLOAT_ACF: gr_which_structure = 25;
623pub const gr_which_structure_GR_CTX_NFLOAT: gr_which_structure = 26;
624pub const gr_which_structure_GR_CTX_NFLOAT_COMPLEX: gr_which_structure = 27;
625pub const gr_which_structure_GR_CTX_MPF: gr_which_structure = 28;
626pub const gr_which_structure_GR_CTX_FMPZ_POLY: gr_which_structure = 29;
627pub const gr_which_structure_GR_CTX_FMPQ_POLY: gr_which_structure = 30;
628pub const gr_which_structure_GR_CTX_GR_POLY: gr_which_structure = 31;
629pub const gr_which_structure_GR_CTX_FMPZ_MPOLY: gr_which_structure = 32;
630pub const gr_which_structure_GR_CTX_FMPQ_MPOLY: gr_which_structure = 33;
631pub const gr_which_structure_GR_CTX_GR_MPOLY: gr_which_structure = 34;
632pub const gr_which_structure_GR_CTX_FMPZ_MPOLY_Q: gr_which_structure = 35;
633pub const gr_which_structure_GR_CTX_FMPZ_MOD_MPOLY_Q: gr_which_structure = 36;
634pub const gr_which_structure_GR_CTX_GR_ORE_POLY: gr_which_structure = 37;
635pub const gr_which_structure_GR_CTX_GR_FRACTION: gr_which_structure = 38;
636pub const gr_which_structure_GR_CTX_GR_COMPLEX: gr_which_structure = 39;
637pub const gr_which_structure_GR_CTX_GR_SERIES: gr_which_structure = 40;
638pub const gr_which_structure_GR_CTX_SERIES_MOD_GR_POLY: gr_which_structure = 41;
639pub const gr_which_structure_GR_CTX_GR_MAT: gr_which_structure = 42;
640pub const gr_which_structure_GR_CTX_GR_VEC: gr_which_structure = 43;
641pub const gr_which_structure_GR_CTX_PSL2Z: gr_which_structure = 44;
642pub const gr_which_structure_GR_CTX_DIRICHLET_GROUP: gr_which_structure = 45;
643pub const gr_which_structure_GR_CTX_PERM: gr_which_structure = 46;
644pub const gr_which_structure_GR_CTX_FEXPR: gr_which_structure = 47;
645pub const gr_which_structure_GR_CTX_DEBUG: gr_which_structure = 48;
646pub const gr_which_structure_GR_CTX_UNINITIALIZED: gr_which_structure = 49;
647pub const gr_which_structure_GR_CTX_UNKNOWN_DOMAIN: gr_which_structure = 50;
648pub const gr_which_structure_GR_CTX_WHICH_STRUCTURE_TAB_SIZE: gr_which_structure = 51;
649pub type gr_which_structure = libc::c_uint;
650pub type gr_method_init_clear_op =
651 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ptr, arg2: gr_ctx_ptr)>;
652pub type gr_method_swap_op =
653 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ptr, arg2: gr_ptr, arg3: gr_ctx_ptr)>;
654pub type gr_method_ctx =
655 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ctx_ptr) -> libc::c_int>;
656pub type gr_method_ctx_void_op = ::std::option::Option<unsafe extern "C" fn(arg1: gr_ctx_ptr)>;
657pub type gr_method_ctx_base =
658 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ctx_ptr) -> gr_ctx_ptr>;
659pub type gr_method_ctx_predicate =
660 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ctx_ptr) -> truth_t>;
661pub type gr_method_ctx_size =
662 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ctx_ptr) -> slong>;
663pub type gr_method_ctx_gen_name = ::std::option::Option<
664 unsafe extern "C" fn(
665 arg1: *mut *mut libc::c_char,
666 arg2: slong,
667 arg3: gr_ctx_ptr,
668 ) -> libc::c_int,
669>;
670pub type gr_method_ctx_set_si =
671 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ctx_ptr, arg2: slong) -> libc::c_int>;
672pub type gr_method_ctx_get_si =
673 ::std::option::Option<unsafe extern "C" fn(arg1: *mut slong, arg2: gr_ctx_ptr) -> libc::c_int>;
674pub type gr_method_ctx_set_truth =
675 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ctx_ptr, arg2: truth_t) -> libc::c_int>;
676pub type gr_method_ctx_stream = ::std::option::Option<
677 unsafe extern "C" fn(arg1: *mut gr_stream_struct, arg2: gr_ctx_ptr) -> libc::c_int,
678>;
679pub type gr_method_ctx_set_str = ::std::option::Option<
680 unsafe extern "C" fn(arg1: gr_ctx_ptr, arg2: *const libc::c_char) -> libc::c_int,
681>;
682pub type gr_method_ctx_set_strs = ::std::option::Option<
683 unsafe extern "C" fn(arg1: gr_ctx_ptr, arg2: *mut *const libc::c_char) -> libc::c_int,
684>;
685pub type gr_method_stream_in = ::std::option::Option<
686 unsafe extern "C" fn(
687 arg1: *mut gr_stream_struct,
688 arg2: gr_srcptr,
689 arg3: gr_ctx_ptr,
690 ) -> libc::c_int,
691>;
692pub type gr_method_stream_in_si = ::std::option::Option<
693 unsafe extern "C" fn(
694 arg1: *mut gr_stream_struct,
695 arg2: gr_srcptr,
696 arg3: slong,
697 arg4: gr_ctx_ptr,
698 ) -> libc::c_int,
699>;
700pub type gr_method_randtest = ::std::option::Option<
701 unsafe extern "C" fn(
702 arg1: gr_ptr,
703 state: *mut flint_rand_struct,
704 arg2: gr_ctx_ptr,
705 ) -> libc::c_int,
706>;
707pub type gr_method_constant_op =
708 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ptr, arg2: gr_ctx_ptr) -> libc::c_int>;
709pub type gr_method_constant_op_get_si =
710 ::std::option::Option<unsafe extern "C" fn(arg1: *mut slong, arg2: gr_ctx_ptr) -> libc::c_int>;
711pub type gr_method_constant_op_get_fmpz =
712 ::std::option::Option<unsafe extern "C" fn(arg1: *mut fmpz, arg2: gr_ctx_ptr) -> libc::c_int>;
713pub type gr_method_void_unary_op =
714 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ptr, arg2: gr_srcptr, arg3: gr_ctx_ptr)>;
715pub type gr_method_unary_op = ::std::option::Option<
716 unsafe extern "C" fn(arg1: gr_ptr, arg2: gr_srcptr, arg3: gr_ctx_ptr) -> libc::c_int,
717>;
718pub type gr_method_unary_op_si = ::std::option::Option<
719 unsafe extern "C" fn(arg1: gr_ptr, arg2: slong, arg3: gr_ctx_ptr) -> libc::c_int,
720>;
721pub type gr_method_unary_op_ui = ::std::option::Option<
722 unsafe extern "C" fn(arg1: gr_ptr, arg2: ulong, arg3: gr_ctx_ptr) -> libc::c_int,
723>;
724pub type gr_method_unary_op_fmpz = ::std::option::Option<
725 unsafe extern "C" fn(arg1: gr_ptr, arg2: *const fmpz, arg3: gr_ctx_ptr) -> libc::c_int,
726>;
727pub type gr_method_unary_op_fmpq = ::std::option::Option<
728 unsafe extern "C" fn(arg1: gr_ptr, arg2: *const fmpq, arg3: gr_ctx_ptr) -> libc::c_int,
729>;
730pub type gr_method_unary_op_d = ::std::option::Option<
731 unsafe extern "C" fn(arg1: gr_ptr, arg2: f64, arg3: gr_ctx_ptr) -> libc::c_int,
732>;
733pub type gr_method_unary_op_other = ::std::option::Option<
734 unsafe extern "C" fn(
735 arg1: gr_ptr,
736 arg2: gr_srcptr,
737 arg3: gr_ctx_ptr,
738 arg4: gr_ctx_ptr,
739 ) -> libc::c_int,
740>;
741pub type gr_method_unary_op_str = ::std::option::Option<
742 unsafe extern "C" fn(arg1: gr_ptr, arg2: *const libc::c_char, arg3: gr_ctx_ptr) -> libc::c_int,
743>;
744pub type gr_method_unary_op_get_ui = ::std::option::Option<
745 unsafe extern "C" fn(arg1: *mut ulong, arg2: gr_srcptr, arg3: gr_ctx_ptr) -> libc::c_int,
746>;
747pub type gr_method_unary_op_get_si = ::std::option::Option<
748 unsafe extern "C" fn(arg1: *mut slong, arg2: gr_srcptr, arg3: gr_ctx_ptr) -> libc::c_int,
749>;
750pub type gr_method_unary_op_get_fmpz = ::std::option::Option<
751 unsafe extern "C" fn(arg1: *mut fmpz, arg2: gr_srcptr, arg3: gr_ctx_ptr) -> libc::c_int,
752>;
753pub type gr_method_unary_op_get_fmpq = ::std::option::Option<
754 unsafe extern "C" fn(arg1: *mut fmpq, arg2: gr_srcptr, arg3: gr_ctx_ptr) -> libc::c_int,
755>;
756pub type gr_method_unary_op_get_d = ::std::option::Option<
757 unsafe extern "C" fn(arg1: *mut f64, arg2: gr_srcptr, arg3: gr_ctx_ptr) -> libc::c_int,
758>;
759pub type gr_method_unary_op_get_d_si = ::std::option::Option<
760 unsafe extern "C" fn(
761 arg1: *mut f64,
762 arg2: *mut slong,
763 arg3: gr_srcptr,
764 arg4: gr_ctx_ptr,
765 ) -> libc::c_int,
766>;
767pub type gr_method_unary_op_get_fmpz_fmpz = ::std::option::Option<
768 unsafe extern "C" fn(
769 arg1: *mut fmpz,
770 arg2: *mut fmpz,
771 arg3: gr_srcptr,
772 arg4: gr_ctx_ptr,
773 ) -> libc::c_int,
774>;
775pub type gr_method_unary_op_with_flag = ::std::option::Option<
776 unsafe extern "C" fn(
777 arg1: gr_ptr,
778 arg2: gr_srcptr,
779 arg3: libc::c_int,
780 arg4: gr_ctx_ptr,
781 ) -> libc::c_int,
782>;
783pub type gr_method_binary_unary_op = ::std::option::Option<
784 unsafe extern "C" fn(
785 arg1: gr_ptr,
786 arg2: gr_ptr,
787 arg3: gr_srcptr,
788 arg4: gr_ctx_ptr,
789 ) -> libc::c_int,
790>;
791pub type gr_method_binary_unary_op_with_flag = ::std::option::Option<
792 unsafe extern "C" fn(
793 arg1: gr_ptr,
794 arg2: gr_ptr,
795 arg3: gr_srcptr,
796 arg4: libc::c_int,
797 arg5: gr_ctx_ptr,
798 ) -> libc::c_int,
799>;
800pub type gr_method_quaternary_unary_op = ::std::option::Option<
801 unsafe extern "C" fn(
802 arg1: gr_ptr,
803 arg2: gr_ptr,
804 arg3: gr_ptr,
805 arg4: gr_ptr,
806 arg5: gr_srcptr,
807 arg6: gr_ctx_ptr,
808 ) -> libc::c_int,
809>;
810pub type gr_method_binary_op = ::std::option::Option<
811 unsafe extern "C" fn(
812 arg1: gr_ptr,
813 arg2: gr_srcptr,
814 arg3: gr_srcptr,
815 arg4: gr_ctx_ptr,
816 ) -> libc::c_int,
817>;
818pub type gr_method_binary_op_si = ::std::option::Option<
819 unsafe extern "C" fn(
820 arg1: gr_ptr,
821 arg2: gr_srcptr,
822 arg3: slong,
823 arg4: gr_ctx_ptr,
824 ) -> libc::c_int,
825>;
826pub type gr_method_binary_op_ui = ::std::option::Option<
827 unsafe extern "C" fn(
828 arg1: gr_ptr,
829 arg2: gr_srcptr,
830 arg3: ulong,
831 arg4: gr_ctx_ptr,
832 ) -> libc::c_int,
833>;
834pub type gr_method_binary_op_fmpz = ::std::option::Option<
835 unsafe extern "C" fn(
836 arg1: gr_ptr,
837 arg2: gr_srcptr,
838 arg3: *const fmpz,
839 arg4: gr_ctx_ptr,
840 ) -> libc::c_int,
841>;
842pub type gr_method_binary_op_fmpz_fmpz = ::std::option::Option<
843 unsafe extern "C" fn(
844 arg1: gr_ptr,
845 arg2: *const fmpz,
846 arg3: *const fmpz,
847 arg4: gr_ctx_ptr,
848 ) -> libc::c_int,
849>;
850pub type gr_method_binary_op_fmpz_si = ::std::option::Option<
851 unsafe extern "C" fn(
852 arg1: gr_ptr,
853 arg2: *const fmpz,
854 arg3: slong,
855 arg4: gr_ctx_ptr,
856 ) -> libc::c_int,
857>;
858pub type gr_method_binary_op_fmpq = ::std::option::Option<
859 unsafe extern "C" fn(
860 arg1: gr_ptr,
861 arg2: gr_srcptr,
862 arg3: *const fmpq,
863 arg4: gr_ctx_ptr,
864 ) -> libc::c_int,
865>;
866pub type gr_method_binary_op_other = ::std::option::Option<
867 unsafe extern "C" fn(
868 arg1: gr_ptr,
869 arg2: gr_srcptr,
870 arg3: gr_srcptr,
871 arg4: gr_ctx_ptr,
872 arg5: gr_ctx_ptr,
873 ) -> libc::c_int,
874>;
875pub type gr_method_other_binary_op = ::std::option::Option<
876 unsafe extern "C" fn(
877 arg1: gr_ptr,
878 arg2: gr_srcptr,
879 arg3: gr_ctx_ptr,
880 arg4: gr_srcptr,
881 arg5: gr_ctx_ptr,
882 ) -> libc::c_int,
883>;
884pub type gr_method_si_binary_op = ::std::option::Option<
885 unsafe extern "C" fn(
886 arg1: gr_ptr,
887 arg2: slong,
888 arg3: gr_srcptr,
889 arg4: gr_ctx_ptr,
890 ) -> libc::c_int,
891>;
892pub type gr_method_ui_binary_op = ::std::option::Option<
893 unsafe extern "C" fn(
894 arg1: gr_ptr,
895 arg2: ulong,
896 arg3: gr_srcptr,
897 arg4: gr_ctx_ptr,
898 ) -> libc::c_int,
899>;
900pub type gr_method_fmpz_binary_op = ::std::option::Option<
901 unsafe extern "C" fn(
902 arg1: gr_ptr,
903 arg2: *const fmpz,
904 arg3: gr_srcptr,
905 arg4: gr_ctx_ptr,
906 ) -> libc::c_int,
907>;
908pub type gr_method_fmpq_binary_op = ::std::option::Option<
909 unsafe extern "C" fn(
910 arg1: gr_ptr,
911 arg2: *const fmpq,
912 arg3: gr_srcptr,
913 arg4: gr_ctx_ptr,
914 ) -> libc::c_int,
915>;
916pub type gr_method_binary_op_ui_ui = ::std::option::Option<
917 unsafe extern "C" fn(arg1: gr_ptr, arg2: ulong, arg3: ulong, arg4: gr_ctx_ptr) -> libc::c_int,
918>;
919pub type gr_method_binary_op_ui_si = ::std::option::Option<
920 unsafe extern "C" fn(arg1: gr_ptr, arg2: ulong, arg3: slong, arg4: gr_ctx_ptr) -> libc::c_int,
921>;
922pub type gr_method_binary_op_get_int = ::std::option::Option<
923 unsafe extern "C" fn(
924 arg1: *mut libc::c_int,
925 arg2: gr_srcptr,
926 arg3: gr_srcptr,
927 arg4: gr_ctx_ptr,
928 ) -> libc::c_int,
929>;
930pub type gr_method_binary_op_other_get_int = ::std::option::Option<
931 unsafe extern "C" fn(
932 arg1: *mut libc::c_int,
933 arg2: gr_srcptr,
934 arg3: gr_srcptr,
935 arg4: gr_ctx_ptr,
936 arg5: gr_ctx_ptr,
937 ) -> libc::c_int,
938>;
939pub type gr_method_binary_binary_op = ::std::option::Option<
940 unsafe extern "C" fn(
941 arg1: gr_ptr,
942 arg2: gr_ptr,
943 arg3: gr_srcptr,
944 arg4: gr_srcptr,
945 arg5: gr_ctx_ptr,
946 ) -> libc::c_int,
947>;
948pub type gr_method_binary_op_with_flag = ::std::option::Option<
949 unsafe extern "C" fn(
950 arg1: gr_ptr,
951 arg2: gr_srcptr,
952 arg3: gr_srcptr,
953 arg4: libc::c_int,
954 arg5: gr_ctx_ptr,
955 ) -> libc::c_int,
956>;
957pub type gr_method_binary_binary_op_ui_ui = ::std::option::Option<
958 unsafe extern "C" fn(
959 arg1: gr_ptr,
960 arg2: gr_ptr,
961 arg3: ulong,
962 arg4: ulong,
963 arg5: gr_ctx_ptr,
964 ) -> libc::c_int,
965>;
966pub type gr_method_ternary_op = ::std::option::Option<
967 unsafe extern "C" fn(
968 arg1: gr_ptr,
969 arg2: gr_srcptr,
970 arg3: gr_srcptr,
971 arg4: gr_srcptr,
972 arg5: gr_ctx_ptr,
973 ) -> libc::c_int,
974>;
975pub type gr_method_ternary_op_with_flag = ::std::option::Option<
976 unsafe extern "C" fn(
977 arg1: gr_ptr,
978 arg2: gr_srcptr,
979 arg3: gr_srcptr,
980 arg4: gr_srcptr,
981 arg5: libc::c_int,
982 arg6: gr_ctx_ptr,
983 ) -> libc::c_int,
984>;
985pub type gr_method_ternary_unary_op = ::std::option::Option<
986 unsafe extern "C" fn(
987 arg1: gr_ptr,
988 arg2: gr_ptr,
989 arg3: gr_ptr,
990 arg4: gr_srcptr,
991 arg5: gr_ctx_ptr,
992 ) -> libc::c_int,
993>;
994pub type gr_method_quaternary_op = ::std::option::Option<
995 unsafe extern "C" fn(
996 arg1: gr_ptr,
997 arg2: gr_srcptr,
998 arg3: gr_srcptr,
999 arg4: gr_srcptr,
1000 arg5: gr_srcptr,
1001 arg6: gr_ctx_ptr,
1002 ) -> libc::c_int,
1003>;
1004pub type gr_method_quaternary_op_with_flag = ::std::option::Option<
1005 unsafe extern "C" fn(
1006 arg1: gr_ptr,
1007 arg2: gr_srcptr,
1008 arg3: gr_srcptr,
1009 arg4: gr_srcptr,
1010 arg5: gr_srcptr,
1011 arg6: libc::c_int,
1012 arg7: gr_ctx_ptr,
1013 ) -> libc::c_int,
1014>;
1015pub type gr_method_quaternary_binary_op = ::std::option::Option<
1016 unsafe extern "C" fn(
1017 arg1: gr_ptr,
1018 arg2: gr_ptr,
1019 arg3: gr_ptr,
1020 arg4: gr_ptr,
1021 arg5: gr_srcptr,
1022 arg6: gr_srcptr,
1023 arg7: gr_ctx_ptr,
1024 ) -> libc::c_int,
1025>;
1026pub type gr_method_quaternary_ternary_op = ::std::option::Option<
1027 unsafe extern "C" fn(
1028 arg1: gr_ptr,
1029 arg2: gr_ptr,
1030 arg3: gr_ptr,
1031 arg4: gr_ptr,
1032 arg5: gr_srcptr,
1033 arg6: gr_srcptr,
1034 arg7: gr_srcptr,
1035 arg8: gr_ctx_ptr,
1036 ) -> libc::c_int,
1037>;
1038pub type gr_method_si_si_quaternary_op = ::std::option::Option<
1039 unsafe extern "C" fn(
1040 arg1: gr_ptr,
1041 arg2: slong,
1042 arg3: slong,
1043 arg4: gr_srcptr,
1044 arg5: gr_srcptr,
1045 arg6: gr_ctx_ptr,
1046 ) -> libc::c_int,
1047>;
1048pub type gr_method_unary_predicate =
1049 ::std::option::Option<unsafe extern "C" fn(arg1: gr_srcptr, arg2: gr_ctx_ptr) -> truth_t>;
1050pub type gr_method_binary_predicate = ::std::option::Option<
1051 unsafe extern "C" fn(arg1: gr_srcptr, arg2: gr_srcptr, arg3: gr_ctx_ptr) -> truth_t,
1052>;
1053pub type gr_method_vec_init_clear_op =
1054 ::std::option::Option<unsafe extern "C" fn(arg1: gr_ptr, arg2: slong, arg3: gr_ctx_ptr)>;
1055pub type gr_method_vec_swap_op = ::std::option::Option<
1056 unsafe extern "C" fn(arg1: gr_ptr, arg2: gr_ptr, arg3: slong, arg4: gr_ctx_ptr),
1057>;
1058pub type gr_method_vec_constant_op = ::std::option::Option<
1059 unsafe extern "C" fn(arg1: gr_ptr, arg2: slong, arg3: gr_ctx_ptr) -> libc::c_int,
1060>;
1061pub type gr_method_vec_op = ::std::option::Option<
1062 unsafe extern "C" fn(
1063 arg1: gr_ptr,
1064 arg2: gr_srcptr,
1065 arg3: slong,
1066 arg4: gr_ctx_ptr,
1067 ) -> libc::c_int,
1068>;
1069pub type gr_method_vec_vec_op = ::std::option::Option<
1070 unsafe extern "C" fn(
1071 arg1: gr_ptr,
1072 arg2: gr_srcptr,
1073 arg3: gr_srcptr,
1074 arg4: slong,
1075 arg5: gr_ctx_ptr,
1076 ) -> libc::c_int,
1077>;
1078pub type gr_method_vec_scalar_op = ::std::option::Option<
1079 unsafe extern "C" fn(
1080 arg1: gr_ptr,
1081 arg2: gr_srcptr,
1082 arg3: slong,
1083 arg4: gr_srcptr,
1084 arg5: gr_ctx_ptr,
1085 ) -> libc::c_int,
1086>;
1087pub type gr_method_scalar_vec_op = ::std::option::Option<
1088 unsafe extern "C" fn(
1089 arg1: gr_ptr,
1090 arg2: gr_srcptr,
1091 arg3: gr_srcptr,
1092 arg4: slong,
1093 arg5: gr_ctx_ptr,
1094 ) -> libc::c_int,
1095>;
1096pub type gr_method_vec_op_other = ::std::option::Option<
1097 unsafe extern "C" fn(
1098 arg1: gr_ptr,
1099 arg2: gr_srcptr,
1100 arg3: gr_srcptr,
1101 arg4: gr_ctx_ptr,
1102 arg5: slong,
1103 arg6: gr_ctx_ptr,
1104 ) -> libc::c_int,
1105>;
1106pub type gr_method_other_op_vec = ::std::option::Option<
1107 unsafe extern "C" fn(
1108 arg1: gr_ptr,
1109 arg2: gr_srcptr,
1110 arg3: gr_ctx_ptr,
1111 arg4: gr_srcptr,
1112 arg5: slong,
1113 arg6: gr_ctx_ptr,
1114 ) -> libc::c_int,
1115>;
1116pub type gr_method_vec_op_scalar_other = ::std::option::Option<
1117 unsafe extern "C" fn(
1118 arg1: gr_ptr,
1119 arg2: gr_srcptr,
1120 arg3: slong,
1121 arg4: gr_srcptr,
1122 arg5: gr_ctx_ptr,
1123 arg6: gr_ctx_ptr,
1124 ) -> libc::c_int,
1125>;
1126pub type gr_method_scalar_other_op_vec = ::std::option::Option<
1127 unsafe extern "C" fn(
1128 arg1: gr_ptr,
1129 arg2: gr_srcptr,
1130 arg3: gr_ctx_ptr,
1131 arg4: gr_srcptr,
1132 arg5: slong,
1133 arg6: gr_ctx_ptr,
1134 ) -> libc::c_int,
1135>;
1136pub type gr_method_vec_scalar_op_si = ::std::option::Option<
1137 unsafe extern "C" fn(
1138 arg1: gr_ptr,
1139 arg2: gr_srcptr,
1140 arg3: slong,
1141 arg4: slong,
1142 arg5: gr_ctx_ptr,
1143 ) -> libc::c_int,
1144>;
1145pub type gr_method_vec_scalar_op_ui = ::std::option::Option<
1146 unsafe extern "C" fn(
1147 arg1: gr_ptr,
1148 arg2: gr_srcptr,
1149 arg3: slong,
1150 arg4: ulong,
1151 arg5: gr_ctx_ptr,
1152 ) -> libc::c_int,
1153>;
1154pub type gr_method_vec_scalar_op_fmpz = ::std::option::Option<
1155 unsafe extern "C" fn(
1156 arg1: gr_ptr,
1157 arg2: gr_srcptr,
1158 arg3: slong,
1159 arg4: *const fmpz,
1160 arg5: gr_ctx_ptr,
1161 ) -> libc::c_int,
1162>;
1163pub type gr_method_vec_scalar_op_fmpq = ::std::option::Option<
1164 unsafe extern "C" fn(
1165 arg1: gr_ptr,
1166 arg2: gr_srcptr,
1167 arg3: slong,
1168 arg4: *const fmpq,
1169 arg5: gr_ctx_ptr,
1170 ) -> libc::c_int,
1171>;
1172pub type gr_method_vec_predicate = ::std::option::Option<
1173 unsafe extern "C" fn(arg1: gr_srcptr, arg2: slong, arg3: gr_ctx_ptr) -> truth_t,
1174>;
1175pub type gr_method_vec_vec_predicate = ::std::option::Option<
1176 unsafe extern "C" fn(
1177 arg1: gr_srcptr,
1178 arg2: gr_srcptr,
1179 arg3: slong,
1180 arg4: gr_ctx_ptr,
1181 ) -> truth_t,
1182>;
1183pub type gr_method_factor_op = ::std::option::Option<
1184 unsafe extern "C" fn(
1185 arg1: gr_ptr,
1186 arg2: *mut gr_vec_struct,
1187 arg3: *mut gr_vec_struct,
1188 arg4: gr_srcptr,
1189 arg5: libc::c_int,
1190 arg6: gr_ctx_ptr,
1191 ) -> libc::c_int,
1192>;
1193pub type gr_method_poly_unary_trunc_op = ::std::option::Option<
1194 unsafe extern "C" fn(
1195 arg1: gr_ptr,
1196 arg2: gr_srcptr,
1197 arg3: slong,
1198 arg4: slong,
1199 arg5: gr_ctx_ptr,
1200 ) -> libc::c_int,
1201>;
1202pub type gr_method_poly_binary_op = ::std::option::Option<
1203 unsafe extern "C" fn(
1204 arg1: gr_ptr,
1205 arg2: gr_srcptr,
1206 arg3: slong,
1207 arg4: gr_srcptr,
1208 arg5: slong,
1209 arg6: gr_ctx_ptr,
1210 ) -> libc::c_int,
1211>;
1212pub type gr_method_poly_binary_binary_op = ::std::option::Option<
1213 unsafe extern "C" fn(
1214 arg1: gr_ptr,
1215 arg2: gr_ptr,
1216 arg3: gr_srcptr,
1217 arg4: slong,
1218 arg5: gr_srcptr,
1219 arg6: slong,
1220 arg7: gr_ctx_ptr,
1221 ) -> libc::c_int,
1222>;
1223pub type gr_method_poly_binary_trunc_op = ::std::option::Option<
1224 unsafe extern "C" fn(
1225 arg1: gr_ptr,
1226 arg2: gr_srcptr,
1227 arg3: slong,
1228 arg4: gr_srcptr,
1229 arg5: slong,
1230 arg6: slong,
1231 arg7: gr_ctx_ptr,
1232 ) -> libc::c_int,
1233>;
1234pub type gr_method_poly_binary_trunc2_op = ::std::option::Option<
1235 unsafe extern "C" fn(
1236 arg1: gr_ptr,
1237 arg2: gr_srcptr,
1238 arg3: slong,
1239 arg4: gr_srcptr,
1240 arg5: slong,
1241 arg6: slong,
1242 arg7: slong,
1243 arg8: gr_ctx_ptr,
1244 ) -> libc::c_int,
1245>;
1246pub type gr_method_poly_gcd_op = ::std::option::Option<
1247 unsafe extern "C" fn(
1248 arg1: gr_ptr,
1249 arg2: *mut slong,
1250 arg3: gr_srcptr,
1251 arg4: slong,
1252 arg5: gr_srcptr,
1253 arg6: slong,
1254 arg7: gr_ctx_ptr,
1255 ) -> libc::c_int,
1256>;
1257pub type gr_method_poly_xgcd_op = ::std::option::Option<
1258 unsafe extern "C" fn(
1259 arg1: *mut slong,
1260 arg2: gr_ptr,
1261 arg3: gr_ptr,
1262 arg4: gr_ptr,
1263 arg5: gr_srcptr,
1264 arg6: slong,
1265 arg7: gr_srcptr,
1266 arg8: slong,
1267 arg9: gr_ctx_ptr,
1268 ) -> libc::c_int,
1269>;
1270pub type gr_method_vec_ctx_op = ::std::option::Option<
1271 unsafe extern "C" fn(arg1: *mut gr_vec_struct, arg2: gr_ctx_ptr) -> libc::c_int,
1272>;
1273pub type _gr_method_get_si_op =
1274 ::std::option::Option<unsafe extern "C" fn(arg1: gr_srcptr, arg2: gr_ctx_ptr) -> slong>;
1275#[repr(C)]
1276pub struct polynomial_ctx_t {
1277 pub base_ring: *mut gr_ctx_struct,
1278 pub degree_limit: slong,
1279 pub var: *mut libc::c_char,
1280}
1281#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1282const _: () = {
1283 ["Size of polynomial_ctx_t"][::std::mem::size_of::<polynomial_ctx_t>() - 24usize];
1284 ["Alignment of polynomial_ctx_t"][::std::mem::align_of::<polynomial_ctx_t>() - 8usize];
1285 ["Offset of field: polynomial_ctx_t::base_ring"]
1286 [::std::mem::offset_of!(polynomial_ctx_t, base_ring) - 0usize];
1287 ["Offset of field: polynomial_ctx_t::degree_limit"]
1288 [::std::mem::offset_of!(polynomial_ctx_t, degree_limit) - 8usize];
1289 ["Offset of field: polynomial_ctx_t::var"]
1290 [::std::mem::offset_of!(polynomial_ctx_t, var) - 16usize];
1291};
1292impl Default for polynomial_ctx_t {
1293 fn default() -> Self {
1294 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1295 unsafe {
1296 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1297 s.assume_init()
1298 }
1299 }
1300}
1301#[repr(C)]
1302pub struct vector_ctx_t {
1303 pub base_ring: *mut gr_ctx_struct,
1304 pub all_sizes: libc::c_int,
1305 pub n: slong,
1306}
1307#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1308const _: () = {
1309 ["Size of vector_ctx_t"][::std::mem::size_of::<vector_ctx_t>() - 24usize];
1310 ["Alignment of vector_ctx_t"][::std::mem::align_of::<vector_ctx_t>() - 8usize];
1311 ["Offset of field: vector_ctx_t::base_ring"]
1312 [::std::mem::offset_of!(vector_ctx_t, base_ring) - 0usize];
1313 ["Offset of field: vector_ctx_t::all_sizes"]
1314 [::std::mem::offset_of!(vector_ctx_t, all_sizes) - 8usize];
1315 ["Offset of field: vector_ctx_t::n"][::std::mem::offset_of!(vector_ctx_t, n) - 16usize];
1316};
1317impl Default for vector_ctx_t {
1318 fn default() -> Self {
1319 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1320 unsafe {
1321 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1322 s.assume_init()
1323 }
1324 }
1325}
1326#[repr(C)]
1327pub struct matrix_ctx_t {
1328 pub base_ring: *mut gr_ctx_struct,
1329 pub all_sizes: libc::c_int,
1330 pub nrows: slong,
1331 pub ncols: slong,
1332}
1333#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1334const _: () = {
1335 ["Size of matrix_ctx_t"][::std::mem::size_of::<matrix_ctx_t>() - 32usize];
1336 ["Alignment of matrix_ctx_t"][::std::mem::align_of::<matrix_ctx_t>() - 8usize];
1337 ["Offset of field: matrix_ctx_t::base_ring"]
1338 [::std::mem::offset_of!(matrix_ctx_t, base_ring) - 0usize];
1339 ["Offset of field: matrix_ctx_t::all_sizes"]
1340 [::std::mem::offset_of!(matrix_ctx_t, all_sizes) - 8usize];
1341 ["Offset of field: matrix_ctx_t::nrows"][::std::mem::offset_of!(matrix_ctx_t, nrows) - 16usize];
1342 ["Offset of field: matrix_ctx_t::ncols"][::std::mem::offset_of!(matrix_ctx_t, ncols) - 24usize];
1343};
1344impl Default for matrix_ctx_t {
1345 fn default() -> Self {
1346 let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
1347 unsafe {
1348 ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
1349 s.assume_init()
1350 }
1351 }
1352}
1353extern "C" {
1354 #[link_name = "truth_and__extern"]
1355 pub fn truth_and(x: truth_t, y: truth_t) -> truth_t;
1356 #[link_name = "truth_or__extern"]
1357 pub fn truth_or(x: truth_t, y: truth_t) -> truth_t;
1358 #[link_name = "truth_not__extern"]
1359 pub fn truth_not(x: truth_t) -> truth_t;
1360 #[link_name = "gr_in_domain__extern"]
1361 pub fn gr_in_domain(status: libc::c_int) -> truth_t;
1362 #[link_name = "gr_check__extern"]
1363 pub fn gr_check(t: truth_t) -> libc::c_int;
1364 #[link_name = "truth_println__extern"]
1365 pub fn truth_println(x: truth_t);
1366 pub fn gr_stream_init_file(out: *mut gr_stream_struct, fp: *mut FILE);
1367 pub fn gr_stream_init_str(out: *mut gr_stream_struct);
1368 pub fn gr_stream_write(out: *mut gr_stream_struct, s: *const libc::c_char) -> libc::c_int;
1369 pub fn gr_stream_write_si(out: *mut gr_stream_struct, x: slong) -> libc::c_int;
1370 pub fn gr_stream_write_ui(out: *mut gr_stream_struct, x: ulong) -> libc::c_int;
1371 pub fn gr_stream_write_free(out: *mut gr_stream_struct, s: *mut libc::c_char) -> libc::c_int;
1372 pub fn gr_stream_write_fmpz(out: *mut gr_stream_struct, x: *const fmpz) -> libc::c_int;
1373 #[link_name = "gr_not_implemented__extern"]
1374 pub fn gr_not_implemented() -> libc::c_int;
1375 #[link_name = "gr_not_in_domain__extern"]
1376 pub fn gr_not_in_domain() -> libc::c_int;
1377 pub fn gr_method_tab_init(methods: *mut gr_funcptr, tab: *mut gr_method_tab_input);
1378 pub fn gr_method_tab_extend(methods: *mut gr_funcptr, tab: *mut gr_method_tab_input);
1379 #[link_name = "gr_ctx_data_ptr__extern"]
1380 pub fn gr_ctx_data_ptr(ctx: *mut gr_ctx_struct) -> *mut libc::c_void;
1381 #[link_name = "gr_ctx_data_as_ptr__extern"]
1382 pub fn gr_ctx_data_as_ptr(ctx: *mut gr_ctx_struct) -> *mut libc::c_void;
1383 #[link_name = "gr_ctx_sizeof_ctx__extern"]
1384 pub fn gr_ctx_sizeof_ctx() -> slong;
1385 #[link_name = "gr_ctx_sizeof_elem__extern"]
1386 pub fn gr_ctx_sizeof_elem(ctx: *mut gr_ctx_struct) -> slong;
1387 #[link_name = "gr_ctx_clear__extern"]
1388 pub fn gr_ctx_clear(ctx: *mut gr_ctx_struct);
1389 #[link_name = "gr_ctx_write__extern"]
1390 pub fn gr_ctx_write(out: *mut gr_stream_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
1391 #[link_name = "gr_ctx_is_ring__extern"]
1392 pub fn gr_ctx_is_ring(ctx: *mut gr_ctx_struct) -> truth_t;
1393 #[link_name = "gr_ctx_is_commutative_ring__extern"]
1394 pub fn gr_ctx_is_commutative_ring(ctx: *mut gr_ctx_struct) -> truth_t;
1395 #[link_name = "gr_ctx_is_integral_domain__extern"]
1396 pub fn gr_ctx_is_integral_domain(ctx: *mut gr_ctx_struct) -> truth_t;
1397 #[link_name = "gr_ctx_is_field__extern"]
1398 pub fn gr_ctx_is_field(ctx: *mut gr_ctx_struct) -> truth_t;
1399 #[link_name = "gr_ctx_is_zero_ring__extern"]
1400 pub fn gr_ctx_is_zero_ring(ctx: *mut gr_ctx_struct) -> truth_t;
1401 #[link_name = "gr_ctx_is_rational_vector_space__extern"]
1402 pub fn gr_ctx_is_rational_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
1403 #[link_name = "gr_ctx_is_real_vector_space__extern"]
1404 pub fn gr_ctx_is_real_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
1405 #[link_name = "gr_ctx_is_complex_vector_space__extern"]
1406 pub fn gr_ctx_is_complex_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
1407 #[link_name = "gr_ctx_is_unique_factorization_domain__extern"]
1408 pub fn gr_ctx_is_unique_factorization_domain(ctx: *mut gr_ctx_struct) -> truth_t;
1409 #[link_name = "gr_ctx_is_finite__extern"]
1410 pub fn gr_ctx_is_finite(ctx: *mut gr_ctx_struct) -> truth_t;
1411 #[link_name = "gr_ctx_is_finite_characteristic__extern"]
1412 pub fn gr_ctx_is_finite_characteristic(ctx: *mut gr_ctx_struct) -> truth_t;
1413 #[link_name = "gr_ctx_is_algebraically_closed__extern"]
1414 pub fn gr_ctx_is_algebraically_closed(ctx: *mut gr_ctx_struct) -> truth_t;
1415 #[link_name = "gr_ctx_is_ordered_ring__extern"]
1416 pub fn gr_ctx_is_ordered_ring(ctx: *mut gr_ctx_struct) -> truth_t;
1417 #[link_name = "gr_ctx_is_approx_commutative_ring__extern"]
1418 pub fn gr_ctx_is_approx_commutative_ring(ctx: *mut gr_ctx_struct) -> truth_t;
1419 #[link_name = "gr_ctx_is_multiplicative_group__extern"]
1420 pub fn gr_ctx_is_multiplicative_group(ctx: *mut gr_ctx_struct) -> truth_t;
1421 #[link_name = "gr_ctx_is_exact__extern"]
1422 pub fn gr_ctx_is_exact(ctx: *mut gr_ctx_struct) -> truth_t;
1423 #[link_name = "gr_ctx_is_canonical__extern"]
1424 pub fn gr_ctx_is_canonical(ctx: *mut gr_ctx_struct) -> truth_t;
1425 #[link_name = "gr_ctx_is_threadsafe__extern"]
1426 pub fn gr_ctx_is_threadsafe(ctx: *mut gr_ctx_struct) -> truth_t;
1427 #[link_name = "gr_ctx_has_real_prec__extern"]
1428 pub fn gr_ctx_has_real_prec(ctx: *mut gr_ctx_struct) -> truth_t;
1429 #[link_name = "gr_ctx_set_real_prec__extern"]
1430 pub fn gr_ctx_set_real_prec(ctx: *mut gr_ctx_struct, prec: slong) -> libc::c_int;
1431 #[link_name = "gr_ctx_get_real_prec__extern"]
1432 pub fn gr_ctx_get_real_prec(prec: *mut slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1433 #[link_name = "gr_ctx_set_is_field__extern"]
1434 pub fn gr_ctx_set_is_field(ctx: *mut gr_ctx_struct, is_field: truth_t) -> libc::c_int;
1435 #[link_name = "gr_ctx_set_gen_name__extern"]
1436 pub fn gr_ctx_set_gen_name(ctx: *mut gr_ctx_struct, s: *const libc::c_char) -> libc::c_int;
1437 #[link_name = "gr_ctx_set_gen_names__extern"]
1438 pub fn gr_ctx_set_gen_names(
1439 ctx: *mut gr_ctx_struct,
1440 s: *mut *const libc::c_char,
1441 ) -> libc::c_int;
1442 #[link_name = "gr_ctx_ngens__extern"]
1443 pub fn gr_ctx_ngens(ngens: *mut slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1444 #[link_name = "gr_ctx_gen_name__extern"]
1445 pub fn gr_ctx_gen_name(
1446 name: *mut *mut libc::c_char,
1447 i: slong,
1448 ctx: *mut gr_ctx_struct,
1449 ) -> libc::c_int;
1450 #[link_name = "_gr_ctx_get_real_prec__extern"]
1451 pub fn _gr_ctx_get_real_prec(ctx: *mut gr_ctx_struct) -> slong;
1452 #[link_name = "gr_ctx_base__extern"]
1453 pub fn gr_ctx_base(ctx: *mut gr_ctx_struct) -> gr_ptr;
1454 #[link_name = "gr_init__extern"]
1455 pub fn gr_init(res: gr_ptr, ctx: *mut gr_ctx_struct);
1456 #[link_name = "gr_clear__extern"]
1457 pub fn gr_clear(res: gr_ptr, ctx: *mut gr_ctx_struct);
1458 #[link_name = "gr_swap__extern"]
1459 pub fn gr_swap(x: gr_ptr, y: gr_ptr, ctx: *mut gr_ctx_struct);
1460 #[link_name = "gr_set_shallow__extern"]
1461 pub fn gr_set_shallow(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct);
1462 #[link_name = "_gr_length__extern"]
1463 pub fn _gr_length(x: gr_srcptr, ctx: *mut gr_ctx_struct);
1464 #[link_name = "gr_randtest__extern"]
1465 pub fn gr_randtest(
1466 x: gr_ptr,
1467 state: *mut flint_rand_struct,
1468 ctx: *mut gr_ctx_struct,
1469 ) -> libc::c_int;
1470 #[link_name = "gr_randtest_not_zero__extern"]
1471 pub fn gr_randtest_not_zero(
1472 x: gr_ptr,
1473 state: *mut flint_rand_struct,
1474 ctx: *mut gr_ctx_struct,
1475 ) -> libc::c_int;
1476 #[link_name = "gr_randtest_invertible__extern"]
1477 pub fn gr_randtest_invertible(
1478 x: gr_ptr,
1479 state: *mut flint_rand_struct,
1480 ctx: *mut gr_ctx_struct,
1481 ) -> libc::c_int;
1482 #[link_name = "gr_randtest_small__extern"]
1483 pub fn gr_randtest_small(
1484 x: gr_ptr,
1485 state: *mut flint_rand_struct,
1486 ctx: *mut gr_ctx_struct,
1487 ) -> libc::c_int;
1488 #[link_name = "gr_write__extern"]
1489 pub fn gr_write(
1490 out: *mut gr_stream_struct,
1491 x: gr_srcptr,
1492 ctx: *mut gr_ctx_struct,
1493 ) -> libc::c_int;
1494 #[link_name = "gr_write_n__extern"]
1495 pub fn gr_write_n(
1496 out: *mut gr_stream_struct,
1497 x: gr_srcptr,
1498 n: slong,
1499 ctx: *mut gr_ctx_struct,
1500 ) -> libc::c_int;
1501 #[link_name = "gr_zero__extern"]
1502 pub fn gr_zero(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1503 #[link_name = "gr_one__extern"]
1504 pub fn gr_one(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1505 #[link_name = "gr_neg_one__extern"]
1506 pub fn gr_neg_one(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1507 #[link_name = "gr_set__extern"]
1508 pub fn gr_set(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1509 #[link_name = "gr_set_si__extern"]
1510 pub fn gr_set_si(res: gr_ptr, x: slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1511 #[link_name = "gr_set_ui__extern"]
1512 pub fn gr_set_ui(res: gr_ptr, x: ulong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1513 #[link_name = "gr_set_fmpz__extern"]
1514 pub fn gr_set_fmpz(res: gr_ptr, x: *const fmpz, ctx: *mut gr_ctx_struct) -> libc::c_int;
1515 #[link_name = "gr_set_fmpq__extern"]
1516 pub fn gr_set_fmpq(res: gr_ptr, x: *const fmpq, ctx: *mut gr_ctx_struct) -> libc::c_int;
1517 #[link_name = "gr_set_d__extern"]
1518 pub fn gr_set_d(res: gr_ptr, x: f64, ctx: *mut gr_ctx_struct) -> libc::c_int;
1519 #[link_name = "gr_set_other__extern"]
1520 pub fn gr_set_other(
1521 res: gr_ptr,
1522 x: gr_srcptr,
1523 x_ctx: *mut gr_ctx_struct,
1524 ctx: *mut gr_ctx_struct,
1525 ) -> libc::c_int;
1526 #[link_name = "gr_set_str__extern"]
1527 pub fn gr_set_str(res: gr_ptr, x: *const libc::c_char, ctx: *mut gr_ctx_struct) -> libc::c_int;
1528 #[link_name = "gr_get_si__extern"]
1529 pub fn gr_get_si(res: *mut slong, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1530 #[link_name = "gr_get_ui__extern"]
1531 pub fn gr_get_ui(res: *mut ulong, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1532 #[link_name = "gr_get_fmpz__extern"]
1533 pub fn gr_get_fmpz(res: *mut fmpz, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1534 #[link_name = "gr_get_fmpq__extern"]
1535 pub fn gr_get_fmpq(res: *mut fmpq, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1536 #[link_name = "gr_get_d__extern"]
1537 pub fn gr_get_d(res: *mut f64, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1538 #[link_name = "gr_is_zero__extern"]
1539 pub fn gr_is_zero(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1540 #[link_name = "gr_is_one__extern"]
1541 pub fn gr_is_one(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1542 #[link_name = "gr_is_neg_one__extern"]
1543 pub fn gr_is_neg_one(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1544 #[link_name = "gr_equal__extern"]
1545 pub fn gr_equal(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1546 #[link_name = "gr_not_equal__extern"]
1547 pub fn gr_not_equal(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1548 #[link_name = "gr_neg__extern"]
1549 pub fn gr_neg(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1550 #[link_name = "gr_add__extern"]
1551 pub fn gr_add(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1552 #[link_name = "gr_add_ui__extern"]
1553 pub fn gr_add_ui(res: gr_ptr, x: gr_srcptr, y: ulong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1554 #[link_name = "gr_add_si__extern"]
1555 pub fn gr_add_si(res: gr_ptr, x: gr_srcptr, y: slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1556 #[link_name = "gr_add_fmpz__extern"]
1557 pub fn gr_add_fmpz(
1558 res: gr_ptr,
1559 x: gr_srcptr,
1560 y: *const fmpz,
1561 ctx: *mut gr_ctx_struct,
1562 ) -> libc::c_int;
1563 #[link_name = "gr_add_fmpq__extern"]
1564 pub fn gr_add_fmpq(
1565 res: gr_ptr,
1566 x: gr_srcptr,
1567 y: *const fmpq,
1568 ctx: *mut gr_ctx_struct,
1569 ) -> libc::c_int;
1570 #[link_name = "gr_add_other__extern"]
1571 pub fn gr_add_other(
1572 res: gr_ptr,
1573 x: gr_srcptr,
1574 y: gr_srcptr,
1575 y_ctx: *mut gr_ctx_struct,
1576 ctx: *mut gr_ctx_struct,
1577 ) -> libc::c_int;
1578 #[link_name = "gr_other_add__extern"]
1579 pub fn gr_other_add(
1580 res: gr_ptr,
1581 x: gr_srcptr,
1582 x_ctx: *mut gr_ctx_struct,
1583 y: gr_srcptr,
1584 ctx: *mut gr_ctx_struct,
1585 ) -> libc::c_int;
1586 #[link_name = "gr_sub__extern"]
1587 pub fn gr_sub(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1588 #[link_name = "gr_sub_ui__extern"]
1589 pub fn gr_sub_ui(res: gr_ptr, x: gr_srcptr, y: ulong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1590 #[link_name = "gr_sub_si__extern"]
1591 pub fn gr_sub_si(res: gr_ptr, x: gr_srcptr, y: slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1592 #[link_name = "gr_sub_fmpz__extern"]
1593 pub fn gr_sub_fmpz(
1594 res: gr_ptr,
1595 x: gr_srcptr,
1596 y: *const fmpz,
1597 ctx: *mut gr_ctx_struct,
1598 ) -> libc::c_int;
1599 #[link_name = "gr_sub_fmpq__extern"]
1600 pub fn gr_sub_fmpq(
1601 res: gr_ptr,
1602 x: gr_srcptr,
1603 y: *const fmpq,
1604 ctx: *mut gr_ctx_struct,
1605 ) -> libc::c_int;
1606 #[link_name = "gr_sub_other__extern"]
1607 pub fn gr_sub_other(
1608 res: gr_ptr,
1609 x: gr_srcptr,
1610 y: gr_srcptr,
1611 y_ctx: *mut gr_ctx_struct,
1612 ctx: *mut gr_ctx_struct,
1613 ) -> libc::c_int;
1614 #[link_name = "gr_other_sub__extern"]
1615 pub fn gr_other_sub(
1616 res: gr_ptr,
1617 x: gr_srcptr,
1618 x_ctx: *mut gr_ctx_struct,
1619 y: gr_srcptr,
1620 ctx: *mut gr_ctx_struct,
1621 ) -> libc::c_int;
1622 #[link_name = "gr_mul__extern"]
1623 pub fn gr_mul(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1624 #[link_name = "gr_mul_ui__extern"]
1625 pub fn gr_mul_ui(res: gr_ptr, x: gr_srcptr, y: ulong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1626 #[link_name = "gr_mul_si__extern"]
1627 pub fn gr_mul_si(res: gr_ptr, x: gr_srcptr, y: slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1628 #[link_name = "gr_mul_fmpz__extern"]
1629 pub fn gr_mul_fmpz(
1630 res: gr_ptr,
1631 x: gr_srcptr,
1632 y: *const fmpz,
1633 ctx: *mut gr_ctx_struct,
1634 ) -> libc::c_int;
1635 #[link_name = "gr_mul_fmpq__extern"]
1636 pub fn gr_mul_fmpq(
1637 res: gr_ptr,
1638 x: gr_srcptr,
1639 y: *const fmpq,
1640 ctx: *mut gr_ctx_struct,
1641 ) -> libc::c_int;
1642 #[link_name = "gr_mul_other__extern"]
1643 pub fn gr_mul_other(
1644 res: gr_ptr,
1645 x: gr_srcptr,
1646 y: gr_srcptr,
1647 y_ctx: *mut gr_ctx_struct,
1648 ctx: *mut gr_ctx_struct,
1649 ) -> libc::c_int;
1650 #[link_name = "gr_other_mul__extern"]
1651 pub fn gr_other_mul(
1652 res: gr_ptr,
1653 x: gr_srcptr,
1654 x_ctx: *mut gr_ctx_struct,
1655 y: gr_srcptr,
1656 ctx: *mut gr_ctx_struct,
1657 ) -> libc::c_int;
1658 #[link_name = "gr_addmul__extern"]
1659 pub fn gr_addmul(
1660 res: gr_ptr,
1661 x: gr_srcptr,
1662 y: gr_srcptr,
1663 ctx: *mut gr_ctx_struct,
1664 ) -> libc::c_int;
1665 #[link_name = "gr_addmul_ui__extern"]
1666 pub fn gr_addmul_ui(
1667 res: gr_ptr,
1668 x: gr_srcptr,
1669 y: ulong,
1670 ctx: *mut gr_ctx_struct,
1671 ) -> libc::c_int;
1672 #[link_name = "gr_addmul_si__extern"]
1673 pub fn gr_addmul_si(
1674 res: gr_ptr,
1675 x: gr_srcptr,
1676 y: slong,
1677 ctx: *mut gr_ctx_struct,
1678 ) -> libc::c_int;
1679 #[link_name = "gr_addmul_fmpz__extern"]
1680 pub fn gr_addmul_fmpz(
1681 res: gr_ptr,
1682 x: gr_srcptr,
1683 y: *const fmpz,
1684 ctx: *mut gr_ctx_struct,
1685 ) -> libc::c_int;
1686 #[link_name = "gr_addmul_fmpq__extern"]
1687 pub fn gr_addmul_fmpq(
1688 res: gr_ptr,
1689 x: gr_srcptr,
1690 y: *const fmpq,
1691 ctx: *mut gr_ctx_struct,
1692 ) -> libc::c_int;
1693 #[link_name = "gr_addmul_other__extern"]
1694 pub fn gr_addmul_other(
1695 res: gr_ptr,
1696 x: gr_srcptr,
1697 y: gr_srcptr,
1698 y_ctx: *mut gr_ctx_struct,
1699 ctx: *mut gr_ctx_struct,
1700 ) -> libc::c_int;
1701 #[link_name = "gr_submul__extern"]
1702 pub fn gr_submul(
1703 res: gr_ptr,
1704 x: gr_srcptr,
1705 y: gr_srcptr,
1706 ctx: *mut gr_ctx_struct,
1707 ) -> libc::c_int;
1708 #[link_name = "gr_submul_ui__extern"]
1709 pub fn gr_submul_ui(
1710 res: gr_ptr,
1711 x: gr_srcptr,
1712 y: ulong,
1713 ctx: *mut gr_ctx_struct,
1714 ) -> libc::c_int;
1715 #[link_name = "gr_submul_si__extern"]
1716 pub fn gr_submul_si(
1717 res: gr_ptr,
1718 x: gr_srcptr,
1719 y: slong,
1720 ctx: *mut gr_ctx_struct,
1721 ) -> libc::c_int;
1722 #[link_name = "gr_submul_fmpz__extern"]
1723 pub fn gr_submul_fmpz(
1724 res: gr_ptr,
1725 x: gr_srcptr,
1726 y: *const fmpz,
1727 ctx: *mut gr_ctx_struct,
1728 ) -> libc::c_int;
1729 #[link_name = "gr_submul_fmpq__extern"]
1730 pub fn gr_submul_fmpq(
1731 res: gr_ptr,
1732 x: gr_srcptr,
1733 y: *const fmpq,
1734 ctx: *mut gr_ctx_struct,
1735 ) -> libc::c_int;
1736 #[link_name = "gr_submul_other__extern"]
1737 pub fn gr_submul_other(
1738 res: gr_ptr,
1739 x: gr_srcptr,
1740 y: gr_srcptr,
1741 y_ctx: *mut gr_ctx_struct,
1742 ctx: *mut gr_ctx_struct,
1743 ) -> libc::c_int;
1744 #[link_name = "gr_mul_two__extern"]
1745 pub fn gr_mul_two(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1746 #[link_name = "gr_sqr__extern"]
1747 pub fn gr_sqr(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1748 #[link_name = "gr_mul_2exp_si__extern"]
1749 pub fn gr_mul_2exp_si(
1750 res: gr_ptr,
1751 x: gr_srcptr,
1752 y: slong,
1753 ctx: *mut gr_ctx_struct,
1754 ) -> libc::c_int;
1755 #[link_name = "gr_mul_2exp_fmpz__extern"]
1756 pub fn gr_mul_2exp_fmpz(
1757 res: gr_ptr,
1758 x: gr_srcptr,
1759 y: *const fmpz,
1760 ctx: *mut gr_ctx_struct,
1761 ) -> libc::c_int;
1762 #[link_name = "gr_set_fmpz_2exp_fmpz__extern"]
1763 pub fn gr_set_fmpz_2exp_fmpz(
1764 res: gr_ptr,
1765 x: *const fmpz,
1766 y: *const fmpz,
1767 ctx: *mut gr_ctx_struct,
1768 ) -> libc::c_int;
1769 #[link_name = "gr_get_fmpz_2exp_fmpz__extern"]
1770 pub fn gr_get_fmpz_2exp_fmpz(
1771 res1: *mut fmpz,
1772 res2: *mut fmpz,
1773 x: gr_srcptr,
1774 ctx: *mut gr_ctx_struct,
1775 ) -> libc::c_int;
1776 #[link_name = "gr_set_fmpz_10exp_fmpz__extern"]
1777 pub fn gr_set_fmpz_10exp_fmpz(
1778 res: gr_ptr,
1779 x: *const fmpz,
1780 y: *const fmpz,
1781 ctx: *mut gr_ctx_struct,
1782 ) -> libc::c_int;
1783 #[link_name = "gr_get_d_2exp_si__extern"]
1784 pub fn gr_get_d_2exp_si(
1785 res: *mut f64,
1786 exp: *mut slong,
1787 x: gr_srcptr,
1788 ctx: *mut gr_ctx_struct,
1789 ) -> libc::c_int;
1790 #[link_name = "gr_inv__extern"]
1791 pub fn gr_inv(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1792 #[link_name = "gr_is_invertible__extern"]
1793 pub fn gr_is_invertible(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1794 #[link_name = "gr_div__extern"]
1795 pub fn gr_div(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1796 #[link_name = "gr_div_ui__extern"]
1797 pub fn gr_div_ui(res: gr_ptr, x: gr_srcptr, y: ulong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1798 #[link_name = "gr_div_si__extern"]
1799 pub fn gr_div_si(res: gr_ptr, x: gr_srcptr, y: slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1800 #[link_name = "gr_div_fmpz__extern"]
1801 pub fn gr_div_fmpz(
1802 res: gr_ptr,
1803 x: gr_srcptr,
1804 y: *const fmpz,
1805 ctx: *mut gr_ctx_struct,
1806 ) -> libc::c_int;
1807 #[link_name = "gr_div_fmpq__extern"]
1808 pub fn gr_div_fmpq(
1809 res: gr_ptr,
1810 x: gr_srcptr,
1811 y: *const fmpq,
1812 ctx: *mut gr_ctx_struct,
1813 ) -> libc::c_int;
1814 #[link_name = "gr_div_other__extern"]
1815 pub fn gr_div_other(
1816 res: gr_ptr,
1817 x: gr_srcptr,
1818 y: gr_srcptr,
1819 y_ctx: *mut gr_ctx_struct,
1820 ctx: *mut gr_ctx_struct,
1821 ) -> libc::c_int;
1822 #[link_name = "gr_other_div__extern"]
1823 pub fn gr_other_div(
1824 res: gr_ptr,
1825 x: gr_srcptr,
1826 x_ctx: *mut gr_ctx_struct,
1827 y: gr_srcptr,
1828 ctx: *mut gr_ctx_struct,
1829 ) -> libc::c_int;
1830 #[link_name = "gr_div_nonunique__extern"]
1831 pub fn gr_div_nonunique(
1832 res: gr_ptr,
1833 x: gr_srcptr,
1834 y: gr_srcptr,
1835 ctx: *mut gr_ctx_struct,
1836 ) -> libc::c_int;
1837 #[link_name = "gr_divides__extern"]
1838 pub fn gr_divides(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1839 #[link_name = "gr_divexact__extern"]
1840 pub fn gr_divexact(
1841 res: gr_ptr,
1842 x: gr_srcptr,
1843 y: gr_srcptr,
1844 ctx: *mut gr_ctx_struct,
1845 ) -> libc::c_int;
1846 #[link_name = "gr_divexact_ui__extern"]
1847 pub fn gr_divexact_ui(
1848 res: gr_ptr,
1849 x: gr_srcptr,
1850 y: ulong,
1851 ctx: *mut gr_ctx_struct,
1852 ) -> libc::c_int;
1853 #[link_name = "gr_divexact_si__extern"]
1854 pub fn gr_divexact_si(
1855 res: gr_ptr,
1856 x: gr_srcptr,
1857 y: slong,
1858 ctx: *mut gr_ctx_struct,
1859 ) -> libc::c_int;
1860 #[link_name = "gr_divexact_fmpz__extern"]
1861 pub fn gr_divexact_fmpz(
1862 res: gr_ptr,
1863 x: gr_srcptr,
1864 y: *const fmpz,
1865 ctx: *mut gr_ctx_struct,
1866 ) -> libc::c_int;
1867 #[link_name = "gr_divexact_fmpq__extern"]
1868 pub fn gr_divexact_fmpq(
1869 res: gr_ptr,
1870 x: gr_srcptr,
1871 y: *const fmpq,
1872 ctx: *mut gr_ctx_struct,
1873 ) -> libc::c_int;
1874 #[link_name = "gr_divexact_other__extern"]
1875 pub fn gr_divexact_other(
1876 res: gr_ptr,
1877 x: gr_srcptr,
1878 y: gr_srcptr,
1879 y_ctx: *mut gr_ctx_struct,
1880 ctx: *mut gr_ctx_struct,
1881 ) -> libc::c_int;
1882 #[link_name = "gr_other_divexact__extern"]
1883 pub fn gr_other_divexact(
1884 res: gr_ptr,
1885 x: gr_srcptr,
1886 x_ctx: *mut gr_ctx_struct,
1887 y: gr_srcptr,
1888 ctx: *mut gr_ctx_struct,
1889 ) -> libc::c_int;
1890 #[link_name = "gr_euclidean_div__extern"]
1891 pub fn gr_euclidean_div(
1892 res: gr_ptr,
1893 x: gr_srcptr,
1894 y: gr_srcptr,
1895 ctx: *mut gr_ctx_struct,
1896 ) -> libc::c_int;
1897 #[link_name = "gr_euclidean_rem__extern"]
1898 pub fn gr_euclidean_rem(
1899 res: gr_ptr,
1900 x: gr_srcptr,
1901 y: gr_srcptr,
1902 ctx: *mut gr_ctx_struct,
1903 ) -> libc::c_int;
1904 #[link_name = "gr_euclidean_divrem__extern"]
1905 pub fn gr_euclidean_divrem(
1906 res1: gr_ptr,
1907 res2: gr_ptr,
1908 x: gr_srcptr,
1909 y: gr_srcptr,
1910 ctx: *mut gr_ctx_struct,
1911 ) -> libc::c_int;
1912 #[link_name = "gr_gcd__extern"]
1913 pub fn gr_gcd(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1914 #[link_name = "gr_lcm__extern"]
1915 pub fn gr_lcm(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1916 #[link_name = "gr_numerator__extern"]
1917 pub fn gr_numerator(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1918 #[link_name = "gr_denominator__extern"]
1919 pub fn gr_denominator(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1920 #[link_name = "gr_factor__extern"]
1921 pub fn gr_factor(
1922 c: gr_ptr,
1923 factors: *mut gr_vec_struct,
1924 exponents: *mut gr_vec_struct,
1925 x: gr_srcptr,
1926 flags: libc::c_int,
1927 ctx: *mut gr_ctx_struct,
1928 ) -> libc::c_int;
1929 #[link_name = "gr_pow__extern"]
1930 pub fn gr_pow(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1931 #[link_name = "gr_pow_ui__extern"]
1932 pub fn gr_pow_ui(res: gr_ptr, x: gr_srcptr, y: ulong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1933 #[link_name = "gr_pow_si__extern"]
1934 pub fn gr_pow_si(res: gr_ptr, x: gr_srcptr, y: slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
1935 #[link_name = "gr_pow_fmpz__extern"]
1936 pub fn gr_pow_fmpz(
1937 res: gr_ptr,
1938 x: gr_srcptr,
1939 y: *const fmpz,
1940 ctx: *mut gr_ctx_struct,
1941 ) -> libc::c_int;
1942 #[link_name = "gr_pow_fmpq__extern"]
1943 pub fn gr_pow_fmpq(
1944 res: gr_ptr,
1945 x: gr_srcptr,
1946 y: *const fmpq,
1947 ctx: *mut gr_ctx_struct,
1948 ) -> libc::c_int;
1949 #[link_name = "gr_pow_other__extern"]
1950 pub fn gr_pow_other(
1951 res: gr_ptr,
1952 x: gr_srcptr,
1953 y: gr_srcptr,
1954 y_ctx: *mut gr_ctx_struct,
1955 ctx: *mut gr_ctx_struct,
1956 ) -> libc::c_int;
1957 #[link_name = "gr_other_pow__extern"]
1958 pub fn gr_other_pow(
1959 res: gr_ptr,
1960 x: gr_srcptr,
1961 x_ctx: *mut gr_ctx_struct,
1962 y: gr_srcptr,
1963 ctx: *mut gr_ctx_struct,
1964 ) -> libc::c_int;
1965 #[link_name = "gr_derivative_gen__extern"]
1966 pub fn gr_derivative_gen(
1967 res: gr_ptr,
1968 x: gr_srcptr,
1969 var: slong,
1970 ctx: *mut gr_ctx_struct,
1971 ) -> libc::c_int;
1972 #[link_name = "gr_sqrt__extern"]
1973 pub fn gr_sqrt(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1974 #[link_name = "gr_rsqrt__extern"]
1975 pub fn gr_rsqrt(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1976 #[link_name = "gr_is_square__extern"]
1977 pub fn gr_is_square(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
1978 #[link_name = "gr_floor__extern"]
1979 pub fn gr_floor(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1980 #[link_name = "gr_ceil__extern"]
1981 pub fn gr_ceil(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1982 #[link_name = "gr_trunc__extern"]
1983 pub fn gr_trunc(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1984 #[link_name = "gr_nint__extern"]
1985 pub fn gr_nint(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1986 #[link_name = "gr_abs__extern"]
1987 pub fn gr_abs(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1988 #[link_name = "gr_i__extern"]
1989 pub fn gr_i(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1990 #[link_name = "gr_conj__extern"]
1991 pub fn gr_conj(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1992 #[link_name = "gr_re__extern"]
1993 pub fn gr_re(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1994 #[link_name = "gr_im__extern"]
1995 pub fn gr_im(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1996 #[link_name = "gr_sgn__extern"]
1997 pub fn gr_sgn(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
1998 #[link_name = "gr_csgn__extern"]
1999 pub fn gr_csgn(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2000 #[link_name = "gr_arg__extern"]
2001 pub fn gr_arg(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2002 #[link_name = "gr_canonical_associate__extern"]
2003 pub fn gr_canonical_associate(
2004 res1: gr_ptr,
2005 res2: gr_ptr,
2006 x: gr_srcptr,
2007 ctx: *mut gr_ctx_struct,
2008 ) -> libc::c_int;
2009 #[link_name = "gr_pos_inf__extern"]
2010 pub fn gr_pos_inf(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2011 #[link_name = "gr_neg_inf__extern"]
2012 pub fn gr_neg_inf(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2013 #[link_name = "gr_uinf__extern"]
2014 pub fn gr_uinf(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2015 #[link_name = "gr_undefined__extern"]
2016 pub fn gr_undefined(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2017 #[link_name = "gr_unknown__extern"]
2018 pub fn gr_unknown(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2019 #[link_name = "gr_cmp__extern"]
2020 pub fn gr_cmp(
2021 res: *mut libc::c_int,
2022 x: gr_srcptr,
2023 y: gr_srcptr,
2024 ctx: *mut gr_ctx_struct,
2025 ) -> libc::c_int;
2026 #[link_name = "gr_cmpabs__extern"]
2027 pub fn gr_cmpabs(
2028 res: *mut libc::c_int,
2029 x: gr_srcptr,
2030 y: gr_srcptr,
2031 ctx: *mut gr_ctx_struct,
2032 ) -> libc::c_int;
2033 #[link_name = "gr_cmp_other__extern"]
2034 pub fn gr_cmp_other(
2035 res: *mut libc::c_int,
2036 x: gr_srcptr,
2037 y: gr_srcptr,
2038 y_ctx: *mut gr_ctx_struct,
2039 ctx: *mut gr_ctx_struct,
2040 ) -> libc::c_int;
2041 #[link_name = "gr_cmpabs_other__extern"]
2042 pub fn gr_cmpabs_other(
2043 res: *mut libc::c_int,
2044 x: gr_srcptr,
2045 y: gr_srcptr,
2046 y_ctx: *mut gr_ctx_struct,
2047 ctx: *mut gr_ctx_struct,
2048 ) -> libc::c_int;
2049 #[link_name = "gr_le__extern"]
2050 pub fn gr_le(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2051 #[link_name = "gr_lt__extern"]
2052 pub fn gr_lt(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2053 #[link_name = "gr_ge__extern"]
2054 pub fn gr_ge(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2055 #[link_name = "gr_gt__extern"]
2056 pub fn gr_gt(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2057 #[link_name = "gr_abs_le__extern"]
2058 pub fn gr_abs_le(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2059 #[link_name = "gr_abs_lt__extern"]
2060 pub fn gr_abs_lt(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2061 #[link_name = "gr_abs_ge__extern"]
2062 pub fn gr_abs_ge(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2063 #[link_name = "gr_abs_gt__extern"]
2064 pub fn gr_abs_gt(x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2065 #[link_name = "gr_min__extern"]
2066 pub fn gr_min(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2067 #[link_name = "gr_max__extern"]
2068 pub fn gr_max(res: gr_ptr, x: gr_srcptr, y: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2069 #[link_name = "gr_gen__extern"]
2070 pub fn gr_gen(res: gr_ptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2071 #[link_name = "gr_gens__extern"]
2072 pub fn gr_gens(res: *mut gr_vec_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
2073 #[link_name = "gr_gens_recursive__extern"]
2074 pub fn gr_gens_recursive(res: *mut gr_vec_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
2075 #[link_name = "gr_ctx_fq_prime__extern"]
2076 pub fn gr_ctx_fq_prime(res: *mut fmpz, ctx: *mut gr_ctx_struct) -> libc::c_int;
2077 #[link_name = "gr_ctx_fq_degree__extern"]
2078 pub fn gr_ctx_fq_degree(res: *mut slong, ctx: *mut gr_ctx_struct) -> libc::c_int;
2079 #[link_name = "gr_ctx_fq_order__extern"]
2080 pub fn gr_ctx_fq_order(res: *mut fmpz, ctx: *mut gr_ctx_struct) -> libc::c_int;
2081 #[link_name = "gr_fq_frobenius__extern"]
2082 pub fn gr_fq_frobenius(
2083 res: gr_ptr,
2084 x: gr_srcptr,
2085 e: slong,
2086 ctx: *mut gr_ctx_struct,
2087 ) -> libc::c_int;
2088 #[link_name = "gr_fq_multiplicative_order__extern"]
2089 pub fn gr_fq_multiplicative_order(
2090 res: *mut fmpz,
2091 x: gr_srcptr,
2092 ctx: *mut gr_ctx_struct,
2093 ) -> libc::c_int;
2094 #[link_name = "gr_fq_norm__extern"]
2095 pub fn gr_fq_norm(res: *mut fmpz, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2096 #[link_name = "gr_fq_trace__extern"]
2097 pub fn gr_fq_trace(res: *mut fmpz, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2098 #[link_name = "gr_fq_is_primitive__extern"]
2099 pub fn gr_fq_is_primitive(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> truth_t;
2100 #[link_name = "gr_fq_pth_root__extern"]
2101 pub fn gr_fq_pth_root(res: gr_ptr, x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2102 #[link_name = "gr_set_interval_mid_rad__extern"]
2103 pub fn gr_set_interval_mid_rad(
2104 res: gr_ptr,
2105 m: gr_srcptr,
2106 r: gr_srcptr,
2107 ctx: *mut gr_ctx_struct,
2108 ) -> libc::c_int;
2109 #[link_name = "_gr_vec_init__extern"]
2110 pub fn _gr_vec_init(vec: gr_ptr, len: slong, ctx: *mut gr_ctx_struct);
2111 #[link_name = "_gr_vec_clear__extern"]
2112 pub fn _gr_vec_clear(vec: gr_ptr, len: slong, ctx: *mut gr_ctx_struct);
2113 #[link_name = "_gr_vec_swap__extern"]
2114 pub fn _gr_vec_swap(vec1: gr_ptr, vec2: gr_ptr, len: slong, ctx: *mut gr_ctx_struct);
2115 pub fn gr_ctx_print(ctx: *mut gr_ctx_struct) -> libc::c_int;
2116 pub fn gr_ctx_println(ctx: *mut gr_ctx_struct) -> libc::c_int;
2117 pub fn gr_print(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2118 pub fn gr_println(x: gr_srcptr, ctx: *mut gr_ctx_struct) -> libc::c_int;
2119 pub fn gr_ctx_get_str(s: *mut *mut libc::c_char, ctx: *mut gr_ctx_struct) -> libc::c_int;
2120 pub fn gr_get_str(
2121 s: *mut *mut libc::c_char,
2122 x: gr_srcptr,
2123 ctx: *mut gr_ctx_struct,
2124 ) -> libc::c_int;
2125 pub fn gr_get_str_n(
2126 s: *mut *mut libc::c_char,
2127 x: gr_srcptr,
2128 n: slong,
2129 ctx: *mut gr_ctx_struct,
2130 ) -> libc::c_int;
2131 #[link_name = "gr_heap_init__extern"]
2132 pub fn gr_heap_init(ctx: *mut gr_ctx_struct) -> gr_ptr;
2133 #[link_name = "gr_heap_clear__extern"]
2134 pub fn gr_heap_clear(x: gr_ptr, ctx: *mut gr_ctx_struct);
2135 #[link_name = "gr_heap_init_vec__extern"]
2136 pub fn gr_heap_init_vec(len: slong, ctx: *mut gr_ctx_struct) -> gr_ptr;
2137 #[link_name = "gr_heap_clear_vec__extern"]
2138 pub fn gr_heap_clear_vec(x: gr_ptr, len: slong, ctx: *mut gr_ctx_struct);
2139 pub fn gr_generic_ctx_predicate(ctx: *mut gr_ctx_struct) -> truth_t;
2140 pub fn gr_generic_ctx_predicate_true(ctx: *mut gr_ctx_struct) -> truth_t;
2141 pub fn gr_generic_ctx_predicate_false(ctx: *mut gr_ctx_struct) -> truth_t;
2142 pub fn gr_ctx_uninitialized(ctx: *mut gr_ctx_struct);
2143 pub fn gr_ctx_init_random(ctx: *mut gr_ctx_struct, state: *mut flint_rand_struct);
2144 pub fn gr_ctx_init_random_commutative_ring(
2145 ctx: *mut gr_ctx_struct,
2146 state: *mut flint_rand_struct,
2147 );
2148 pub fn gr_ctx_init_random_field(ctx: *mut gr_ctx_struct, state: *mut flint_rand_struct);
2149 pub fn gr_ctx_init_random_poly(ctx: *mut gr_ctx_struct, state: *mut flint_rand_struct);
2150 pub fn gr_ctx_init_random_mpoly(ctx: *mut gr_ctx_struct, state: *mut flint_rand_struct);
2151 pub fn gr_ctx_init_random_series(ctx: *mut gr_ctx_struct, state: *mut flint_rand_struct);
2152 pub fn gr_ctx_init_fmpz(ctx: *mut gr_ctx_struct);
2153 pub fn gr_ctx_init_fmpq(ctx: *mut gr_ctx_struct);
2154 pub fn gr_ctx_init_fmpzi(ctx: *mut gr_ctx_struct);
2155 pub fn gr_ctx_init_fmpz_mod(ctx: *mut gr_ctx_struct, n: *const fmpz);
2156 pub fn _gr_ctx_init_fmpz_mod_from_ref(ctx: *mut gr_ctx_struct, fmod_ctx: *const libc::c_void);
2157 pub fn gr_ctx_init_nmod(ctx: *mut gr_ctx_struct, n: ulong) -> libc::c_int;
2158 pub fn _gr_ctx_init_nmod(ctx: *mut gr_ctx_struct, nmod_t_ref: *mut libc::c_void);
2159 pub fn gr_ctx_init_nmod8(ctx: *mut gr_ctx_struct, n: ulong) -> libc::c_int;
2160 pub fn gr_ctx_init_nmod32(ctx: *mut gr_ctx_struct, n: ulong) -> libc::c_int;
2161 pub fn gr_ctx_init_mpn_mod(ctx: *mut gr_ctx_struct, n: *const fmpz) -> libc::c_int;
2162 pub fn gr_ctx_init_real_qqbar(ctx: *mut gr_ctx_struct);
2163 pub fn gr_ctx_init_complex_qqbar(ctx: *mut gr_ctx_struct);
2164 pub fn _gr_ctx_qqbar_set_limits(ctx: *mut gr_ctx_struct, deg_limit: slong, bits_limit: slong);
2165 pub fn gr_ctx_init_real_arb(ctx: *mut gr_ctx_struct, prec: slong);
2166 pub fn gr_ctx_init_complex_acb(ctx: *mut gr_ctx_struct, prec: slong);
2167 pub fn gr_ctx_init_real_float_arf(ctx: *mut gr_ctx_struct, prec: slong);
2168 pub fn gr_ctx_init_complex_float_acf(ctx: *mut gr_ctx_struct, prec: slong);
2169 pub fn gr_ctx_init_mpf(ctx: *mut gr_ctx_struct, prec: slong);
2170 pub fn gr_ctx_init_real_ca(ctx: *mut gr_ctx_struct);
2171 pub fn gr_ctx_init_complex_ca(ctx: *mut gr_ctx_struct);
2172 pub fn gr_ctx_init_real_algebraic_ca(ctx: *mut gr_ctx_struct);
2173 pub fn gr_ctx_init_complex_algebraic_ca(ctx: *mut gr_ctx_struct);
2174 pub fn gr_ctx_init_complex_extended_ca(ctx: *mut gr_ctx_struct);
2175 pub fn _gr_ctx_init_ca_from_ref(
2176 ctx: *mut gr_ctx_struct,
2177 which_ring: libc::c_int,
2178 ca_ctx: *mut libc::c_void,
2179 );
2180 pub fn gr_ctx_ca_set_option(ctx: *mut gr_ctx_struct, option: slong, value: slong);
2181 pub fn gr_ctx_ca_get_option(ctx: *mut gr_ctx_struct, option: slong) -> slong;
2182 pub fn gr_ctx_init_fq(
2183 ctx: *mut gr_ctx_struct,
2184 p: *const fmpz,
2185 d: slong,
2186 var: *const libc::c_char,
2187 );
2188 pub fn gr_ctx_init_fq_nmod(
2189 ctx: *mut gr_ctx_struct,
2190 p: ulong,
2191 d: slong,
2192 var: *const libc::c_char,
2193 );
2194 pub fn gr_ctx_init_fq_zech(
2195 ctx: *mut gr_ctx_struct,
2196 p: ulong,
2197 d: slong,
2198 var: *const libc::c_char,
2199 );
2200 pub fn _gr_ctx_init_fq_from_ref(ctx: *mut gr_ctx_struct, fq_ctx: *const libc::c_void);
2201 pub fn _gr_ctx_init_fq_nmod_from_ref(ctx: *mut gr_ctx_struct, fq_nmod_ctx: *const libc::c_void);
2202 pub fn _gr_ctx_init_fq_zech_from_ref(ctx: *mut gr_ctx_struct, fq_zech_ctx: *const libc::c_void);
2203 pub fn gr_ctx_init_fmpz_poly(ctx: *mut gr_ctx_struct);
2204 pub fn gr_ctx_init_fmpq_poly(ctx: *mut gr_ctx_struct);
2205 pub fn gr_ctx_init_perm(ctx: *mut gr_ctx_struct, n: ulong);
2206 pub fn gr_ctx_init_psl2z(ctx: *mut gr_ctx_struct);
2207 pub fn gr_ctx_init_dirichlet_group(ctx: *mut gr_ctx_struct, q: ulong) -> libc::c_int;
2208 pub fn gr_ctx_init_gr_poly(ctx: *mut gr_ctx_struct, base_ring: *mut gr_ctx_struct);
2209 pub fn gr_ctx_init_gr_fraction(
2210 ctx: *mut gr_ctx_struct,
2211 domain: *mut gr_ctx_struct,
2212 flags: libc::c_int,
2213 );
2214 pub fn gr_ctx_init_gr_complex(ctx: *mut gr_ctx_struct, real_ctx: *mut gr_ctx_struct);
2215 pub fn gr_ctx_init_gr_series(
2216 ctx: *mut gr_ctx_struct,
2217 base_ring: *mut gr_ctx_struct,
2218 prec: slong,
2219 );
2220 pub fn gr_ctx_init_series_mod_gr_poly(
2221 ctx: *mut gr_ctx_struct,
2222 base_ring: *mut gr_ctx_struct,
2223 n: slong,
2224 );
2225 pub fn gr_ctx_init_vector_gr_vec(ctx: *mut gr_ctx_struct, base_ring: *mut gr_ctx_struct);
2226 pub fn gr_ctx_init_vector_space_gr_vec(
2227 ctx: *mut gr_ctx_struct,
2228 base_ring: *mut gr_ctx_struct,
2229 n: slong,
2230 );
2231 pub fn gr_ctx_init_matrix_domain(ctx: *mut gr_ctx_struct, base_ring: *mut gr_ctx_struct);
2232 pub fn gr_ctx_init_matrix_space(
2233 ctx: *mut gr_ctx_struct,
2234 base_ring: *mut gr_ctx_struct,
2235 nrows: slong,
2236 ncols: slong,
2237 );
2238 pub fn gr_ctx_matrix_is_fixed_size(ctx: *mut gr_ctx_struct) -> truth_t;
2239 #[link_name = "gr_ctx_init_matrix_ring__extern"]
2240 pub fn gr_ctx_init_matrix_ring(
2241 ctx: *mut gr_ctx_struct,
2242 base_ring: *mut gr_ctx_struct,
2243 n: slong,
2244 );
2245 pub fn gr_ctx_init_fexpr(ctx: *mut gr_ctx_struct);
2246 pub fn gr_ctx_cmp_coercion(ctx1: *mut gr_ctx_struct, ctx2: *mut gr_ctx_struct) -> libc::c_int;
2247 pub fn gr_ctx_init_debug(
2248 ctx: *mut gr_ctx_struct,
2249 elem_ctx: *mut gr_ctx_struct,
2250 flags: libc::c_int,
2251 unable_probability: f64,
2252 );
2253 pub fn gr_test_ring(R: *mut gr_ctx_struct, iters: slong, test_flags: libc::c_int);
2254 pub fn gr_test_multiplicative_group(
2255 R: *mut gr_ctx_struct,
2256 iters: slong,
2257 test_flags: libc::c_int,
2258 );
2259 pub fn gr_test_floating_point(R: *mut gr_ctx_struct, iters: slong, test_flags: libc::c_int);
2260 pub fn gr_test_cmp_fun(
2261 R: *mut gr_ctx_struct,
2262 op: gr_method_binary_op_get_int,
2263 R_ref: *mut gr_ctx_struct,
2264 state: *mut flint_rand_struct,
2265 test_flags: libc::c_int,
2266 ) -> libc::c_int;
2267 pub fn gr_test_approx_unary_op(
2268 R: *mut gr_ctx_struct,
2269 op: gr_method_unary_op,
2270 R_ref: *mut gr_ctx_struct,
2271 rel_tol: gr_srcptr,
2272 state: *mut flint_rand_struct,
2273 test_flags: libc::c_int,
2274 ) -> libc::c_int;
2275 pub fn gr_test_approx_binary_op(
2276 R: *mut gr_ctx_struct,
2277 op: gr_method_binary_op,
2278 R_ref: *mut gr_ctx_struct,
2279 rel_tol: gr_srcptr,
2280 state: *mut flint_rand_struct,
2281 test_flags: libc::c_int,
2282 ) -> libc::c_int;
2283 pub fn gr_test_approx_binary_op_type_variants(
2284 R: *mut gr_ctx_struct,
2285 opname: *const libc::c_char,
2286 gr_op: gr_method_binary_op,
2287 gr_op_ui: gr_method_binary_op_ui,
2288 gr_op_si: gr_method_binary_op_si,
2289 gr_op_fmpz: gr_method_binary_op_fmpz,
2290 gr_op_fmpq: gr_method_binary_op_fmpq,
2291 fused: libc::c_int,
2292 small_test_values: libc::c_int,
2293 rel_tol: gr_srcptr,
2294 state: *mut flint_rand_struct,
2295 test_flags: libc::c_int,
2296 ) -> libc::c_int;
2297 pub fn gr_test_approx_dot(
2298 R: *mut gr_ctx_struct,
2299 R_ref: *mut gr_ctx_struct,
2300 maxlen: slong,
2301 rel_tol: gr_srcptr,
2302 state: *mut flint_rand_struct,
2303 test_flags: libc::c_int,
2304 ) -> libc::c_int;
2305 pub fn gr_test_factor(
2306 R: *mut gr_ctx_struct,
2307 state: *mut flint_rand_struct,
2308 test_flags: libc::c_int,
2309 ) -> libc::c_int;
2310 pub fn gr_test_pow_ui_exponent_addition(
2311 R: *mut gr_ctx_struct,
2312 state: *mut flint_rand_struct,
2313 test_flags: libc::c_int,
2314 ) -> libc::c_int;
2315 pub fn gr_test_pow_ui_base_scalar_multiplication(
2316 R: *mut gr_ctx_struct,
2317 state: *mut flint_rand_struct,
2318 test_flags: libc::c_int,
2319 ) -> libc::c_int;
2320 pub fn gr_test_pow_ui_base_multiplication(
2321 R: *mut gr_ctx_struct,
2322 state: *mut flint_rand_struct,
2323 test_flags: libc::c_int,
2324 ) -> libc::c_int;
2325 pub fn gr_test_pow_ui_aliasing(
2326 R: *mut gr_ctx_struct,
2327 state: *mut flint_rand_struct,
2328 test_flags: libc::c_int,
2329 ) -> libc::c_int;
2330 pub fn gr_test_pow_fmpz_exponent_addition(
2331 R: *mut gr_ctx_struct,
2332 state: *mut flint_rand_struct,
2333 test_flags: libc::c_int,
2334 ) -> libc::c_int;
2335}