Skip to main content

flint_sys/
acb.rs

1/* automatically generated by rust-bindgen 0.70.1 */
2
3use libc::*;
4use crate::deps::*;
5use crate::acb_types::*;
6use crate::arb_types::*;
7use crate::arf_types::*;
8use crate::flint::*;
9
10
11pub const ACB_LAMBERTW_LEFT: u32 = 2;
12pub const ACB_LAMBERTW_MIDDLE: u32 = 4;
13extern "C" {
14    #[link_name = "acb_init__extern"]
15    pub fn acb_init(x: *mut acb_struct);
16    pub fn acb_clear(x: *mut acb_struct);
17    pub fn _acb_vec_init(n: slong) -> acb_ptr;
18    pub fn _acb_vec_clear(v: acb_ptr, n: slong);
19    #[link_name = "acb_real_ptr__extern"]
20    pub fn acb_real_ptr(z: *mut acb_struct) -> arb_ptr;
21    #[link_name = "acb_imag_ptr__extern"]
22    pub fn acb_imag_ptr(z: *mut acb_struct) -> arb_ptr;
23    #[link_name = "acb_get_real__extern"]
24    pub fn acb_get_real(re: *mut arb_struct, z: *const acb_struct);
25    #[link_name = "acb_get_imag__extern"]
26    pub fn acb_get_imag(im: *mut arb_struct, z: *const acb_struct);
27    #[link_name = "acb_get_mid__extern"]
28    pub fn acb_get_mid(res: *mut acb_struct, x: *const acb_struct);
29    #[link_name = "acb_is_zero__extern"]
30    pub fn acb_is_zero(z: *const acb_struct) -> libc::c_int;
31    #[link_name = "acb_is_one__extern"]
32    pub fn acb_is_one(z: *const acb_struct) -> libc::c_int;
33    #[link_name = "acb_is_exact__extern"]
34    pub fn acb_is_exact(z: *const acb_struct) -> libc::c_int;
35    #[link_name = "acb_is_int__extern"]
36    pub fn acb_is_int(z: *const acb_struct) -> libc::c_int;
37    #[link_name = "acb_is_int_2exp_si__extern"]
38    pub fn acb_is_int_2exp_si(z: *const acb_struct, e: slong) -> libc::c_int;
39    #[link_name = "acb_zero__extern"]
40    pub fn acb_zero(z: *mut acb_struct);
41    #[link_name = "acb_one__extern"]
42    pub fn acb_one(z: *mut acb_struct);
43    #[link_name = "acb_onei__extern"]
44    pub fn acb_onei(z: *mut acb_struct);
45    #[link_name = "acb_set__extern"]
46    pub fn acb_set(z: *mut acb_struct, x: *const acb_struct);
47    #[link_name = "acb_set_round__extern"]
48    pub fn acb_set_round(z: *mut acb_struct, x: *const acb_struct, prec: slong);
49    #[link_name = "acb_neg_round__extern"]
50    pub fn acb_neg_round(z: *mut acb_struct, x: *const acb_struct, prec: slong);
51    #[link_name = "acb_swap__extern"]
52    pub fn acb_swap(z: *mut acb_struct, x: *mut acb_struct);
53    #[link_name = "acb_equal__extern"]
54    pub fn acb_equal(x: *const acb_struct, y: *const acb_struct) -> libc::c_int;
55    #[link_name = "acb_equal_si__extern"]
56    pub fn acb_equal_si(x: *const acb_struct, y: slong) -> libc::c_int;
57    #[link_name = "acb_eq__extern"]
58    pub fn acb_eq(x: *const acb_struct, y: *const acb_struct) -> libc::c_int;
59    #[link_name = "acb_ne__extern"]
60    pub fn acb_ne(x: *const acb_struct, y: *const acb_struct) -> libc::c_int;
61    #[link_name = "acb_overlaps__extern"]
62    pub fn acb_overlaps(x: *const acb_struct, y: *const acb_struct) -> libc::c_int;
63    #[link_name = "acb_contains_zero__extern"]
64    pub fn acb_contains_zero(x: *const acb_struct) -> libc::c_int;
65    #[link_name = "acb_contains_fmpq__extern"]
66    pub fn acb_contains_fmpq(x: *const acb_struct, y: *const fmpq) -> libc::c_int;
67    #[link_name = "acb_contains_fmpz__extern"]
68    pub fn acb_contains_fmpz(x: *const acb_struct, y: *const fmpz) -> libc::c_int;
69    #[link_name = "acb_contains__extern"]
70    pub fn acb_contains(x: *const acb_struct, y: *const acb_struct) -> libc::c_int;
71    #[link_name = "acb_contains_interior__extern"]
72    pub fn acb_contains_interior(x: *const acb_struct, y: *const acb_struct) -> libc::c_int;
73    #[link_name = "acb_set_ui__extern"]
74    pub fn acb_set_ui(z: *mut acb_struct, c: ulong);
75    #[link_name = "acb_set_d__extern"]
76    pub fn acb_set_d(z: *mut acb_struct, c: f64);
77    #[link_name = "acb_set_si__extern"]
78    pub fn acb_set_si(z: *mut acb_struct, c: slong);
79    #[link_name = "acb_set_si_si__extern"]
80    pub fn acb_set_si_si(z: *mut acb_struct, x: slong, y: slong);
81    #[link_name = "acb_set_d_d__extern"]
82    pub fn acb_set_d_d(z: *mut acb_struct, x: f64, y: f64);
83    #[link_name = "acb_set_fmpz__extern"]
84    pub fn acb_set_fmpz(z: *mut acb_struct, c: *const fmpz);
85    #[link_name = "acb_set_fmpz_fmpz__extern"]
86    pub fn acb_set_fmpz_fmpz(z: *mut acb_struct, x: *const fmpz, y: *const fmpz);
87    #[link_name = "acb_set_round_fmpz__extern"]
88    pub fn acb_set_round_fmpz(z: *mut acb_struct, y: *const fmpz, prec: slong);
89    pub fn acb_contains_int(x: *const acb_struct) -> libc::c_int;
90    pub fn acb_get_unique_fmpz(z: *mut fmpz, x: *const acb_struct) -> libc::c_int;
91    #[link_name = "acb_set_fmpq__extern"]
92    pub fn acb_set_fmpq(z: *mut acb_struct, c: *const fmpq, prec: slong);
93    #[link_name = "acb_set_arb__extern"]
94    pub fn acb_set_arb(z: *mut acb_struct, c: *const arb_struct);
95    #[link_name = "acb_set_arb_arb__extern"]
96    pub fn acb_set_arb_arb(z: *mut acb_struct, x: *const arb_struct, y: *const arb_struct);
97    #[link_name = "acb_set_round_arb__extern"]
98    pub fn acb_set_round_arb(z: *mut acb_struct, x: *const arb_struct, prec: slong);
99    #[link_name = "acb_trim__extern"]
100    pub fn acb_trim(z: *mut acb_struct, x: *const acb_struct);
101    #[link_name = "acb_add_error_arf__extern"]
102    pub fn acb_add_error_arf(x: *mut acb_struct, err: *const arf_struct);
103    #[link_name = "acb_add_error_mag__extern"]
104    pub fn acb_add_error_mag(x: *mut acb_struct, err: *const mag_struct);
105    #[link_name = "acb_add_error_arb__extern"]
106    pub fn acb_add_error_arb(x: *mut acb_struct, err: *const arb_struct);
107    pub fn acb_get_mag(z: *mut mag_struct, x: *const acb_struct);
108    pub fn acb_get_mag_lower(z: *mut mag_struct, x: *const acb_struct);
109    pub fn acb_get_abs_ubound_arf(u: *mut arf_struct, z: *const acb_struct, prec: slong);
110    pub fn acb_get_abs_lbound_arf(u: *mut arf_struct, z: *const acb_struct, prec: slong);
111    pub fn acb_get_rad_ubound_arf(u: *mut arf_struct, z: *const acb_struct, prec: slong);
112    #[link_name = "acb_union__extern"]
113    pub fn acb_union(res: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
114    pub fn acb_arg(r: *mut arb_struct, z: *const acb_struct, prec: slong);
115    pub fn acb_sgn(res: *mut acb_struct, z: *const acb_struct, prec: slong);
116    pub fn acb_csgn(res: *mut arb_struct, z: *const acb_struct);
117    pub fn acb_real_abs(
118        res: *mut acb_struct,
119        z: *const acb_struct,
120        analytic: libc::c_int,
121        prec: slong,
122    );
123    pub fn acb_real_sgn(
124        res: *mut acb_struct,
125        z: *const acb_struct,
126        analytic: libc::c_int,
127        prec: slong,
128    );
129    pub fn acb_real_heaviside(
130        res: *mut acb_struct,
131        z: *const acb_struct,
132        analytic: libc::c_int,
133        prec: slong,
134    );
135    pub fn acb_real_floor(
136        res: *mut acb_struct,
137        z: *const acb_struct,
138        analytic: libc::c_int,
139        prec: slong,
140    );
141    pub fn acb_real_ceil(
142        res: *mut acb_struct,
143        z: *const acb_struct,
144        analytic: libc::c_int,
145        prec: slong,
146    );
147    pub fn acb_real_max(
148        res: *mut acb_struct,
149        x: *const acb_struct,
150        y: *const acb_struct,
151        analytic: libc::c_int,
152        prec: slong,
153    );
154    pub fn acb_real_min(
155        res: *mut acb_struct,
156        x: *const acb_struct,
157        y: *const acb_struct,
158        analytic: libc::c_int,
159        prec: slong,
160    );
161    pub fn acb_real_sqrtpos(
162        res: *mut acb_struct,
163        z: *const acb_struct,
164        analytic: libc::c_int,
165        prec: slong,
166    );
167    pub fn acb_sqrt_analytic(
168        res: *mut acb_struct,
169        z: *const acb_struct,
170        analytic: libc::c_int,
171        prec: slong,
172    );
173    pub fn acb_rsqrt_analytic(
174        res: *mut acb_struct,
175        z: *const acb_struct,
176        analytic: libc::c_int,
177        prec: slong,
178    );
179    pub fn acb_log_analytic(
180        res: *mut acb_struct,
181        z: *const acb_struct,
182        analytic: libc::c_int,
183        prec: slong,
184    );
185    pub fn acb_pow_analytic(
186        res: *mut acb_struct,
187        z: *const acb_struct,
188        w: *const acb_struct,
189        analytic: libc::c_int,
190        prec: slong,
191    );
192    #[link_name = "acb_add__extern"]
193    pub fn acb_add(z: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
194    #[link_name = "acb_sub__extern"]
195    pub fn acb_sub(z: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
196    #[link_name = "acb_add_si__extern"]
197    pub fn acb_add_si(z: *mut acb_struct, x: *const acb_struct, c: slong, prec: slong);
198    #[link_name = "acb_add_ui__extern"]
199    pub fn acb_add_ui(z: *mut acb_struct, x: *const acb_struct, c: ulong, prec: slong);
200    #[link_name = "acb_sub_si__extern"]
201    pub fn acb_sub_si(z: *mut acb_struct, x: *const acb_struct, c: slong, prec: slong);
202    #[link_name = "acb_sub_ui__extern"]
203    pub fn acb_sub_ui(z: *mut acb_struct, x: *const acb_struct, c: ulong, prec: slong);
204    #[link_name = "acb_add_fmpz__extern"]
205    pub fn acb_add_fmpz(z: *mut acb_struct, x: *const acb_struct, y: *const fmpz, prec: slong);
206    #[link_name = "acb_add_arb__extern"]
207    pub fn acb_add_arb(z: *mut acb_struct, x: *const acb_struct, y: *const arb_struct, prec: slong);
208    #[link_name = "acb_sub_fmpz__extern"]
209    pub fn acb_sub_fmpz(z: *mut acb_struct, x: *const acb_struct, y: *const fmpz, prec: slong);
210    #[link_name = "acb_sub_arb__extern"]
211    pub fn acb_sub_arb(z: *mut acb_struct, x: *const acb_struct, y: *const arb_struct, prec: slong);
212    #[link_name = "acb_neg__extern"]
213    pub fn acb_neg(z: *mut acb_struct, x: *const acb_struct);
214    #[link_name = "acb_conj__extern"]
215    pub fn acb_conj(z: *mut acb_struct, x: *const acb_struct);
216    #[link_name = "acb_abs__extern"]
217    pub fn acb_abs(u: *mut arb_struct, z: *const acb_struct, prec: slong);
218    #[link_name = "acb_mul_ui__extern"]
219    pub fn acb_mul_ui(z: *mut acb_struct, x: *const acb_struct, y: ulong, prec: slong);
220    #[link_name = "acb_mul_si__extern"]
221    pub fn acb_mul_si(z: *mut acb_struct, x: *const acb_struct, y: slong, prec: slong);
222    #[link_name = "acb_mul_fmpz__extern"]
223    pub fn acb_mul_fmpz(z: *mut acb_struct, x: *const acb_struct, y: *const fmpz, prec: slong);
224    #[link_name = "acb_mul_arb__extern"]
225    pub fn acb_mul_arb(z: *mut acb_struct, x: *const acb_struct, y: *const arb_struct, prec: slong);
226    #[link_name = "acb_mul_onei__extern"]
227    pub fn acb_mul_onei(z: *mut acb_struct, x: *const acb_struct);
228    #[link_name = "acb_div_onei__extern"]
229    pub fn acb_div_onei(z: *mut acb_struct, x: *const acb_struct);
230    #[link_name = "acb_mul_i_pow_si__extern"]
231    pub fn acb_mul_i_pow_si(z: *mut acb_struct, x: *const acb_struct, k: slong);
232    pub fn acb_mul(z: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
233    pub fn acb_mul_naive(
234        z: *mut acb_struct,
235        x: *const acb_struct,
236        y: *const acb_struct,
237        prec: slong,
238    );
239    #[link_name = "acb_mul_2exp_si__extern"]
240    pub fn acb_mul_2exp_si(z: *mut acb_struct, x: *const acb_struct, e: slong);
241    #[link_name = "acb_mul_2exp_fmpz__extern"]
242    pub fn acb_mul_2exp_fmpz(z: *mut acb_struct, x: *const acb_struct, c: *const fmpz);
243    pub fn acb_addmul(z: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
244    pub fn acb_submul(z: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
245    #[link_name = "acb_addmul_ui__extern"]
246    pub fn acb_addmul_ui(z: *mut acb_struct, x: *const acb_struct, y: ulong, prec: slong);
247    #[link_name = "acb_addmul_si__extern"]
248    pub fn acb_addmul_si(z: *mut acb_struct, x: *const acb_struct, y: slong, prec: slong);
249    #[link_name = "acb_submul_ui__extern"]
250    pub fn acb_submul_ui(z: *mut acb_struct, x: *const acb_struct, y: ulong, prec: slong);
251    #[link_name = "acb_submul_si__extern"]
252    pub fn acb_submul_si(z: *mut acb_struct, x: *const acb_struct, y: slong, prec: slong);
253    #[link_name = "acb_addmul_fmpz__extern"]
254    pub fn acb_addmul_fmpz(z: *mut acb_struct, x: *const acb_struct, y: *const fmpz, prec: slong);
255    #[link_name = "acb_submul_fmpz__extern"]
256    pub fn acb_submul_fmpz(z: *mut acb_struct, x: *const acb_struct, y: *const fmpz, prec: slong);
257    #[link_name = "acb_addmul_arb__extern"]
258    pub fn acb_addmul_arb(
259        z: *mut acb_struct,
260        x: *const acb_struct,
261        y: *const arb_struct,
262        prec: slong,
263    );
264    #[link_name = "acb_submul_arb__extern"]
265    pub fn acb_submul_arb(
266        z: *mut acb_struct,
267        x: *const acb_struct,
268        y: *const arb_struct,
269        prec: slong,
270    );
271    pub fn acb_dot_simple(
272        res: *mut acb_struct,
273        initial: *const acb_struct,
274        subtract: libc::c_int,
275        x: acb_srcptr,
276        xstep: slong,
277        y: acb_srcptr,
278        ystep: slong,
279        len: slong,
280        prec: slong,
281    );
282    pub fn acb_dot_precise(
283        res: *mut acb_struct,
284        initial: *const acb_struct,
285        subtract: libc::c_int,
286        x: acb_srcptr,
287        xstep: slong,
288        y: acb_srcptr,
289        ystep: slong,
290        len: slong,
291        prec: slong,
292    );
293    pub fn acb_dot(
294        res: *mut acb_struct,
295        initial: *const acb_struct,
296        subtract: libc::c_int,
297        x: acb_srcptr,
298        xstep: slong,
299        y: acb_srcptr,
300        ystep: slong,
301        len: slong,
302        prec: slong,
303    );
304    pub fn acb_approx_dot(
305        res: *mut acb_struct,
306        initial: *const acb_struct,
307        subtract: libc::c_int,
308        x: acb_srcptr,
309        xstep: slong,
310        y: acb_srcptr,
311        ystep: slong,
312        len: slong,
313        prec: slong,
314    );
315    pub fn acb_dot_ui(
316        res: *mut acb_struct,
317        initial: *const acb_struct,
318        subtract: libc::c_int,
319        x: acb_srcptr,
320        xstep: slong,
321        y: *const ulong,
322        ystep: slong,
323        len: slong,
324        prec: slong,
325    );
326    pub fn acb_dot_si(
327        res: *mut acb_struct,
328        initial: *const acb_struct,
329        subtract: libc::c_int,
330        x: acb_srcptr,
331        xstep: slong,
332        y: *const slong,
333        ystep: slong,
334        len: slong,
335        prec: slong,
336    );
337    pub fn acb_dot_uiui(
338        res: *mut acb_struct,
339        initial: *const acb_struct,
340        subtract: libc::c_int,
341        x: acb_srcptr,
342        xstep: slong,
343        y: *const ulong,
344        ystep: slong,
345        len: slong,
346        prec: slong,
347    );
348    pub fn acb_dot_siui(
349        res: *mut acb_struct,
350        initial: *const acb_struct,
351        subtract: libc::c_int,
352        x: acb_srcptr,
353        xstep: slong,
354        y: *const ulong,
355        ystep: slong,
356        len: slong,
357        prec: slong,
358    );
359    pub fn acb_dot_fmpz(
360        res: *mut acb_struct,
361        initial: *const acb_struct,
362        subtract: libc::c_int,
363        x: acb_srcptr,
364        xstep: slong,
365        y: *const fmpz,
366        ystep: slong,
367        len: slong,
368        prec: slong,
369    );
370    pub fn acb_inv(z: *mut acb_struct, x: *const acb_struct, prec: slong);
371    pub fn acb_div(z: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
372    #[link_name = "acb_div_ui__extern"]
373    pub fn acb_div_ui(z: *mut acb_struct, x: *const acb_struct, c: ulong, prec: slong);
374    #[link_name = "acb_div_si__extern"]
375    pub fn acb_div_si(z: *mut acb_struct, x: *const acb_struct, c: slong, prec: slong);
376    #[link_name = "acb_div_arb__extern"]
377    pub fn acb_div_arb(z: *mut acb_struct, x: *const acb_struct, c: *const arb_struct, prec: slong);
378    #[link_name = "acb_div_fmpz__extern"]
379    pub fn acb_div_fmpz(z: *mut acb_struct, x: *const acb_struct, c: *const fmpz, prec: slong);
380    pub fn acb_cube(y: *mut acb_struct, x: *const acb_struct, prec: slong);
381    pub fn acb_pow_fmpz(y: *mut acb_struct, b: *const acb_struct, e: *const fmpz, prec: slong);
382    pub fn acb_pow_ui(y: *mut acb_struct, b: *const acb_struct, e: ulong, prec: slong);
383    pub fn acb_pow_si(y: *mut acb_struct, b: *const acb_struct, e: slong, prec: slong);
384    #[link_name = "acb_const_pi__extern"]
385    pub fn acb_const_pi(x: *mut acb_struct, prec: slong);
386    pub fn acb_log(r: *mut acb_struct, z: *const acb_struct, prec: slong);
387    pub fn acb_log1p(r: *mut acb_struct, z: *const acb_struct, prec: slong);
388    pub fn acb_exp(r: *mut acb_struct, z: *const acb_struct, prec: slong);
389    pub fn acb_exp_pi_i(r: *mut acb_struct, z: *const acb_struct, prec: slong);
390    pub fn acb_exp_invexp(
391        r: *mut acb_struct,
392        s: *mut acb_struct,
393        z: *const acb_struct,
394        prec: slong,
395    );
396    pub fn acb_expm1(r: *mut acb_struct, z: *const acb_struct, prec: slong);
397    pub fn acb_sin(r: *mut acb_struct, z: *const acb_struct, prec: slong);
398    pub fn acb_cos(r: *mut acb_struct, z: *const acb_struct, prec: slong);
399    pub fn acb_sin_cos(s: *mut acb_struct, c: *mut acb_struct, z: *const acb_struct, prec: slong);
400    pub fn acb_tan(r: *mut acb_struct, z: *const acb_struct, prec: slong);
401    pub fn acb_cot(r: *mut acb_struct, z: *const acb_struct, prec: slong);
402    pub fn acb_asin(r: *mut acb_struct, z: *const acb_struct, prec: slong);
403    pub fn acb_acos(r: *mut acb_struct, z: *const acb_struct, prec: slong);
404    pub fn acb_atan(r: *mut acb_struct, z: *const acb_struct, prec: slong);
405    pub fn acb_asinh(r: *mut acb_struct, z: *const acb_struct, prec: slong);
406    pub fn acb_acosh(r: *mut acb_struct, z: *const acb_struct, prec: slong);
407    pub fn acb_atanh(r: *mut acb_struct, z: *const acb_struct, prec: slong);
408    #[link_name = "acb_sinh__extern"]
409    pub fn acb_sinh(y: *mut acb_struct, x: *const acb_struct, prec: slong);
410    #[link_name = "acb_cosh__extern"]
411    pub fn acb_cosh(y: *mut acb_struct, x: *const acb_struct, prec: slong);
412    #[link_name = "acb_sinh_cosh__extern"]
413    pub fn acb_sinh_cosh(y: *mut acb_struct, z: *mut acb_struct, x: *const acb_struct, prec: slong);
414    #[link_name = "acb_tanh__extern"]
415    pub fn acb_tanh(y: *mut acb_struct, x: *const acb_struct, prec: slong);
416    #[link_name = "acb_coth__extern"]
417    pub fn acb_coth(y: *mut acb_struct, x: *const acb_struct, prec: slong);
418    pub fn acb_sech(r: *mut acb_struct, z: *const acb_struct, prec: slong);
419    pub fn acb_csch(r: *mut acb_struct, z: *const acb_struct, prec: slong);
420    #[link_name = "acb_sec__extern"]
421    pub fn acb_sec(y: *mut acb_struct, x: *const acb_struct, prec: slong);
422    #[link_name = "acb_csc__extern"]
423    pub fn acb_csc(y: *mut acb_struct, x: *const acb_struct, prec: slong);
424    pub fn acb_sin_pi(r: *mut acb_struct, z: *const acb_struct, prec: slong);
425    pub fn acb_cos_pi(r: *mut acb_struct, z: *const acb_struct, prec: slong);
426    pub fn acb_sin_cos_pi(
427        s: *mut acb_struct,
428        c: *mut acb_struct,
429        z: *const acb_struct,
430        prec: slong,
431    );
432    pub fn acb_tan_pi(r: *mut acb_struct, z: *const acb_struct, prec: slong);
433    pub fn acb_cot_pi(r: *mut acb_struct, z: *const acb_struct, prec: slong);
434    pub fn acb_csc_pi(y: *mut acb_struct, x: *const acb_struct, prec: slong);
435    pub fn acb_sinc(res: *mut acb_struct, z: *const acb_struct, prec: slong);
436    pub fn acb_sinc_pi(res: *mut acb_struct, z: *const acb_struct, prec: slong);
437    pub fn acb_pow_arb(z: *mut acb_struct, x: *const acb_struct, y: *const arb_struct, prec: slong);
438    pub fn acb_pow(r: *mut acb_struct, x: *const acb_struct, y: *const acb_struct, prec: slong);
439    pub fn acb_sqrt(y: *mut acb_struct, x: *const acb_struct, prec: slong);
440    pub fn acb_rsqrt(y: *mut acb_struct, x: *const acb_struct, prec: slong);
441    pub fn acb_sqrts(y1: *mut acb_struct, y2: *mut acb_struct, x: *const acb_struct, prec: slong);
442    pub fn acb_root_ui(y: *mut acb_struct, x: *const acb_struct, k: ulong, prec: slong);
443    pub fn acb_quadratic_roots_fmpz(
444        r1: *mut acb_struct,
445        r2: *mut acb_struct,
446        a: *const fmpz,
447        b: *const fmpz,
448        c: *const fmpz,
449        prec: slong,
450    );
451    pub fn acb_chebyshev_t_ui(a: *mut acb_struct, n: ulong, x: *const acb_struct, prec: slong);
452    pub fn acb_chebyshev_t2_ui(
453        a: *mut acb_struct,
454        b: *mut acb_struct,
455        n: ulong,
456        x: *const acb_struct,
457        prec: slong,
458    );
459    pub fn acb_chebyshev_u_ui(a: *mut acb_struct, n: ulong, x: *const acb_struct, prec: slong);
460    pub fn acb_chebyshev_u2_ui(
461        a: *mut acb_struct,
462        b: *mut acb_struct,
463        n: ulong,
464        x: *const acb_struct,
465        prec: slong,
466    );
467    pub fn acb_rising_ui(z: *mut acb_struct, x: *const acb_struct, n: ulong, prec: slong);
468    pub fn acb_rising(z: *mut acb_struct, x: *const acb_struct, n: *const acb_struct, prec: slong);
469    pub fn acb_rising2_ui(
470        u: *mut acb_struct,
471        v: *mut acb_struct,
472        x: *const acb_struct,
473        n: ulong,
474        prec: slong,
475    );
476    pub fn acb_rising_ui_get_mag(bound: *mut mag_struct, s: *const acb_struct, n: ulong);
477    pub fn acb_gamma(y: *mut acb_struct, x: *const acb_struct, prec: slong);
478    pub fn acb_rgamma(y: *mut acb_struct, x: *const acb_struct, prec: slong);
479    pub fn acb_lgamma(y: *mut acb_struct, x: *const acb_struct, prec: slong);
480    pub fn acb_log_sin_pi(res: *mut acb_struct, z: *const acb_struct, prec: slong);
481    pub fn acb_digamma(y: *mut acb_struct, x: *const acb_struct, prec: slong);
482    pub fn acb_zeta(z: *mut acb_struct, s: *const acb_struct, prec: slong);
483    pub fn acb_hurwitz_zeta(
484        z: *mut acb_struct,
485        s: *const acb_struct,
486        a: *const acb_struct,
487        prec: slong,
488    );
489    pub fn acb_polygamma(
490        res: *mut acb_struct,
491        s: *const acb_struct,
492        z: *const acb_struct,
493        prec: slong,
494    );
495    pub fn acb_bernoulli_poly_ui(res: *mut acb_struct, n: ulong, x: *const acb_struct, prec: slong);
496    pub fn acb_log_barnes_g(res: *mut acb_struct, z: *const acb_struct, prec: slong);
497    pub fn acb_barnes_g(res: *mut acb_struct, z: *const acb_struct, prec: slong);
498    pub fn acb_polylog(w: *mut acb_struct, s: *const acb_struct, z: *const acb_struct, prec: slong);
499    pub fn acb_polylog_si(w: *mut acb_struct, s: slong, z: *const acb_struct, prec: slong);
500    pub fn acb_agm1(m: *mut acb_struct, z: *const acb_struct, prec: slong);
501    pub fn acb_agm1_cpx(m: acb_ptr, z: *const acb_struct, len: slong, prec: slong);
502    pub fn acb_agm(res: *mut acb_struct, a: *const acb_struct, b: *const acb_struct, prec: slong);
503    pub fn acb_lambertw_asymp(
504        res: *mut acb_struct,
505        z: *const acb_struct,
506        k: *const fmpz,
507        L: slong,
508        M: slong,
509        prec: slong,
510    );
511    pub fn acb_lambertw_check_branch(
512        w: *const acb_struct,
513        k: *const fmpz,
514        prec: slong,
515    ) -> libc::c_int;
516    pub fn acb_lambertw_bound_deriv(
517        res: *mut mag_struct,
518        z: *const acb_struct,
519        ez1: *const acb_struct,
520        k: *const fmpz,
521    );
522    pub fn acb_lambertw(
523        res: *mut acb_struct,
524        z: *const acb_struct,
525        k: *const fmpz,
526        flags: libc::c_int,
527        prec: slong,
528    );
529    #[link_name = "acb_sqr__extern"]
530    pub fn acb_sqr(res: *mut acb_struct, val: *const acb_struct, prec: slong);
531    #[link_name = "acb_is_finite__extern"]
532    pub fn acb_is_finite(x: *const acb_struct) -> libc::c_int;
533    #[link_name = "acb_indeterminate__extern"]
534    pub fn acb_indeterminate(x: *mut acb_struct);
535    pub fn _acb_vec_entry_ptr(vec: acb_ptr, i: slong) -> acb_ptr;
536    pub fn _acb_vec_zero(A: acb_ptr, n: slong);
537    pub fn _acb_vec_is_zero(vec: acb_srcptr, len: slong) -> libc::c_int;
538    pub fn _acb_vec_set(res: acb_ptr, vec: acb_srcptr, len: slong);
539    pub fn _acb_vec_set_round(res: acb_ptr, vec: acb_srcptr, len: slong, prec: slong);
540    pub fn _acb_vec_swap(res: acb_ptr, vec: acb_ptr, len: slong);
541    pub fn _acb_vec_neg(res: acb_ptr, vec: acb_srcptr, len: slong);
542    pub fn _acb_vec_add(res: acb_ptr, vec1: acb_srcptr, vec2: acb_srcptr, len: slong, prec: slong);
543    pub fn _acb_vec_sub(res: acb_ptr, vec1: acb_srcptr, vec2: acb_srcptr, len: slong, prec: slong);
544    pub fn _acb_vec_scalar_submul(
545        res: acb_ptr,
546        vec: acb_srcptr,
547        len: slong,
548        c: *const acb_struct,
549        prec: slong,
550    );
551    pub fn _acb_vec_scalar_addmul(
552        res: acb_ptr,
553        vec: acb_srcptr,
554        len: slong,
555        c: *const acb_struct,
556        prec: slong,
557    );
558    pub fn _acb_vec_scalar_mul(
559        res: acb_ptr,
560        vec: acb_srcptr,
561        len: slong,
562        c: *const acb_struct,
563        prec: slong,
564    );
565    pub fn _acb_vec_scalar_mul_ui(res: acb_ptr, vec: acb_srcptr, len: slong, c: ulong, prec: slong);
566    pub fn _acb_vec_scalar_mul_2exp_si(res: acb_ptr, vec: acb_srcptr, len: slong, c: slong);
567    pub fn _acb_vec_scalar_mul_onei(res: acb_ptr, vec: acb_srcptr, len: slong);
568    pub fn _acb_vec_scalar_div_ui(res: acb_ptr, vec: acb_srcptr, len: slong, c: ulong, prec: slong);
569    pub fn _acb_vec_scalar_div(
570        res: acb_ptr,
571        vec: acb_srcptr,
572        len: slong,
573        c: *const acb_struct,
574        prec: slong,
575    );
576    pub fn _acb_vec_scalar_mul_arb(
577        res: acb_ptr,
578        vec: acb_srcptr,
579        len: slong,
580        c: *const arb_struct,
581        prec: slong,
582    );
583    pub fn _acb_vec_scalar_div_arb(
584        res: acb_ptr,
585        vec: acb_srcptr,
586        len: slong,
587        c: *const arb_struct,
588        prec: slong,
589    );
590    pub fn _acb_vec_scalar_mul_fmpz(
591        res: acb_ptr,
592        vec: acb_srcptr,
593        len: slong,
594        c: *const fmpz,
595        prec: slong,
596    );
597    pub fn _acb_vec_scalar_div_fmpz(
598        res: acb_ptr,
599        vec: acb_srcptr,
600        len: slong,
601        c: *const fmpz,
602        prec: slong,
603    );
604    pub fn _acb_vec_sqr(res: acb_ptr, vec: acb_srcptr, len: slong, prec: slong);
605    pub fn acb_fprint(file: *mut FILE, x: *const acb_struct);
606    pub fn acb_fprintd(file: *mut FILE, z: *const acb_struct, digits: slong);
607    pub fn acb_fprintn(fp: *mut FILE, z: *const acb_struct, digits: slong, flags: ulong);
608    pub fn acb_print(x: *const acb_struct);
609    pub fn acb_printd(z: *const acb_struct, digits: slong);
610    pub fn acb_printn(x: *const acb_struct, digits: slong, flags: ulong);
611    pub fn _acb_vec_printd(vec: acb_srcptr, len: slong, ndigits: slong);
612    pub fn _acb_vec_printn(vec: acb_srcptr, len: slong, ndigits: slong, flags: ulong);
613    pub fn acb_randtest(
614        z: *mut acb_struct,
615        state: *mut flint_rand_struct,
616        prec: slong,
617        mag_bits: slong,
618    );
619    pub fn acb_randtest_special(
620        z: *mut acb_struct,
621        state: *mut flint_rand_struct,
622        prec: slong,
623        mag_bits: slong,
624    );
625    pub fn acb_randtest_precise(
626        z: *mut acb_struct,
627        state: *mut flint_rand_struct,
628        prec: slong,
629        mag_bits: slong,
630    );
631    pub fn acb_randtest_param(
632        z: *mut acb_struct,
633        state: *mut flint_rand_struct,
634        prec: slong,
635        mag_bits: slong,
636    );
637    pub fn acb_urandom(z: *mut acb_struct, state: *mut flint_rand_struct, prec: slong);
638    pub fn acb_rel_error_bits(x: *const acb_struct) -> slong;
639    #[link_name = "acb_rel_accuracy_bits__extern"]
640    pub fn acb_rel_accuracy_bits(x: *const acb_struct) -> slong;
641    pub fn acb_rel_one_accuracy_bits(x: *const acb_struct) -> slong;
642    #[link_name = "acb_bits__extern"]
643    pub fn acb_bits(x: *const acb_struct) -> slong;
644    #[link_name = "acb_is_real__extern"]
645    pub fn acb_is_real(x: *const acb_struct) -> libc::c_int;
646    pub fn _acb_vec_is_real(v: acb_srcptr, len: slong) -> libc::c_int;
647    pub fn _acb_vec_is_finite(vec: acb_srcptr, len: slong) -> libc::c_int;
648    pub fn _acb_vec_equal(vec1: acb_srcptr, vec2: acb_srcptr, len: slong) -> libc::c_int;
649    pub fn _acb_vec_overlaps(vec1: acb_srcptr, vec2: acb_srcptr, len: slong) -> libc::c_int;
650    pub fn _acb_vec_contains(vec1: acb_srcptr, vec2: acb_srcptr, len: slong) -> libc::c_int;
651    pub fn _acb_vec_get_real(re: arb_ptr, vec: acb_srcptr, len: slong);
652    pub fn _acb_vec_get_imag(im: arb_ptr, vec: acb_srcptr, len: slong);
653    pub fn _acb_vec_set_real_imag(vec: acb_ptr, re: arb_srcptr, im: arb_srcptr, len: slong);
654    pub fn _acb_vec_bits(vec: acb_srcptr, len: slong) -> slong;
655    pub fn _acb_vec_set_powers(xs: acb_ptr, x: *const acb_struct, len: slong, prec: slong);
656    pub fn _acb_vec_add_error_arf_vec(res: acb_ptr, err: arf_srcptr, len: slong);
657    pub fn _acb_vec_add_error_mag_vec(res: acb_ptr, err: mag_srcptr, len: slong);
658    pub fn _acb_vec_indeterminate(vec: acb_ptr, len: slong);
659    pub fn _acb_vec_trim(res: acb_ptr, vec: acb_srcptr, len: slong);
660    pub fn _acb_vec_get_unique_fmpz_vec(res: *mut fmpz, vec: acb_srcptr, len: slong)
661        -> libc::c_int;
662    pub fn _acb_vec_sort_pretty(vec: acb_ptr, len: slong);
663    pub fn acb_unit_root(res: *mut acb_struct, order: ulong, prec: slong);
664    pub fn _acb_vec_unit_roots(z: acb_ptr, order: slong, len: slong, prec: slong);
665    #[link_name = "acb_allocated_bytes__extern"]
666    pub fn acb_allocated_bytes(x: *const acb_struct) -> slong;
667    pub fn _acb_vec_allocated_bytes(vec: acb_srcptr, len: slong) -> slong;
668    pub fn _acb_vec_estimate_allocated_bytes(len: slong, prec: slong) -> f64;
669}