Skip to main content

flint_sys/
gr_series.rs

1/* automatically generated by rust-bindgen 0.70.1 */
2
3use crate::deps::*;
4use crate::dirichlet::*;
5use crate::flint::*;
6use crate::gr_types::*;
7
8
9#[repr(C)]
10pub struct series_mod_ctx_t {
11    pub base_ring: *mut gr_ctx_struct,
12    pub n: slong,
13    pub var: *mut libc::c_char,
14}
15#[allow(clippy::unnecessary_operation, clippy::identity_op)]
16const _: () = {
17    ["Size of series_mod_ctx_t"][::std::mem::size_of::<series_mod_ctx_t>() - 24usize];
18    ["Alignment of series_mod_ctx_t"][::std::mem::align_of::<series_mod_ctx_t>() - 8usize];
19    ["Offset of field: series_mod_ctx_t::base_ring"]
20        [::std::mem::offset_of!(series_mod_ctx_t, base_ring) - 0usize];
21    ["Offset of field: series_mod_ctx_t::n"][::std::mem::offset_of!(series_mod_ctx_t, n) - 8usize];
22    ["Offset of field: series_mod_ctx_t::var"]
23        [::std::mem::offset_of!(series_mod_ctx_t, var) - 16usize];
24};
25impl Default for series_mod_ctx_t {
26    fn default() -> Self {
27        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
28        unsafe {
29            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
30            s.assume_init()
31        }
32    }
33}
34#[repr(C)]
35pub struct series_ctx_t {
36    pub base_ring: *mut gr_ctx_struct,
37    pub prec: slong,
38    pub var: *mut libc::c_char,
39}
40#[allow(clippy::unnecessary_operation, clippy::identity_op)]
41const _: () = {
42    ["Size of series_ctx_t"][::std::mem::size_of::<series_ctx_t>() - 24usize];
43    ["Alignment of series_ctx_t"][::std::mem::align_of::<series_ctx_t>() - 8usize];
44    ["Offset of field: series_ctx_t::base_ring"]
45        [::std::mem::offset_of!(series_ctx_t, base_ring) - 0usize];
46    ["Offset of field: series_ctx_t::prec"][::std::mem::offset_of!(series_ctx_t, prec) - 8usize];
47    ["Offset of field: series_ctx_t::var"][::std::mem::offset_of!(series_ctx_t, var) - 16usize];
48};
49impl Default for series_ctx_t {
50    fn default() -> Self {
51        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
52        unsafe {
53            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
54            s.assume_init()
55        }
56    }
57}
58#[repr(C)]
59pub struct gr_series_struct {
60    pub poly: gr_poly_struct,
61    pub error: slong,
62}
63#[allow(clippy::unnecessary_operation, clippy::identity_op)]
64const _: () = {
65    ["Size of gr_series_struct"][::std::mem::size_of::<gr_series_struct>() - 32usize];
66    ["Alignment of gr_series_struct"][::std::mem::align_of::<gr_series_struct>() - 8usize];
67    ["Offset of field: gr_series_struct::poly"]
68        [::std::mem::offset_of!(gr_series_struct, poly) - 0usize];
69    ["Offset of field: gr_series_struct::error"]
70        [::std::mem::offset_of!(gr_series_struct, error) - 24usize];
71};
72impl Default for gr_series_struct {
73    fn default() -> Self {
74        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
75        unsafe {
76            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
77            s.assume_init()
78        }
79    }
80}
81pub type gr_series_t = [gr_series_struct; 1usize];
82#[repr(C)]
83pub struct gr_series_vec_struct {
84    pub entries: *mut gr_series_struct,
85    pub alloc: slong,
86    pub length: slong,
87}
88#[allow(clippy::unnecessary_operation, clippy::identity_op)]
89const _: () = {
90    ["Size of gr_series_vec_struct"][::std::mem::size_of::<gr_series_vec_struct>() - 24usize];
91    ["Alignment of gr_series_vec_struct"][::std::mem::align_of::<gr_series_vec_struct>() - 8usize];
92    ["Offset of field: gr_series_vec_struct::entries"]
93        [::std::mem::offset_of!(gr_series_vec_struct, entries) - 0usize];
94    ["Offset of field: gr_series_vec_struct::alloc"]
95        [::std::mem::offset_of!(gr_series_vec_struct, alloc) - 8usize];
96    ["Offset of field: gr_series_vec_struct::length"]
97        [::std::mem::offset_of!(gr_series_vec_struct, length) - 16usize];
98};
99impl Default for gr_series_vec_struct {
100    fn default() -> Self {
101        let mut s = ::std::mem::MaybeUninit::<Self>::uninit();
102        unsafe {
103            ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1);
104            s.assume_init()
105        }
106    }
107}
108pub type gr_series_vec_t = [gr_series_vec_struct; 1usize];
109extern "C" {
110    pub fn gr_series_ctx_init(ctx: *mut gr_ctx_struct, base_ring: *mut gr_ctx_struct, prec: slong);
111    pub fn gr_series_ctx_clear(ctx: *mut gr_ctx_struct);
112    pub fn gr_series_ctx_write(out: *mut gr_stream_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
113    pub fn gr_series_ctx_is_ring(ctx: *mut gr_ctx_struct) -> truth_t;
114    pub fn gr_series_ctx_is_commutative_ring(ctx: *mut gr_ctx_struct) -> truth_t;
115    pub fn gr_series_ctx_is_integral_domain(ctx: *mut gr_ctx_struct) -> truth_t;
116    pub fn gr_series_ctx_is_rational_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
117    pub fn gr_series_ctx_is_real_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
118    pub fn gr_series_ctx_is_complex_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
119    pub fn gr_series_ctx_set_gen_name(
120        ctx: *mut gr_ctx_struct,
121        s: *const libc::c_char,
122    ) -> libc::c_int;
123    pub fn gr_series_ctx_set_gen_names(
124        ctx: *mut gr_ctx_struct,
125        s: *mut *const libc::c_char,
126    ) -> libc::c_int;
127    pub fn gr_series_init(res: *mut gr_series_struct, ctx: *mut gr_ctx_struct);
128    pub fn gr_series_clear(res: *mut gr_series_struct, ctx: *mut gr_ctx_struct);
129    pub fn gr_series_swap(
130        x: *mut gr_series_struct,
131        y: *mut gr_series_struct,
132        ctx: *mut gr_ctx_struct,
133    );
134    pub fn gr_series_set_shallow(
135        res: *mut gr_series_struct,
136        x: *const gr_series_struct,
137        ctx: *mut gr_ctx_struct,
138    );
139    pub fn _gr_series_get_error(x: *const gr_series_struct, ctx: *mut gr_ctx_struct) -> slong;
140    pub fn _gr_series_is_exact(x: *const gr_series_struct, ctx: *mut gr_ctx_struct) -> truth_t;
141    pub fn _gr_series_set_error(x: *mut gr_series_struct, err: slong, ctx: *mut gr_ctx_struct);
142    pub fn _gr_series_make_exact(x: *mut gr_series_struct, ctx: *mut gr_ctx_struct);
143    pub fn gr_series_randtest(
144        res: *mut gr_series_struct,
145        state: *mut flint_rand_struct,
146        ctx: *mut gr_ctx_struct,
147    ) -> libc::c_int;
148    pub fn gr_series_write(
149        out: *mut gr_stream_struct,
150        x: *const gr_series_struct,
151        ctx: *mut gr_ctx_struct,
152    ) -> libc::c_int;
153    pub fn gr_series_zero(res: *mut gr_series_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
154    pub fn gr_series_one(res: *mut gr_series_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
155    pub fn gr_series_set(
156        res: *mut gr_series_struct,
157        x: *const gr_series_struct,
158        ctx: *mut gr_ctx_struct,
159    ) -> libc::c_int;
160    pub fn gr_series_gen(res: *mut gr_series_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
161    pub fn gr_series_gens_recursive(
162        vec: *mut gr_vec_struct,
163        ctx: *mut gr_ctx_struct,
164    ) -> libc::c_int;
165    pub fn gr_series_neg(
166        res: *mut gr_series_struct,
167        x: *const gr_series_struct,
168        ctx: *mut gr_ctx_struct,
169    ) -> libc::c_int;
170    pub fn gr_series_set_gr_poly(
171        res: *mut gr_series_struct,
172        x: *const gr_poly_struct,
173        ctx: *mut gr_ctx_struct,
174    ) -> libc::c_int;
175    pub fn gr_series_set_scalar(
176        res: *mut gr_series_struct,
177        x: gr_srcptr,
178        ctx: *mut gr_ctx_struct,
179    ) -> libc::c_int;
180    pub fn gr_series_set_si(
181        res: *mut gr_series_struct,
182        c: slong,
183        ctx: *mut gr_ctx_struct,
184    ) -> libc::c_int;
185    pub fn gr_series_set_ui(
186        res: *mut gr_series_struct,
187        c: ulong,
188        ctx: *mut gr_ctx_struct,
189    ) -> libc::c_int;
190    pub fn gr_series_set_fmpz(
191        res: *mut gr_series_struct,
192        c: *const fmpz,
193        ctx: *mut gr_ctx_struct,
194    ) -> libc::c_int;
195    pub fn gr_series_set_fmpq(
196        res: *mut gr_series_struct,
197        c: *const fmpq,
198        ctx: *mut gr_ctx_struct,
199    ) -> libc::c_int;
200    pub fn gr_series_set_other(
201        res: *mut gr_series_struct,
202        x: gr_srcptr,
203        x_ctx: *mut gr_ctx_struct,
204        ctx: *mut gr_ctx_struct,
205    ) -> libc::c_int;
206    pub fn gr_series_is_zero(x: *const gr_series_struct, ctx: *mut gr_ctx_struct) -> truth_t;
207    pub fn gr_series_is_one(x: *const gr_series_struct, ctx: *mut gr_ctx_struct) -> truth_t;
208    pub fn gr_series_coeff_is_zero(
209        x: *const gr_series_struct,
210        i: slong,
211        ctx: *mut gr_ctx_struct,
212    ) -> truth_t;
213    pub fn gr_series_equal(
214        x: *const gr_series_struct,
215        y: *const gr_series_struct,
216        ctx: *mut gr_ctx_struct,
217    ) -> truth_t;
218    pub fn gr_series_add(
219        res: *mut gr_series_struct,
220        x: *const gr_series_struct,
221        y: *const gr_series_struct,
222        ctx: *mut gr_ctx_struct,
223    ) -> libc::c_int;
224    pub fn gr_series_sub(
225        res: *mut gr_series_struct,
226        x: *const gr_series_struct,
227        y: *const gr_series_struct,
228        ctx: *mut gr_ctx_struct,
229    ) -> libc::c_int;
230    pub fn gr_series_mul(
231        res: *mut gr_series_struct,
232        x: *const gr_series_struct,
233        y: *const gr_series_struct,
234        ctx: *mut gr_ctx_struct,
235    ) -> libc::c_int;
236    pub fn gr_series_inv(
237        res: *mut gr_series_struct,
238        x: *const gr_series_struct,
239        ctx: *mut gr_ctx_struct,
240    ) -> libc::c_int;
241    pub fn gr_series_div(
242        res: *mut gr_series_struct,
243        x: *const gr_series_struct,
244        y: *const gr_series_struct,
245        ctx: *mut gr_ctx_struct,
246    ) -> libc::c_int;
247    pub fn gr_series_divexact(
248        res: *mut gr_series_struct,
249        x: *const gr_series_struct,
250        y: *const gr_series_struct,
251        ctx: *mut gr_ctx_struct,
252    ) -> libc::c_int;
253    pub fn gr_series_sqrt(
254        res: *mut gr_series_struct,
255        x: *const gr_series_struct,
256        ctx: *mut gr_ctx_struct,
257    ) -> libc::c_int;
258    pub fn gr_series_rsqrt(
259        res: *mut gr_series_struct,
260        x: *const gr_series_struct,
261        ctx: *mut gr_ctx_struct,
262    ) -> libc::c_int;
263    pub fn gr_series_exp(
264        res: *mut gr_series_struct,
265        x: *const gr_series_struct,
266        ctx: *mut gr_ctx_struct,
267    ) -> libc::c_int;
268    pub fn gr_series_log(
269        res: *mut gr_series_struct,
270        x: *const gr_series_struct,
271        ctx: *mut gr_ctx_struct,
272    ) -> libc::c_int;
273    pub fn gr_series_tan(
274        res: *mut gr_series_struct,
275        x: *const gr_series_struct,
276        ctx: *mut gr_ctx_struct,
277    ) -> libc::c_int;
278    pub fn gr_series_asin(
279        res: *mut gr_series_struct,
280        x: *const gr_series_struct,
281        ctx: *mut gr_ctx_struct,
282    ) -> libc::c_int;
283    pub fn gr_series_acos(
284        res: *mut gr_series_struct,
285        x: *const gr_series_struct,
286        ctx: *mut gr_ctx_struct,
287    ) -> libc::c_int;
288    pub fn gr_series_atan(
289        res: *mut gr_series_struct,
290        x: *const gr_series_struct,
291        ctx: *mut gr_ctx_struct,
292    ) -> libc::c_int;
293    pub fn gr_series_asinh(
294        res: *mut gr_series_struct,
295        x: *const gr_series_struct,
296        ctx: *mut gr_ctx_struct,
297    ) -> libc::c_int;
298    pub fn gr_series_acosh(
299        res: *mut gr_series_struct,
300        x: *const gr_series_struct,
301        ctx: *mut gr_ctx_struct,
302    ) -> libc::c_int;
303    pub fn gr_series_atanh(
304        res: *mut gr_series_struct,
305        x: *const gr_series_struct,
306        ctx: *mut gr_ctx_struct,
307    ) -> libc::c_int;
308    pub fn gr_series_gamma(
309        res: *mut gr_series_struct,
310        x: *const gr_series_struct,
311        ctx: *mut gr_ctx_struct,
312    ) -> libc::c_int;
313    pub fn gr_series_rgamma(
314        res: *mut gr_series_struct,
315        x: *const gr_series_struct,
316        ctx: *mut gr_ctx_struct,
317    ) -> libc::c_int;
318    pub fn gr_series_lgamma(
319        res: *mut gr_series_struct,
320        x: *const gr_series_struct,
321        ctx: *mut gr_ctx_struct,
322    ) -> libc::c_int;
323    pub fn gr_series_digamma(
324        res: *mut gr_series_struct,
325        x: *const gr_series_struct,
326        ctx: *mut gr_ctx_struct,
327    ) -> libc::c_int;
328    pub fn gr_series_erf(
329        res: *mut gr_series_struct,
330        x: *const gr_series_struct,
331        ctx: *mut gr_ctx_struct,
332    ) -> libc::c_int;
333    pub fn gr_series_erfc(
334        res: *mut gr_series_struct,
335        x: *const gr_series_struct,
336        ctx: *mut gr_ctx_struct,
337    ) -> libc::c_int;
338    pub fn gr_series_erfi(
339        res: *mut gr_series_struct,
340        x: *const gr_series_struct,
341        ctx: *mut gr_ctx_struct,
342    ) -> libc::c_int;
343    pub fn gr_series_exp_integral_ei(
344        res: *mut gr_series_struct,
345        x: *const gr_series_struct,
346        ctx: *mut gr_ctx_struct,
347    ) -> libc::c_int;
348    pub fn gr_series_cos_integral(
349        res: *mut gr_series_struct,
350        x: *const gr_series_struct,
351        ctx: *mut gr_ctx_struct,
352    ) -> libc::c_int;
353    pub fn gr_series_cosh_integral(
354        res: *mut gr_series_struct,
355        x: *const gr_series_struct,
356        ctx: *mut gr_ctx_struct,
357    ) -> libc::c_int;
358    pub fn gr_series_sin_integral(
359        res: *mut gr_series_struct,
360        x: *const gr_series_struct,
361        ctx: *mut gr_ctx_struct,
362    ) -> libc::c_int;
363    pub fn gr_series_sinh_integral(
364        res: *mut gr_series_struct,
365        x: *const gr_series_struct,
366        ctx: *mut gr_ctx_struct,
367    ) -> libc::c_int;
368    pub fn gr_series_fresnel(
369        res1: *mut gr_series_struct,
370        res2: *mut gr_series_struct,
371        x: *const gr_series_struct,
372        normalized: libc::c_int,
373        ctx: *mut gr_ctx_struct,
374    ) -> libc::c_int;
375    pub fn gr_series_fresnel_s(
376        res: *mut gr_series_struct,
377        x: *const gr_series_struct,
378        normalized: libc::c_int,
379        ctx: *mut gr_ctx_struct,
380    ) -> libc::c_int;
381    pub fn gr_series_fresnel_c(
382        res: *mut gr_series_struct,
383        x: *const gr_series_struct,
384        normalized: libc::c_int,
385        ctx: *mut gr_ctx_struct,
386    ) -> libc::c_int;
387    pub fn gr_series_airy(
388        res1: *mut gr_series_struct,
389        res2: *mut gr_series_struct,
390        res3: *mut gr_series_struct,
391        res4: *mut gr_series_struct,
392        x: *const gr_series_struct,
393        ctx: *mut gr_ctx_struct,
394    ) -> libc::c_int;
395    pub fn gr_series_airy_ai(
396        res: *mut gr_series_struct,
397        x: *const gr_series_struct,
398        ctx: *mut gr_ctx_struct,
399    ) -> libc::c_int;
400    pub fn gr_series_airy_ai_prime(
401        res: *mut gr_series_struct,
402        x: *const gr_series_struct,
403        ctx: *mut gr_ctx_struct,
404    ) -> libc::c_int;
405    pub fn gr_series_airy_bi(
406        res: *mut gr_series_struct,
407        x: *const gr_series_struct,
408        ctx: *mut gr_ctx_struct,
409    ) -> libc::c_int;
410    pub fn gr_series_airy_bi_prime(
411        res: *mut gr_series_struct,
412        x: *const gr_series_struct,
413        ctx: *mut gr_ctx_struct,
414    ) -> libc::c_int;
415    pub fn gr_series_log_integral(
416        res: *mut gr_series_struct,
417        x: *const gr_series_struct,
418        offset: libc::c_int,
419        ctx: *mut gr_ctx_struct,
420    ) -> libc::c_int;
421    pub fn gr_series_gamma_upper(
422        res: *mut gr_series_struct,
423        s: *const gr_series_struct,
424        x: *const gr_series_struct,
425        regularized: libc::c_int,
426        ctx: *mut gr_ctx_struct,
427    ) -> libc::c_int;
428    pub fn gr_series_gamma_lower(
429        res: *mut gr_series_struct,
430        s: *const gr_series_struct,
431        x: *const gr_series_struct,
432        regularized: libc::c_int,
433        ctx: *mut gr_ctx_struct,
434    ) -> libc::c_int;
435    pub fn gr_series_beta_lower(
436        res: *mut gr_series_struct,
437        a: *const gr_series_struct,
438        b: *const gr_series_struct,
439        x: *const gr_series_struct,
440        regularized: libc::c_int,
441        ctx: *mut gr_ctx_struct,
442    ) -> libc::c_int;
443    pub fn gr_series_polylog(
444        res: *mut gr_series_struct,
445        s: *const gr_series_struct,
446        z: *const gr_series_struct,
447        ctx: *mut gr_ctx_struct,
448    ) -> libc::c_int;
449    pub fn gr_series_hurwitz_zeta(
450        res: *mut gr_series_struct,
451        s: *const gr_series_struct,
452        z: *const gr_series_struct,
453        ctx: *mut gr_ctx_struct,
454    ) -> libc::c_int;
455    pub fn gr_series_dirichlet_l(
456        res: *mut gr_series_struct,
457        G: *const dirichlet_group_struct,
458        chi: *const dirichlet_char_struct,
459        x: *const gr_series_struct,
460        ctx: *mut gr_ctx_struct,
461    ) -> libc::c_int;
462    pub fn gr_series_dirichlet_hardy_theta(
463        res: *mut gr_series_struct,
464        G: *const dirichlet_group_struct,
465        chi: *const dirichlet_char_struct,
466        x: *const gr_series_struct,
467        ctx: *mut gr_ctx_struct,
468    ) -> libc::c_int;
469    pub fn gr_series_dirichlet_hardy_z(
470        res: *mut gr_series_struct,
471        G: *const dirichlet_group_struct,
472        chi: *const dirichlet_char_struct,
473        x: *const gr_series_struct,
474        ctx: *mut gr_ctx_struct,
475    ) -> libc::c_int;
476    pub fn gr_series_jacobi_theta(
477        res1: *mut gr_series_struct,
478        res2: *mut gr_series_struct,
479        res3: *mut gr_series_struct,
480        res4: *mut gr_series_struct,
481        x: *const gr_series_struct,
482        tau: *const gr_series_struct,
483        ctx: *mut gr_ctx_struct,
484    ) -> libc::c_int;
485    pub fn gr_series_jacobi_theta_1(
486        res: *mut gr_series_struct,
487        x: *const gr_series_struct,
488        tau: *const gr_series_struct,
489        ctx: *mut gr_ctx_struct,
490    ) -> libc::c_int;
491    pub fn gr_series_jacobi_theta_2(
492        res: *mut gr_series_struct,
493        x: *const gr_series_struct,
494        tau: *const gr_series_struct,
495        ctx: *mut gr_ctx_struct,
496    ) -> libc::c_int;
497    pub fn gr_series_jacobi_theta_3(
498        res: *mut gr_series_struct,
499        x: *const gr_series_struct,
500        tau: *const gr_series_struct,
501        ctx: *mut gr_ctx_struct,
502    ) -> libc::c_int;
503    pub fn gr_series_jacobi_theta_4(
504        res: *mut gr_series_struct,
505        x: *const gr_series_struct,
506        tau: *const gr_series_struct,
507        ctx: *mut gr_ctx_struct,
508    ) -> libc::c_int;
509    pub fn gr_series_agm1(
510        res: *mut gr_series_struct,
511        x: *const gr_series_struct,
512        ctx: *mut gr_ctx_struct,
513    ) -> libc::c_int;
514    pub fn gr_series_elliptic_k(
515        res: *mut gr_series_struct,
516        x: *const gr_series_struct,
517        ctx: *mut gr_ctx_struct,
518    ) -> libc::c_int;
519    pub fn gr_series_weierstrass_p(
520        res: *mut gr_series_struct,
521        x: *const gr_series_struct,
522        tau: *const gr_series_struct,
523        ctx: *mut gr_ctx_struct,
524    ) -> libc::c_int;
525    pub fn gr_series_hypgeom_pfq(
526        res: *mut gr_series_struct,
527        a: *const gr_series_vec_struct,
528        b: *const gr_series_vec_struct,
529        x: *const gr_series_struct,
530        regularized: libc::c_int,
531        ctx: *mut gr_ctx_struct,
532    ) -> libc::c_int;
533    pub fn gr_series_mod_ctx_init(ctx: *mut gr_ctx_struct, base_ring: *mut gr_ctx_struct, n: slong);
534    pub fn gr_series_mod_ctx_clear(ctx: *mut gr_ctx_struct);
535    pub fn gr_series_mod_ctx_write(
536        out: *mut gr_stream_struct,
537        ctx: *mut gr_ctx_struct,
538    ) -> libc::c_int;
539    pub fn gr_series_mod_ctx_is_ring(ctx: *mut gr_ctx_struct) -> truth_t;
540    pub fn gr_series_mod_ctx_is_commutative_ring(ctx: *mut gr_ctx_struct) -> truth_t;
541    pub fn gr_series_mod_ctx_is_integral_domain(ctx: *mut gr_ctx_struct) -> truth_t;
542    pub fn gr_series_mod_ctx_is_rational_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
543    pub fn gr_series_mod_ctx_is_real_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
544    pub fn gr_series_mod_ctx_is_complex_vector_space(ctx: *mut gr_ctx_struct) -> truth_t;
545    pub fn gr_series_mod_ctx_is_field(ctx: *mut gr_ctx_struct) -> truth_t;
546    pub fn gr_series_mod_ctx_set_gen_name(
547        ctx: *mut gr_ctx_struct,
548        s: *const libc::c_char,
549    ) -> libc::c_int;
550    pub fn gr_series_mod_ctx_set_gen_names(
551        ctx: *mut gr_ctx_struct,
552        s: *mut *const libc::c_char,
553    ) -> libc::c_int;
554    pub fn gr_series_mod_gens_recursive(
555        vec: *mut gr_vec_struct,
556        ctx: *mut gr_ctx_struct,
557    ) -> libc::c_int;
558    pub fn gr_series_mod_init(res: *mut gr_poly_struct, ctx: *mut gr_ctx_struct);
559    pub fn gr_series_mod_clear(res: *mut gr_poly_struct, ctx: *mut gr_ctx_struct);
560    pub fn gr_series_mod_swap(
561        x: *mut gr_poly_struct,
562        y: *mut gr_poly_struct,
563        ctx: *mut gr_ctx_struct,
564    );
565    pub fn gr_series_mod_randtest(
566        res: *mut gr_poly_struct,
567        state: *mut flint_rand_struct,
568        ctx: *mut gr_ctx_struct,
569    ) -> libc::c_int;
570    pub fn gr_series_mod_write(
571        out: *mut gr_stream_struct,
572        x: *const gr_poly_struct,
573        ctx: *mut gr_ctx_struct,
574    ) -> libc::c_int;
575    pub fn gr_series_mod_zero(res: *mut gr_poly_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
576    pub fn gr_series_mod_one(res: *mut gr_poly_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
577    pub fn gr_series_mod_gen(res: *mut gr_poly_struct, ctx: *mut gr_ctx_struct) -> libc::c_int;
578    pub fn gr_series_mod_set(
579        res: *mut gr_poly_struct,
580        x: *const gr_poly_struct,
581        ctx: *mut gr_ctx_struct,
582    ) -> libc::c_int;
583    pub fn gr_series_mod_set_other(
584        res: *mut gr_poly_struct,
585        x: gr_srcptr,
586        x_ctx: *mut gr_ctx_struct,
587        ctx: *mut gr_ctx_struct,
588    ) -> libc::c_int;
589    pub fn gr_series_mod_set_shallow(
590        res: *mut gr_poly_struct,
591        x: *const gr_poly_struct,
592        ctx: *mut gr_ctx_struct,
593    );
594    pub fn gr_series_mod_set_si(
595        res: *mut gr_poly_struct,
596        c: slong,
597        ctx: *mut gr_ctx_struct,
598    ) -> libc::c_int;
599    pub fn gr_series_mod_set_ui(
600        res: *mut gr_poly_struct,
601        c: ulong,
602        ctx: *mut gr_ctx_struct,
603    ) -> libc::c_int;
604    pub fn gr_series_mod_set_fmpz(
605        res: *mut gr_poly_struct,
606        c: *const fmpz,
607        ctx: *mut gr_ctx_struct,
608    ) -> libc::c_int;
609    pub fn gr_series_mod_set_fmpq(
610        res: *mut gr_poly_struct,
611        c: *const fmpq,
612        ctx: *mut gr_ctx_struct,
613    ) -> libc::c_int;
614    pub fn gr_series_mod_is_zero(x: *const gr_poly_struct, ctx: *mut gr_ctx_struct) -> truth_t;
615    pub fn gr_series_mod_is_one(x: *const gr_poly_struct, ctx: *mut gr_ctx_struct) -> truth_t;
616    pub fn gr_series_mod_equal(
617        x: *const gr_poly_struct,
618        y: *const gr_poly_struct,
619        ctx: *mut gr_ctx_struct,
620    ) -> truth_t;
621    pub fn gr_series_mod_neg(
622        res: *mut gr_poly_struct,
623        x: *const gr_poly_struct,
624        ctx: *mut gr_ctx_struct,
625    ) -> libc::c_int;
626    pub fn gr_series_mod_add(
627        res: *mut gr_poly_struct,
628        x: *const gr_poly_struct,
629        y: *const gr_poly_struct,
630        ctx: *mut gr_ctx_struct,
631    ) -> libc::c_int;
632    pub fn gr_series_mod_sub(
633        res: *mut gr_poly_struct,
634        x: *const gr_poly_struct,
635        y: *const gr_poly_struct,
636        ctx: *mut gr_ctx_struct,
637    ) -> libc::c_int;
638    pub fn gr_series_mod_mul(
639        res: *mut gr_poly_struct,
640        x: *const gr_poly_struct,
641        y: *const gr_poly_struct,
642        ctx: *mut gr_ctx_struct,
643    ) -> libc::c_int;
644    pub fn gr_series_mod_inv(
645        res: *mut gr_poly_struct,
646        x: *const gr_poly_struct,
647        ctx: *mut gr_ctx_struct,
648    ) -> libc::c_int;
649    pub fn gr_series_mod_div(
650        res: *mut gr_poly_struct,
651        x: *const gr_poly_struct,
652        y: *const gr_poly_struct,
653        ctx: *mut gr_ctx_struct,
654    ) -> libc::c_int;
655    pub fn gr_series_mod_exp(
656        res: *mut gr_poly_struct,
657        x: *const gr_poly_struct,
658        ctx: *mut gr_ctx_struct,
659    ) -> libc::c_int;
660    pub fn gr_series_mod_log(
661        res: *mut gr_poly_struct,
662        x: *const gr_poly_struct,
663        ctx: *mut gr_ctx_struct,
664    ) -> libc::c_int;
665    pub fn gr_series_mod_sqrt(
666        res: *mut gr_poly_struct,
667        x: *const gr_poly_struct,
668        ctx: *mut gr_ctx_struct,
669    ) -> libc::c_int;
670    pub fn gr_series_mod_rsqrt(
671        res: *mut gr_poly_struct,
672        x: *const gr_poly_struct,
673        ctx: *mut gr_ctx_struct,
674    ) -> libc::c_int;
675    pub fn gr_series_mod_tan(
676        res: *mut gr_poly_struct,
677        x: *const gr_poly_struct,
678        ctx: *mut gr_ctx_struct,
679    ) -> libc::c_int;
680    pub fn gr_series_mod_asin(
681        res: *mut gr_poly_struct,
682        x: *const gr_poly_struct,
683        ctx: *mut gr_ctx_struct,
684    ) -> libc::c_int;
685    pub fn gr_series_mod_acos(
686        res: *mut gr_poly_struct,
687        x: *const gr_poly_struct,
688        ctx: *mut gr_ctx_struct,
689    ) -> libc::c_int;
690    pub fn gr_series_mod_atan(
691        res: *mut gr_poly_struct,
692        x: *const gr_poly_struct,
693        ctx: *mut gr_ctx_struct,
694    ) -> libc::c_int;
695    pub fn gr_series_mod_asinh(
696        res: *mut gr_poly_struct,
697        x: *const gr_poly_struct,
698        ctx: *mut gr_ctx_struct,
699    ) -> libc::c_int;
700    pub fn gr_series_mod_acosh(
701        res: *mut gr_poly_struct,
702        x: *const gr_poly_struct,
703        ctx: *mut gr_ctx_struct,
704    ) -> libc::c_int;
705    pub fn gr_series_mod_atanh(
706        res: *mut gr_poly_struct,
707        x: *const gr_poly_struct,
708        ctx: *mut gr_ctx_struct,
709    ) -> libc::c_int;
710}