1#![allow(non_camel_case_types)]
2
3use crate::arb::{arb_ptr, arb_struct};
6use crate::arf::{arf_srcptr, arf_struct};
7use crate::mag::{mag_srcptr, mag_struct};
8use flint_sys::deps::*;
9use flint_sys::flint::*;
10use flint_sys::fmpq::fmpq;
11use flint_sys::fmpz::fmpz;
12use libc::{c_int, FILE};
13
14#[repr(C)]
15#[derive(Copy, Clone, Debug)]
16pub struct acb_struct {
17 pub real: arb_struct,
18 pub imag: arb_struct,
19}
20
21pub type acb_t = [acb_struct; 1usize];
22pub type acb_ptr = *mut acb_struct;
23pub type acb_srcptr = *const acb_struct;
24
25extern "C" {
26 pub fn acb_init(x: *mut acb_struct);
27 pub fn acb_clear(x: *mut acb_struct);
28 pub fn _acb_vec_init(n: mp_limb_signed_t) -> acb_ptr;
29 pub fn _acb_vec_clear(v: acb_ptr, n: mp_limb_signed_t);
30 pub fn acb_real_ptr(z: *mut acb_struct) -> arb_ptr;
31 pub fn acb_imag_ptr(z: *mut acb_struct) -> arb_ptr;
32 pub fn acb_get_real(re: *mut arb_struct, z: *const acb_struct);
33 pub fn acb_get_imag(im: *mut arb_struct, z: *const acb_struct);
34 pub fn acb_get_mid(res: *mut acb_struct, x: *const acb_struct);
35 pub fn acb_is_zero(z: *const acb_struct) -> c_int;
36 pub fn acb_is_one(z: *const acb_struct) -> c_int;
37 pub fn acb_is_exact(z: *const acb_struct) -> c_int;
38 pub fn acb_is_int(z: *const acb_struct) -> c_int;
39 pub fn acb_is_int_2exp_si(z: *const acb_struct, e: mp_limb_signed_t) -> c_int;
40 pub fn acb_zero(z: *mut acb_struct);
41 pub fn acb_one(z: *mut acb_struct);
42 pub fn acb_onei(z: *mut acb_struct);
43 pub fn acb_set(z: *mut acb_struct, x: *const acb_struct);
44 pub fn acb_set_round(z: *mut acb_struct, x: *const acb_struct, prec: mp_limb_signed_t);
45 pub fn acb_neg_round(z: *mut acb_struct, x: *const acb_struct, prec: mp_limb_signed_t);
46 pub fn acb_swap(z: *mut acb_struct, x: *mut acb_struct);
47 pub fn acb_equal(x: *const acb_struct, y: *const acb_struct) -> c_int;
48 pub fn acb_equal_si(x: *const acb_struct, y: mp_limb_signed_t) -> c_int;
49 pub fn acb_eq(x: *const acb_struct, y: *const acb_struct) -> c_int;
50 pub fn acb_ne(x: *const acb_struct, y: *const acb_struct) -> c_int;
51 pub fn acb_overlaps(x: *const acb_struct, y: *const acb_struct) -> c_int;
52 pub fn acb_contains_zero(x: *const acb_struct) -> c_int;
53 pub fn acb_contains_fmpq(x: *const acb_struct, y: *const fmpq) -> c_int;
54 pub fn acb_contains_fmpz(x: *const acb_struct, y: *const fmpz) -> c_int;
55 pub fn acb_contains(x: *const acb_struct, y: *const acb_struct) -> c_int;
56 pub fn acb_contains_interior(x: *const acb_struct, y: *const acb_struct) -> c_int;
57 pub fn acb_set_ui(z: *mut acb_struct, c: mp_limb_t);
58 pub fn acb_set_d(z: *mut acb_struct, c: f64);
59 pub fn acb_set_si(z: *mut acb_struct, c: mp_limb_signed_t);
60 pub fn acb_set_si_si(z: *mut acb_struct, x: mp_limb_signed_t, y: mp_limb_signed_t);
61 pub fn acb_set_d_d(z: *mut acb_struct, x: f64, y: f64);
62 pub fn acb_set_fmpz(z: *mut acb_struct, c: *const fmpz);
63 pub fn acb_set_fmpz_fmpz(z: *mut acb_struct, x: *const fmpz, y: *const fmpz);
64 pub fn acb_set_round_fmpz(z: *mut acb_struct, y: *const fmpz, prec: mp_limb_signed_t);
65 pub fn acb_contains_int(x: *const acb_struct) -> c_int;
66 pub fn acb_get_unique_fmpz(z: *mut fmpz, x: *const acb_struct) -> c_int;
67 pub fn acb_set_fmpq(z: *mut acb_struct, c: *const fmpq, prec: mp_limb_signed_t);
68 pub fn acb_set_arb(z: *mut acb_struct, c: *const arb_struct);
69 pub fn acb_set_arb_arb(z: *mut acb_struct, x: *const arb_struct, y: *const arb_struct);
70 pub fn acb_set_round_arb(z: *mut acb_struct, x: *const arb_struct, prec: mp_limb_signed_t);
71 pub fn acb_trim(z: *mut acb_struct, x: *const acb_struct);
72 pub fn acb_add_error_arf(x: *mut acb_struct, err: *const arf_struct);
73 pub fn acb_add_error_mag(x: *mut acb_struct, err: *const mag_struct);
74 pub fn acb_get_mag(z: *mut mag_struct, x: *const acb_struct);
75 pub fn acb_get_mag_lower(z: *mut mag_struct, x: *const acb_struct);
76 pub fn acb_get_abs_ubound_arf(u: *mut arf_struct, z: *const acb_struct, prec: mp_limb_signed_t);
77 pub fn acb_get_abs_lbound_arf(u: *mut arf_struct, z: *const acb_struct, prec: mp_limb_signed_t);
78 pub fn acb_get_rad_ubound_arf(u: *mut arf_struct, z: *const acb_struct, prec: mp_limb_signed_t);
79 pub fn acb_union(
80 res: *mut acb_struct,
81 x: *mut acb_struct,
82 y: *mut acb_struct,
83 prec: mp_limb_signed_t,
84 );
85 pub fn acb_arg(r: *mut arb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
86 pub fn acb_sgn(res: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
87 pub fn acb_csgn(res: *mut arb_struct, z: *mut acb_struct);
88 pub fn acb_real_abs(
89 res: *mut acb_struct,
90 z: *mut acb_struct,
91 analytic: c_int,
92 prec: mp_limb_signed_t,
93 );
94 pub fn acb_real_sgn(
95 res: *mut acb_struct,
96 z: *mut acb_struct,
97 analytic: c_int,
98 prec: mp_limb_signed_t,
99 );
100 pub fn acb_real_heaviside(
101 res: *mut acb_struct,
102 z: *mut acb_struct,
103 analytic: c_int,
104 prec: mp_limb_signed_t,
105 );
106 pub fn acb_real_floor(
107 res: *mut acb_struct,
108 z: *mut acb_struct,
109 analytic: c_int,
110 prec: mp_limb_signed_t,
111 );
112 pub fn acb_real_ceil(
113 res: *mut acb_struct,
114 z: *mut acb_struct,
115 analytic: c_int,
116 prec: mp_limb_signed_t,
117 );
118 pub fn acb_real_max(
119 res: *mut acb_struct,
120 x: *mut acb_struct,
121 y: *mut acb_struct,
122 analytic: c_int,
123 prec: mp_limb_signed_t,
124 );
125 pub fn acb_real_min(
126 res: *mut acb_struct,
127 x: *mut acb_struct,
128 y: *mut acb_struct,
129 analytic: c_int,
130 prec: mp_limb_signed_t,
131 );
132 pub fn acb_real_sqrtpos(
133 res: *mut acb_struct,
134 z: *mut acb_struct,
135 analytic: c_int,
136 prec: mp_limb_signed_t,
137 );
138 pub fn acb_sqrt_analytic(
139 res: *mut acb_struct,
140 z: *mut acb_struct,
141 analytic: c_int,
142 prec: mp_limb_signed_t,
143 );
144 pub fn acb_rsqrt_analytic(
145 res: *mut acb_struct,
146 z: *mut acb_struct,
147 analytic: c_int,
148 prec: mp_limb_signed_t,
149 );
150 pub fn acb_log_analytic(
151 res: *mut acb_struct,
152 z: *mut acb_struct,
153 analytic: c_int,
154 prec: mp_limb_signed_t,
155 );
156 pub fn acb_pow_analytic(
157 res: *mut acb_struct,
158 z: *mut acb_struct,
159 w: *mut acb_struct,
160 analytic: c_int,
161 prec: mp_limb_signed_t,
162 );
163 pub fn acb_add(
164 z: *mut acb_struct,
165 x: *mut acb_struct,
166 y: *mut acb_struct,
167 prec: mp_limb_signed_t,
168 );
169 pub fn acb_sub(
170 z: *mut acb_struct,
171 x: *mut acb_struct,
172 y: *mut acb_struct,
173 prec: mp_limb_signed_t,
174 );
175 pub fn acb_add_si(z: *mut acb_struct, x: *mut acb_struct, c: mp_limb_t, prec: mp_limb_signed_t);
176 pub fn acb_add_ui(z: *mut acb_struct, x: *mut acb_struct, c: mp_limb_t, prec: mp_limb_signed_t);
177 pub fn acb_sub_si(z: *mut acb_struct, x: *mut acb_struct, c: mp_limb_t, prec: mp_limb_signed_t);
178 pub fn acb_sub_ui(z: *mut acb_struct, x: *mut acb_struct, c: mp_limb_t, prec: mp_limb_signed_t);
179 pub fn acb_add_fmpz(
180 z: *mut acb_struct,
181 x: *mut acb_struct,
182 y: *mut fmpz,
183 prec: mp_limb_signed_t,
184 );
185 pub fn acb_add_arb(
186 z: *mut acb_struct,
187 x: *mut acb_struct,
188 y: *mut arb_struct,
189 prec: mp_limb_signed_t,
190 );
191 pub fn acb_sub_fmpz(
192 z: *mut acb_struct,
193 x: *mut acb_struct,
194 y: *mut fmpz,
195 prec: mp_limb_signed_t,
196 );
197 pub fn acb_sub_arb(
198 z: *mut acb_struct,
199 x: *mut acb_struct,
200 y: *mut arb_struct,
201 prec: mp_limb_signed_t,
202 );
203 pub fn acb_neg(z: *mut acb_struct, x: *mut acb_struct);
204 pub fn acb_conj(z: *mut acb_struct, x: *mut acb_struct);
205 pub fn acb_abs(u: *mut arb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
206 pub fn acb_mul_ui(z: *mut acb_struct, x: *mut acb_struct, y: mp_limb_t, prec: mp_limb_signed_t);
207 pub fn acb_mul_si(
208 z: *mut acb_struct,
209 x: *mut acb_struct,
210 y: mp_limb_signed_t,
211 prec: mp_limb_signed_t,
212 );
213 pub fn acb_mul_fmpz(
214 z: *mut acb_struct,
215 x: *mut acb_struct,
216 y: *mut fmpz,
217 prec: mp_limb_signed_t,
218 );
219 pub fn acb_mul_arb(
220 z: *mut acb_struct,
221 x: *mut acb_struct,
222 y: *mut arb_struct,
223 prec: mp_limb_signed_t,
224 );
225 pub fn acb_mul_onei(z: *mut acb_struct, x: *mut acb_struct);
226 pub fn acb_div_onei(z: *mut acb_struct, x: *mut acb_struct);
227 pub fn acb_mul(
228 z: *mut acb_struct,
229 x: *mut acb_struct,
230 y: *mut acb_struct,
231 prec: mp_limb_signed_t,
232 );
233 pub fn acb_mul_naive(
234 z: *mut acb_struct,
235 x: *mut acb_struct,
236 y: *mut acb_struct,
237 prec: mp_limb_signed_t,
238 );
239 pub fn acb_mul_2exp_si(z: *mut acb_struct, x: *mut acb_struct, e: mp_limb_signed_t);
240 pub fn acb_mul_2exp_fmpz(z: *mut acb_struct, x: *mut acb_struct, c: *mut fmpz);
241 pub fn acb_addmul(
242 z: *mut acb_struct,
243 x: *mut acb_struct,
244 y: *mut acb_struct,
245 prec: mp_limb_signed_t,
246 );
247 pub fn acb_submul(
248 z: *mut acb_struct,
249 x: *mut acb_struct,
250 y: *mut acb_struct,
251 prec: mp_limb_signed_t,
252 );
253 pub fn acb_addmul_ui(
254 z: *mut acb_struct,
255 x: *mut acb_struct,
256 y: mp_limb_t,
257 prec: mp_limb_signed_t,
258 );
259 pub fn acb_addmul_si(
260 z: *mut acb_struct,
261 x: *mut acb_struct,
262 y: mp_limb_signed_t,
263 prec: mp_limb_signed_t,
264 );
265 pub fn acb_submul_ui(
266 z: *mut acb_struct,
267 x: *mut acb_struct,
268 y: mp_limb_t,
269 prec: mp_limb_signed_t,
270 );
271 pub fn acb_submul_si(
272 z: *mut acb_struct,
273 x: *mut acb_struct,
274 y: mp_limb_signed_t,
275 prec: mp_limb_signed_t,
276 );
277 pub fn acb_addmul_fmpz(
278 z: *mut acb_struct,
279 x: *mut acb_struct,
280 y: *mut fmpz,
281 prec: mp_limb_signed_t,
282 );
283 pub fn acb_submul_fmpz(
284 z: *mut acb_struct,
285 x: *mut acb_struct,
286 y: *mut fmpz,
287 prec: mp_limb_signed_t,
288 );
289 pub fn acb_addmul_arb(
290 z: *mut acb_struct,
291 x: *mut acb_struct,
292 y: *mut arb_struct,
293 prec: mp_limb_signed_t,
294 );
295 pub fn acb_submul_arb(
296 z: *mut acb_struct,
297 x: *mut acb_struct,
298 y: *mut arb_struct,
299 prec: mp_limb_signed_t,
300 );
301 pub fn acb_dot_simple(
302 res: *mut acb_struct,
303 initial: *mut acb_struct,
304 subtract: c_int,
305 x: acb_srcptr,
306 xstep: mp_limb_signed_t,
307 y: acb_srcptr,
308 ystep: mp_limb_signed_t,
309 len: mp_limb_signed_t,
310 prec: mp_limb_signed_t,
311 );
312 pub fn acb_dot_precise(
313 res: *mut acb_struct,
314 initial: *mut acb_struct,
315 subtract: c_int,
316 x: acb_srcptr,
317 xstep: mp_limb_signed_t,
318 y: acb_srcptr,
319 ystep: mp_limb_signed_t,
320 len: mp_limb_signed_t,
321 prec: mp_limb_signed_t,
322 );
323 pub fn acb_dot(
324 res: *mut acb_struct,
325 initial: *mut acb_struct,
326 subtract: c_int,
327 x: acb_srcptr,
328 xstep: mp_limb_signed_t,
329 y: acb_srcptr,
330 ystep: mp_limb_signed_t,
331 len: mp_limb_signed_t,
332 prec: mp_limb_signed_t,
333 );
334 pub fn acb_approx_dot(
335 res: *mut acb_struct,
336 initial: *mut acb_struct,
337 subtract: c_int,
338 x: acb_srcptr,
339 xstep: mp_limb_signed_t,
340 y: acb_srcptr,
341 ystep: mp_limb_signed_t,
342 len: mp_limb_signed_t,
343 prec: mp_limb_signed_t,
344 );
345 pub fn acb_dot_ui(
346 res: *mut acb_struct,
347 initial: *mut acb_struct,
348 subtract: c_int,
349 x: acb_srcptr,
350 xstep: mp_limb_signed_t,
351 y: *const mp_limb_t,
352 ystep: mp_limb_signed_t,
353 len: mp_limb_signed_t,
354 prec: mp_limb_signed_t,
355 );
356 pub fn acb_dot_si(
357 res: *mut acb_struct,
358 initial: *mut acb_struct,
359 subtract: c_int,
360 x: acb_srcptr,
361 xstep: mp_limb_signed_t,
362 y: *const mp_limb_signed_t,
363 ystep: mp_limb_signed_t,
364 len: mp_limb_signed_t,
365 prec: mp_limb_signed_t,
366 );
367 pub fn acb_dot_uiui(
368 res: *mut acb_struct,
369 initial: *mut acb_struct,
370 subtract: c_int,
371 x: acb_srcptr,
372 xstep: mp_limb_signed_t,
373 y: *const mp_limb_t,
374 ystep: mp_limb_signed_t,
375 len: mp_limb_signed_t,
376 prec: mp_limb_signed_t,
377 );
378 pub fn acb_dot_siui(
379 res: *mut acb_struct,
380 initial: *mut acb_struct,
381 subtract: c_int,
382 x: acb_srcptr,
383 xstep: mp_limb_signed_t,
384 y: *const mp_limb_t,
385 ystep: mp_limb_signed_t,
386 len: mp_limb_signed_t,
387 prec: mp_limb_signed_t,
388 );
389 pub fn acb_dot_fmpz(
390 res: *mut acb_struct,
391 initial: *mut acb_struct,
392 subtract: c_int,
393 x: acb_srcptr,
394 xstep: mp_limb_signed_t,
395 y: *const fmpz,
396 ystep: mp_limb_signed_t,
397 len: mp_limb_signed_t,
398 prec: mp_limb_signed_t,
399 );
400 pub fn acb_inv(z: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
401 pub fn acb_div(
402 z: *mut acb_struct,
403 x: *mut acb_struct,
404 y: *mut acb_struct,
405 prec: mp_limb_signed_t,
406 );
407 pub fn acb_div_ui(z: *mut acb_struct, x: *mut acb_struct, c: mp_limb_t, prec: mp_limb_signed_t);
408 pub fn acb_div_si(
409 z: *mut acb_struct,
410 x: *mut acb_struct,
411 c: mp_limb_signed_t,
412 prec: mp_limb_signed_t,
413 );
414 pub fn acb_div_arb(
415 z: *mut acb_struct,
416 x: *mut acb_struct,
417 c: *mut arb_struct,
418 prec: mp_limb_signed_t,
419 );
420 pub fn acb_div_fmpz(
421 z: *mut acb_struct,
422 x: *mut acb_struct,
423 c: *mut fmpz,
424 prec: mp_limb_signed_t,
425 );
426 pub fn acb_cube(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
427 pub fn acb_pow_fmpz(
428 y: *mut acb_struct,
429 b: *mut acb_struct,
430 e: *mut fmpz,
431 prec: mp_limb_signed_t,
432 );
433 pub fn acb_pow_ui(y: *mut acb_struct, b: *mut acb_struct, e: mp_limb_t, prec: mp_limb_signed_t);
434 pub fn acb_pow_si(
435 y: *mut acb_struct,
436 b: *mut acb_struct,
437 e: mp_limb_signed_t,
438 prec: mp_limb_signed_t,
439 );
440 pub fn acb_const_pi(x: *mut acb_struct, prec: mp_limb_signed_t);
441 pub fn acb_log(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
442 pub fn acb_log1p(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
443 pub fn acb_exp(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
444 pub fn acb_exp_pi_i(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
445 pub fn acb_exp_invexp(
446 r: *mut acb_struct,
447 s: *mut acb_struct,
448 z: *mut acb_struct,
449 prec: mp_limb_signed_t,
450 );
451 pub fn acb_expm1(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
452 pub fn acb_sin(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
453 pub fn acb_cos(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
454 pub fn acb_sin_cos(
455 s: *mut acb_struct,
456 c: *mut acb_struct,
457 z: *mut acb_struct,
458 prec: mp_limb_signed_t,
459 );
460 pub fn acb_tan(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
461 pub fn acb_cot(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
462 pub fn acb_asin(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
463 pub fn acb_acos(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
464 pub fn acb_atan(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
465 pub fn acb_asinh(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
466 pub fn acb_acosh(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
467 pub fn acb_atanh(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
468 pub fn acb_sinh(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
469 pub fn acb_cosh(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
470 pub fn acb_sinh_cosh(
471 y: *mut acb_struct,
472 z: *mut acb_struct,
473 x: *mut acb_struct,
474 prec: mp_limb_signed_t,
475 );
476 pub fn acb_tanh(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
477 pub fn acb_coth(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
478 pub fn acb_sech(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
479 pub fn acb_csch(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
480 pub fn acb_sec(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
481 pub fn acb_csc(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
482 pub fn acb_sin_pi(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
483 pub fn acb_cos_pi(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
484 pub fn acb_sin_cos_pi(
485 s: *mut acb_struct,
486 c: *mut acb_struct,
487 z: *mut acb_struct,
488 prec: mp_limb_signed_t,
489 );
490 pub fn acb_tan_pi(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
491 pub fn acb_cot_pi(r: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
492 pub fn acb_csc_pi(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
493 pub fn acb_sinc(res: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
494 pub fn acb_sinc_pi(res: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
495 pub fn acb_pow_arb(
496 z: *mut acb_struct,
497 x: *mut acb_struct,
498 y: *mut arb_struct,
499 prec: mp_limb_signed_t,
500 );
501 pub fn acb_pow(
502 r: *mut acb_struct,
503 x: *mut acb_struct,
504 y: *mut acb_struct,
505 prec: mp_limb_signed_t,
506 );
507 pub fn acb_sqrt(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
508 pub fn acb_rsqrt(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
509 pub fn acb_root_ui(
510 y: *mut acb_struct,
511 x: *mut acb_struct,
512 k: mp_limb_t,
513 prec: mp_limb_signed_t,
514 );
515 pub fn acb_quadratic_roots_fmpz(
516 r1: *mut acb_struct,
517 r2: *mut acb_struct,
518 a: *mut fmpz,
519 b: *mut fmpz,
520 c: *mut fmpz,
521 prec: mp_limb_signed_t,
522 );
523 pub fn acb_chebyshev_t_ui(
524 a: *mut acb_struct,
525 n: mp_limb_t,
526 x: *mut acb_struct,
527 prec: mp_limb_signed_t,
528 );
529 pub fn acb_chebyshev_t2_ui(
530 a: *mut acb_struct,
531 b: *mut acb_struct,
532 n: mp_limb_t,
533 x: *mut acb_struct,
534 prec: mp_limb_signed_t,
535 );
536 pub fn acb_chebyshev_u_ui(
537 a: *mut acb_struct,
538 n: mp_limb_t,
539 x: *mut acb_struct,
540 prec: mp_limb_signed_t,
541 );
542 pub fn acb_chebyshev_u2_ui(
543 a: *mut acb_struct,
544 b: *mut acb_struct,
545 n: mp_limb_t,
546 x: *mut acb_struct,
547 prec: mp_limb_signed_t,
548 );
549 pub fn acb_rising_ui_bs(
550 y: *mut acb_struct,
551 x: *mut acb_struct,
552 n: mp_limb_t,
553 prec: mp_limb_signed_t,
554 );
555 pub fn acb_rising_ui_rs(
556 y: *mut acb_struct,
557 x: *mut acb_struct,
558 n: mp_limb_t,
559 m: mp_limb_t,
560 prec: mp_limb_signed_t,
561 );
562 pub fn acb_rising_ui_rec(
563 y: *mut acb_struct,
564 x: *mut acb_struct,
565 n: mp_limb_t,
566 prec: mp_limb_signed_t,
567 );
568 pub fn acb_rising_ui(
569 z: *mut acb_struct,
570 x: *mut acb_struct,
571 n: mp_limb_t,
572 prec: mp_limb_signed_t,
573 );
574 pub fn acb_rising(
575 z: *mut acb_struct,
576 x: *mut acb_struct,
577 n: *mut acb_struct,
578 prec: mp_limb_signed_t,
579 );
580 pub fn acb_rising2_ui_bs(
581 u: *mut acb_struct,
582 v: *mut acb_struct,
583 x: *mut acb_struct,
584 n: mp_limb_t,
585 prec: mp_limb_signed_t,
586 );
587 pub fn acb_rising2_ui_rs(
588 u: *mut acb_struct,
589 v: *mut acb_struct,
590 x: *mut acb_struct,
591 n: mp_limb_t,
592 m: mp_limb_t,
593 prec: mp_limb_signed_t,
594 );
595 pub fn acb_rising2_ui(
596 u: *mut acb_struct,
597 v: *mut acb_struct,
598 x: *mut acb_struct,
599 n: mp_limb_t,
600 prec: mp_limb_signed_t,
601 );
602 pub fn acb_rising_ui_get_mag(bound: *mut mag_struct, s: *mut acb_struct, n: mp_limb_t);
603 pub fn acb_gamma(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
604 pub fn acb_rgamma(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
605 pub fn acb_lgamma(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
606 pub fn acb_log_sin_pi(res: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
607 pub fn acb_digamma(y: *mut acb_struct, x: *mut acb_struct, prec: mp_limb_signed_t);
608 pub fn acb_zeta(z: *mut acb_struct, s: *mut acb_struct, prec: mp_limb_signed_t);
609 pub fn acb_hurwitz_zeta(
610 z: *mut acb_struct,
611 s: *mut acb_struct,
612 a: *mut acb_struct,
613 prec: mp_limb_signed_t,
614 );
615 pub fn acb_polygamma(
616 res: *mut acb_struct,
617 s: *mut acb_struct,
618 z: *mut acb_struct,
619 prec: mp_limb_signed_t,
620 );
621 pub fn acb_bernoulli_poly_ui(
622 res: *mut acb_struct,
623 n: mp_limb_t,
624 x: *mut acb_struct,
625 prec: mp_limb_signed_t,
626 );
627 pub fn acb_log_barnes_g(res: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
628 pub fn acb_barnes_g(res: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
629 pub fn acb_polylog(
630 w: *mut acb_struct,
631 s: *mut acb_struct,
632 z: *mut acb_struct,
633 prec: mp_limb_signed_t,
634 );
635 pub fn acb_polylog_si(
636 w: *mut acb_struct,
637 s: mp_limb_signed_t,
638 z: *mut acb_struct,
639 prec: mp_limb_signed_t,
640 );
641 pub fn acb_agm1(m: *mut acb_struct, z: *mut acb_struct, prec: mp_limb_signed_t);
642 pub fn acb_agm1_cpx(
643 m: acb_ptr,
644 z: *mut acb_struct,
645 len: mp_limb_signed_t,
646 prec: mp_limb_signed_t,
647 );
648 pub fn acb_agm(
649 res: *mut acb_struct,
650 a: *mut acb_struct,
651 b: *mut acb_struct,
652 prec: mp_limb_signed_t,
653 );
654 pub fn acb_lambertw_asymp(
655 res: *mut acb_struct,
656 z: *mut acb_struct,
657 k: *mut fmpz,
658 L: mp_limb_signed_t,
659 M: mp_limb_signed_t,
660 prec: mp_limb_signed_t,
661 );
662 pub fn acb_lambertw_check_branch(
663 w: *mut acb_struct,
664 k: *mut fmpz,
665 prec: mp_limb_signed_t,
666 ) -> c_int;
667 pub fn acb_lambertw_bound_deriv(
668 res: *mut mag_struct,
669 z: *mut acb_struct,
670 ez1: *mut acb_struct,
671 k: *mut fmpz,
672 );
673 pub fn acb_lambertw(
674 res: *mut acb_struct,
675 z: *mut acb_struct,
676 k: *mut fmpz,
677 flags: c_int,
678 prec: mp_limb_signed_t,
679 );
680 pub fn acb_sqr(res: *mut acb_struct, val: *mut acb_struct, prec: mp_limb_signed_t);
681 pub fn acb_is_finite(x: *mut acb_struct) -> c_int;
682 pub fn acb_indeterminate(x: *mut acb_struct);
683 pub fn _acb_vec_entry_ptr(vec: acb_ptr, i: mp_limb_signed_t) -> acb_ptr;
684 pub fn _acb_vec_zero(A: acb_ptr, n: mp_limb_signed_t);
685 pub fn _acb_vec_is_zero(vec: acb_srcptr, len: mp_limb_signed_t) -> c_int;
686 pub fn _acb_vec_set(res: acb_ptr, vec: acb_srcptr, len: mp_limb_signed_t);
687 pub fn _acb_vec_set_round(
688 res: acb_ptr,
689 vec: acb_srcptr,
690 len: mp_limb_signed_t,
691 prec: mp_limb_signed_t,
692 );
693 pub fn _acb_vec_neg(res: acb_ptr, vec: acb_srcptr, len: mp_limb_signed_t);
694 pub fn _acb_vec_add(
695 res: acb_ptr,
696 vec1: acb_srcptr,
697 vec2: acb_srcptr,
698 len: mp_limb_signed_t,
699 prec: mp_limb_signed_t,
700 );
701 pub fn _acb_vec_sub(
702 res: acb_ptr,
703 vec1: acb_srcptr,
704 vec2: acb_srcptr,
705 len: mp_limb_signed_t,
706 prec: mp_limb_signed_t,
707 );
708 pub fn _acb_vec_scalar_submul(
709 res: acb_ptr,
710 vec: acb_srcptr,
711 len: mp_limb_signed_t,
712 c: *mut acb_struct,
713 prec: mp_limb_signed_t,
714 );
715 pub fn _acb_vec_scalar_addmul(
716 res: acb_ptr,
717 vec: acb_srcptr,
718 len: mp_limb_signed_t,
719 c: *mut acb_struct,
720 prec: mp_limb_signed_t,
721 );
722 pub fn _acb_vec_scalar_mul(
723 res: acb_ptr,
724 vec: acb_srcptr,
725 len: mp_limb_signed_t,
726 c: *mut acb_struct,
727 prec: mp_limb_signed_t,
728 );
729 pub fn _acb_vec_scalar_mul_ui(
730 res: acb_ptr,
731 vec: acb_srcptr,
732 len: mp_limb_signed_t,
733 c: mp_limb_t,
734 prec: mp_limb_signed_t,
735 );
736 pub fn _acb_vec_scalar_mul_2exp_si(
737 res: acb_ptr,
738 vec: acb_srcptr,
739 len: mp_limb_signed_t,
740 c: mp_limb_signed_t,
741 );
742 pub fn _acb_vec_scalar_mul_onei(res: acb_ptr, vec: acb_srcptr, len: mp_limb_signed_t);
743 pub fn _acb_vec_scalar_div_ui(
744 res: acb_ptr,
745 vec: acb_srcptr,
746 len: mp_limb_signed_t,
747 c: mp_limb_t,
748 prec: mp_limb_signed_t,
749 );
750 pub fn _acb_vec_scalar_div(
751 res: acb_ptr,
752 vec: acb_srcptr,
753 len: mp_limb_signed_t,
754 c: *mut acb_struct,
755 prec: mp_limb_signed_t,
756 );
757 pub fn _acb_vec_scalar_mul_arb(
758 res: acb_ptr,
759 vec: acb_srcptr,
760 len: mp_limb_signed_t,
761 c: *mut arb_struct,
762 prec: mp_limb_signed_t,
763 );
764 pub fn _acb_vec_scalar_div_arb(
765 res: acb_ptr,
766 vec: acb_srcptr,
767 len: mp_limb_signed_t,
768 c: *mut arb_struct,
769 prec: mp_limb_signed_t,
770 );
771 pub fn _acb_vec_scalar_mul_fmpz(
772 res: acb_ptr,
773 vec: acb_srcptr,
774 len: mp_limb_signed_t,
775 c: *mut fmpz,
776 prec: mp_limb_signed_t,
777 );
778 pub fn _acb_vec_scalar_div_fmpz(
779 res: acb_ptr,
780 vec: acb_srcptr,
781 len: mp_limb_signed_t,
782 c: *mut fmpz,
783 prec: mp_limb_signed_t,
784 );
785 pub fn acb_fprint(file: *mut FILE, x: *mut acb_struct);
786 pub fn acb_print(x: *mut acb_struct);
787 pub fn acb_fprintd(file: *mut FILE, z: *mut acb_struct, digits: mp_limb_signed_t);
788 pub fn acb_printd(z: *mut acb_struct, digits: mp_limb_signed_t);
789 pub fn acb_fprintn(
790 fp: *mut FILE,
791 z: *mut acb_struct,
792 digits: mp_limb_signed_t,
793 flags: mp_limb_t,
794 );
795 pub fn acb_printn(x: *mut acb_struct, digits: mp_limb_signed_t, flags: mp_limb_t);
796 pub fn acb_randtest(
797 z: *mut acb_struct,
798 state: *mut flint_rand_s,
799 prec: mp_limb_signed_t,
800 mag_bits: mp_limb_signed_t,
801 );
802 pub fn acb_randtest_special(
803 z: *mut acb_struct,
804 state: *mut flint_rand_s,
805 prec: mp_limb_signed_t,
806 mag_bits: mp_limb_signed_t,
807 );
808 pub fn acb_randtest_precise(
809 z: *mut acb_struct,
810 state: *mut flint_rand_s,
811 prec: mp_limb_signed_t,
812 mag_bits: mp_limb_signed_t,
813 );
814 pub fn acb_randtest_param(
815 z: *mut acb_struct,
816 state: *mut flint_rand_s,
817 prec: mp_limb_signed_t,
818 mag_bits: mp_limb_signed_t,
819 );
820 pub fn acb_rel_error_bits(x: *mut acb_struct) -> mp_limb_signed_t;
821 pub fn acb_rel_accuracy_bits(x: *mut acb_struct) -> mp_limb_signed_t;
822 pub fn acb_rel_one_accuracy_bits(x: *mut acb_struct) -> mp_limb_signed_t;
823 pub fn acb_bits(x: *mut acb_struct) -> mp_limb_signed_t;
824 pub fn acb_is_real(x: *mut acb_struct) -> c_int;
825 pub fn _acb_vec_is_real(v: acb_srcptr, len: mp_limb_signed_t) -> c_int;
826 pub fn _acb_vec_bits(vec: acb_srcptr, len: mp_limb_signed_t) -> mp_limb_signed_t;
827 pub fn _acb_vec_set_powers(
828 xs: acb_ptr,
829 x: *mut acb_struct,
830 len: mp_limb_signed_t,
831 prec: mp_limb_signed_t,
832 );
833 pub fn _acb_vec_add_error_arf_vec(res: acb_ptr, err: arf_srcptr, len: mp_limb_signed_t);
834 pub fn _acb_vec_add_error_mag_vec(res: acb_ptr, err: mag_srcptr, len: mp_limb_signed_t);
835 pub fn _acb_vec_indeterminate(vec: acb_ptr, len: mp_limb_signed_t);
836 pub fn _acb_vec_trim(res: acb_ptr, vec: acb_srcptr, len: mp_limb_signed_t);
837 pub fn _acb_vec_get_unique_fmpz_vec(
838 res: *mut fmpz,
839 vec: acb_srcptr,
840 len: mp_limb_signed_t,
841 ) -> c_int;
842 pub fn _acb_vec_sort_pretty(vec: acb_ptr, len: mp_limb_signed_t);
843 pub fn acb_unit_root(res: *mut acb_struct, order: mp_limb_t, prec: mp_limb_signed_t);
844 pub fn _acb_vec_unit_roots(
845 z: acb_ptr,
846 order: mp_limb_signed_t,
847 len: mp_limb_signed_t,
848 prec: mp_limb_signed_t,
849 );
850 pub fn acb_allocated_bytes(x: *mut acb_struct) -> mp_limb_signed_t;
851 pub fn _acb_vec_allocated_bytes(vec: acb_srcptr, len: mp_limb_signed_t) -> mp_limb_signed_t;
852 pub fn _acb_vec_estimate_allocated_bytes(len: mp_limb_signed_t, prec: mp_limb_signed_t) -> f64;
853}