1#![allow(non_camel_case_types)]
2
3use crate::acb::{acb_ptr, acb_srcptr, acb_struct};
6use crate::arb::arb_ptr;
7use crate::arb_poly::arb_poly_struct;
8use crate::mag::mag_struct;
9use flint_sys::deps::*;
10use flint_sys::flint::*;
11use flint_sys::fmpq_poly::fmpq_poly_struct;
12use flint_sys::fmpz::fmpz;
13use flint_sys::fmpz_poly::fmpz_poly_struct;
14use libc::{c_int, FILE};
15
16#[repr(C)]
17#[derive(Debug, Copy, Clone)]
18pub struct acb_poly_struct {
19 pub coeffs: acb_ptr,
20 pub length: mp_limb_signed_t,
21 pub alloc: mp_limb_signed_t,
22}
23
24pub type acb_poly_t = [acb_poly_struct; 1usize];
25
26extern "C" {
27 pub fn acb_poly_init(poly: *mut acb_poly_struct);
28 pub fn acb_poly_init2(poly: *mut acb_poly_struct, len: mp_limb_signed_t);
29 pub fn acb_poly_clear(poly: *mut acb_poly_struct);
30 pub fn acb_poly_fit_length(poly: *mut acb_poly_struct, len: mp_limb_signed_t);
31 pub fn _acb_poly_set_length(poly: *mut acb_poly_struct, len: mp_limb_signed_t);
32 pub fn _acb_poly_normalise(poly: *mut acb_poly_struct);
33 pub fn acb_poly_valuation(poly: *mut acb_poly_struct) -> mp_limb_signed_t;
34 pub fn acb_poly_set_coeff_si(
35 poly: *mut acb_poly_struct,
36 n: mp_limb_signed_t,
37 x: mp_limb_signed_t,
38 );
39 pub fn acb_poly_set_coeff_acb(
40 poly: *mut acb_poly_struct,
41 n: mp_limb_signed_t,
42 x: *mut acb_struct,
43 );
44 pub fn acb_poly_get_coeff_acb(
45 x: *mut acb_struct,
46 poly: *mut acb_poly_struct,
47 n: mp_limb_signed_t,
48 );
49 pub fn _acb_poly_shift_right(
50 res: acb_ptr,
51 poly: acb_srcptr,
52 len: mp_limb_signed_t,
53 n: mp_limb_signed_t,
54 );
55 pub fn acb_poly_shift_right(
56 res: *mut acb_poly_struct,
57 poly: *mut acb_poly_struct,
58 n: mp_limb_signed_t,
59 );
60 pub fn _acb_poly_shift_left(
61 res: acb_ptr,
62 poly: acb_srcptr,
63 len: mp_limb_signed_t,
64 n: mp_limb_signed_t,
65 );
66 pub fn acb_poly_shift_left(
67 res: *mut acb_poly_struct,
68 poly: *mut acb_poly_struct,
69 n: mp_limb_signed_t,
70 );
71 pub fn _acb_poly_majorant(
72 res: arb_ptr,
73 vec: acb_srcptr,
74 len: mp_limb_signed_t,
75 prec: mp_limb_signed_t,
76 );
77 pub fn acb_poly_majorant(
78 res: *mut arb_poly_struct,
79 poly: *mut acb_poly_struct,
80 prec: mp_limb_signed_t,
81 );
82 pub fn acb_poly_fprintd(file: *mut FILE, poly: *mut acb_poly_struct, digits: mp_limb_signed_t);
83 pub fn _acb_poly_evaluate_horner(
84 res: *mut acb_struct,
85 f: acb_srcptr,
86 len: mp_limb_signed_t,
87 a: *mut acb_struct,
88 prec: mp_limb_signed_t,
89 );
90 pub fn acb_poly_evaluate_horner(
91 res: *mut acb_struct,
92 f: *mut acb_poly_struct,
93 a: *mut acb_struct,
94 prec: mp_limb_signed_t,
95 );
96 pub fn _acb_poly_evaluate_rectangular(
97 y: *mut acb_struct,
98 poly: acb_srcptr,
99 len: mp_limb_signed_t,
100 x: *mut acb_struct,
101 prec: mp_limb_signed_t,
102 );
103 pub fn acb_poly_evaluate_rectangular(
104 res: *mut acb_struct,
105 f: *mut acb_poly_struct,
106 a: *mut acb_struct,
107 prec: mp_limb_signed_t,
108 );
109 pub fn _acb_poly_evaluate(
110 res: *mut acb_struct,
111 f: acb_srcptr,
112 len: mp_limb_signed_t,
113 a: *mut acb_struct,
114 prec: mp_limb_signed_t,
115 );
116 pub fn acb_poly_evaluate(
117 res: *mut acb_struct,
118 f: *mut acb_poly_struct,
119 a: *mut acb_struct,
120 prec: mp_limb_signed_t,
121 );
122 pub fn _acb_poly_evaluate2_horner(
123 y: *mut acb_struct,
124 z: *mut acb_struct,
125 f: acb_srcptr,
126 len: mp_limb_signed_t,
127 x: *mut acb_struct,
128 prec: mp_limb_signed_t,
129 );
130 pub fn acb_poly_evaluate2_horner(
131 y: *mut acb_struct,
132 z: *mut acb_struct,
133 f: *mut acb_poly_struct,
134 x: *mut acb_struct,
135 prec: mp_limb_signed_t,
136 );
137 pub fn _acb_poly_evaluate2_rectangular(
138 y: *mut acb_struct,
139 z: *mut acb_struct,
140 f: acb_srcptr,
141 len: mp_limb_signed_t,
142 x: *mut acb_struct,
143 prec: mp_limb_signed_t,
144 );
145 pub fn acb_poly_evaluate2_rectangular(
146 y: *mut acb_struct,
147 z: *mut acb_struct,
148 f: *mut acb_poly_struct,
149 x: *mut acb_struct,
150 prec: mp_limb_signed_t,
151 );
152 pub fn _acb_poly_evaluate2(
153 y: *mut acb_struct,
154 z: *mut acb_struct,
155 f: acb_srcptr,
156 len: mp_limb_signed_t,
157 x: *mut acb_struct,
158 prec: mp_limb_signed_t,
159 );
160 pub fn acb_poly_evaluate2(
161 y: *mut acb_struct,
162 z: *mut acb_struct,
163 f: *mut acb_poly_struct,
164 x: *mut acb_struct,
165 prec: mp_limb_signed_t,
166 );
167 pub fn _acb_poly_derivative(
168 res: acb_ptr,
169 poly: acb_srcptr,
170 len: mp_limb_signed_t,
171 prec: mp_limb_signed_t,
172 );
173 pub fn acb_poly_derivative(
174 res: *mut acb_poly_struct,
175 poly: *mut acb_poly_struct,
176 prec: mp_limb_signed_t,
177 );
178 pub fn _acb_poly_integral(
179 res: acb_ptr,
180 poly: acb_srcptr,
181 len: mp_limb_signed_t,
182 prec: mp_limb_signed_t,
183 );
184 pub fn acb_poly_integral(
185 res: *mut acb_poly_struct,
186 poly: *mut acb_poly_struct,
187 prec: mp_limb_signed_t,
188 );
189 pub fn acb_poly_borel_transform(
190 res: *mut acb_poly_struct,
191 poly: *mut acb_poly_struct,
192 prec: mp_limb_signed_t,
193 );
194 pub fn _acb_poly_borel_transform(
195 res: acb_ptr,
196 poly: acb_srcptr,
197 len: mp_limb_signed_t,
198 prec: mp_limb_signed_t,
199 );
200 pub fn acb_poly_inv_borel_transform(
201 res: *mut acb_poly_struct,
202 poly: *mut acb_poly_struct,
203 prec: mp_limb_signed_t,
204 );
205 pub fn _acb_poly_inv_borel_transform(
206 res: acb_ptr,
207 poly: acb_srcptr,
208 len: mp_limb_signed_t,
209 prec: mp_limb_signed_t,
210 );
211 pub fn _acb_poly_binomial_transform_basecase(
212 b: acb_ptr,
213 a: acb_srcptr,
214 alen: mp_limb_signed_t,
215 len: mp_limb_signed_t,
216 prec: mp_limb_signed_t,
217 );
218 pub fn acb_poly_binomial_transform_basecase(
219 b: *mut acb_poly_struct,
220 a: *mut acb_poly_struct,
221 len: mp_limb_signed_t,
222 prec: mp_limb_signed_t,
223 );
224 pub fn _acb_poly_binomial_transform_convolution(
225 b: acb_ptr,
226 a: acb_srcptr,
227 alen: mp_limb_signed_t,
228 len: mp_limb_signed_t,
229 prec: mp_limb_signed_t,
230 );
231 pub fn acb_poly_binomial_transform_convolution(
232 b: *mut acb_poly_struct,
233 a: *mut acb_poly_struct,
234 len: mp_limb_signed_t,
235 prec: mp_limb_signed_t,
236 );
237 pub fn _acb_poly_binomial_transform(
238 b: acb_ptr,
239 a: acb_srcptr,
240 alen: mp_limb_signed_t,
241 len: mp_limb_signed_t,
242 prec: mp_limb_signed_t,
243 );
244 pub fn acb_poly_binomial_transform(
245 b: *mut acb_poly_struct,
246 a: *mut acb_poly_struct,
247 len: mp_limb_signed_t,
248 prec: mp_limb_signed_t,
249 );
250 pub fn acb_poly_set(dest: *mut acb_poly_struct, src: *mut acb_poly_struct);
251 pub fn acb_poly_set_round(
252 dest: *mut acb_poly_struct,
253 src: *mut acb_poly_struct,
254 prec: mp_limb_signed_t,
255 );
256 pub fn acb_poly_set_trunc(
257 res: *mut acb_poly_struct,
258 poly: *mut acb_poly_struct,
259 n: mp_limb_signed_t,
260 );
261 pub fn acb_poly_set_trunc_round(
262 res: *mut acb_poly_struct,
263 poly: *mut acb_poly_struct,
264 n: mp_limb_signed_t,
265 prec: mp_limb_signed_t,
266 );
267 pub fn acb_poly_set_arb_poly(poly: *mut acb_poly_struct, re: *mut arb_poly_struct);
268 pub fn acb_poly_set2_arb_poly(
269 poly: *mut acb_poly_struct,
270 re: *mut arb_poly_struct,
271 im: *mut arb_poly_struct,
272 );
273 pub fn acb_poly_set_fmpq_poly(
274 poly: *mut acb_poly_struct,
275 re: *mut fmpq_poly_struct,
276 prec: mp_limb_signed_t,
277 );
278 pub fn acb_poly_set2_fmpq_poly(
279 poly: *mut acb_poly_struct,
280 re: *mut fmpq_poly_struct,
281 im: *mut fmpq_poly_struct,
282 prec: mp_limb_signed_t,
283 );
284 pub fn acb_poly_set_fmpz_poly(
285 poly: *mut acb_poly_struct,
286 src: *mut fmpz_poly_struct,
287 prec: mp_limb_signed_t,
288 );
289 pub fn acb_poly_set2_fmpz_poly(
290 poly: *mut acb_poly_struct,
291 re: *mut fmpz_poly_struct,
292 im: *mut fmpz_poly_struct,
293 prec: mp_limb_signed_t,
294 );
295 pub fn acb_poly_get_unique_fmpz_poly(
296 res: *mut fmpz_poly_struct,
297 src: *mut acb_poly_struct,
298 ) -> c_int;
299 pub fn acb_poly_set_si(poly: *mut acb_poly_struct, c: mp_limb_signed_t);
300 pub fn acb_poly_randtest(
301 poly: *mut acb_poly_struct,
302 state: *mut flint_rand_s,
303 len: mp_limb_signed_t,
304 prec: mp_limb_signed_t,
305 mag_bits: mp_limb_signed_t,
306 );
307 pub fn acb_poly_equal(A: *mut acb_poly_struct, B: *mut acb_poly_struct) -> c_int;
308 pub fn acb_poly_contains_fmpz_poly(
309 poly1: *mut acb_poly_struct,
310 poly2: *mut fmpz_poly_struct,
311 ) -> c_int;
312 pub fn acb_poly_contains_fmpq_poly(
313 poly1: *mut acb_poly_struct,
314 poly2: *mut fmpq_poly_struct,
315 ) -> c_int;
316 pub fn _acb_poly_overlaps(
317 poly1: acb_srcptr,
318 len1: mp_limb_signed_t,
319 poly2: acb_srcptr,
320 len2: mp_limb_signed_t,
321 ) -> c_int;
322 pub fn acb_poly_overlaps(poly1: *mut acb_poly_struct, poly2: *mut acb_poly_struct) -> c_int;
323 pub fn acb_poly_contains(poly1: *mut acb_poly_struct, poly2: *mut acb_poly_struct) -> c_int;
324 pub fn _acb_poly_add(
325 res: acb_ptr,
326 poly1: acb_srcptr,
327 len1: mp_limb_signed_t,
328 poly2: acb_srcptr,
329 len2: mp_limb_signed_t,
330 prec: mp_limb_signed_t,
331 );
332 pub fn acb_poly_add(
333 res: *mut acb_poly_struct,
334 poly1: *mut acb_poly_struct,
335 poly2: *mut acb_poly_struct,
336 prec: mp_limb_signed_t,
337 );
338 pub fn acb_poly_add_si(
339 res: *mut acb_poly_struct,
340 poly: *mut acb_poly_struct,
341 c: mp_limb_signed_t,
342 prec: mp_limb_signed_t,
343 );
344 pub fn _acb_poly_sub(
345 res: acb_ptr,
346 poly1: acb_srcptr,
347 len1: mp_limb_signed_t,
348 poly2: acb_srcptr,
349 len2: mp_limb_signed_t,
350 prec: mp_limb_signed_t,
351 );
352 pub fn acb_poly_sub(
353 res: *mut acb_poly_struct,
354 poly1: *mut acb_poly_struct,
355 poly2: *mut acb_poly_struct,
356 prec: mp_limb_signed_t,
357 );
358 pub fn acb_poly_add_series(
359 res: *mut acb_poly_struct,
360 poly1: *mut acb_poly_struct,
361 poly2: *mut acb_poly_struct,
362 len: mp_limb_signed_t,
363 prec: mp_limb_signed_t,
364 );
365 pub fn acb_poly_sub_series(
366 res: *mut acb_poly_struct,
367 poly1: *mut acb_poly_struct,
368 poly2: *mut acb_poly_struct,
369 len: mp_limb_signed_t,
370 prec: mp_limb_signed_t,
371 );
372 pub fn acb_poly_mullow_classical(
373 res: *mut acb_poly_struct,
374 poly1: *mut acb_poly_struct,
375 poly2: *mut acb_poly_struct,
376 n: mp_limb_signed_t,
377 prec: mp_limb_signed_t,
378 );
379 pub fn _acb_poly_mullow_classical(
380 res: acb_ptr,
381 poly1: acb_srcptr,
382 len1: mp_limb_signed_t,
383 poly2: acb_srcptr,
384 len2: mp_limb_signed_t,
385 n: mp_limb_signed_t,
386 prec: mp_limb_signed_t,
387 );
388 pub fn _acb_poly_mullow_transpose(
389 res: acb_ptr,
390 poly1: acb_srcptr,
391 len1: mp_limb_signed_t,
392 poly2: acb_srcptr,
393 len2: mp_limb_signed_t,
394 n: mp_limb_signed_t,
395 prec: mp_limb_signed_t,
396 );
397 pub fn acb_poly_mullow_transpose(
398 res: *mut acb_poly_struct,
399 poly1: *mut acb_poly_struct,
400 poly2: *mut acb_poly_struct,
401 n: mp_limb_signed_t,
402 prec: mp_limb_signed_t,
403 );
404 pub fn _acb_poly_mullow_transpose_gauss(
405 res: acb_ptr,
406 poly1: acb_srcptr,
407 len1: mp_limb_signed_t,
408 poly2: acb_srcptr,
409 len2: mp_limb_signed_t,
410 n: mp_limb_signed_t,
411 prec: mp_limb_signed_t,
412 );
413 pub fn acb_poly_mullow_transpose_gauss(
414 res: *mut acb_poly_struct,
415 poly1: *mut acb_poly_struct,
416 poly2: *mut acb_poly_struct,
417 n: mp_limb_signed_t,
418 prec: mp_limb_signed_t,
419 );
420 pub fn _acb_poly_mullow(
421 res: acb_ptr,
422 poly1: acb_srcptr,
423 len1: mp_limb_signed_t,
424 poly2: acb_srcptr,
425 len2: mp_limb_signed_t,
426 n: mp_limb_signed_t,
427 prec: mp_limb_signed_t,
428 );
429 pub fn acb_poly_mullow(
430 res: *mut acb_poly_struct,
431 poly1: *mut acb_poly_struct,
432 poly2: *mut acb_poly_struct,
433 n: mp_limb_signed_t,
434 prec: mp_limb_signed_t,
435 );
436 pub fn _acb_poly_mul(
437 C: acb_ptr,
438 A: acb_srcptr,
439 lenA: mp_limb_signed_t,
440 B: acb_srcptr,
441 lenB: mp_limb_signed_t,
442 prec: mp_limb_signed_t,
443 );
444 pub fn acb_poly_mul(
445 res: *mut acb_poly_struct,
446 poly1: *mut acb_poly_struct,
447 poly2: *mut acb_poly_struct,
448 prec: mp_limb_signed_t,
449 );
450 pub fn _acb_poly_inv_series(
451 Qinv: acb_ptr,
452 Q: acb_srcptr,
453 Qlen: mp_limb_signed_t,
454 len: mp_limb_signed_t,
455 prec: mp_limb_signed_t,
456 );
457 pub fn acb_poly_inv_series(
458 Qinv: *mut acb_poly_struct,
459 Q: *mut acb_poly_struct,
460 n: mp_limb_signed_t,
461 prec: mp_limb_signed_t,
462 );
463 pub fn _acb_poly_div_series(
464 Q: acb_ptr,
465 A: acb_srcptr,
466 Alen: mp_limb_signed_t,
467 B: acb_srcptr,
468 Blen: mp_limb_signed_t,
469 n: mp_limb_signed_t,
470 prec: mp_limb_signed_t,
471 );
472 pub fn acb_poly_div_series(
473 Q: *mut acb_poly_struct,
474 A: *mut acb_poly_struct,
475 B: *mut acb_poly_struct,
476 n: mp_limb_signed_t,
477 prec: mp_limb_signed_t,
478 );
479 pub fn _acb_poly_reverse(
480 res: acb_ptr,
481 poly: acb_srcptr,
482 len: mp_limb_signed_t,
483 n: mp_limb_signed_t,
484 );
485 pub fn _acb_poly_div(
486 Q: acb_ptr,
487 A: acb_srcptr,
488 lenA: mp_limb_signed_t,
489 B: acb_srcptr,
490 lenB: mp_limb_signed_t,
491 prec: mp_limb_signed_t,
492 );
493 pub fn _acb_poly_divrem(
494 Q: acb_ptr,
495 R: acb_ptr,
496 A: acb_srcptr,
497 lenA: mp_limb_signed_t,
498 B: acb_srcptr,
499 lenB: mp_limb_signed_t,
500 prec: mp_limb_signed_t,
501 );
502 pub fn _acb_poly_rem(
503 R: acb_ptr,
504 A: acb_srcptr,
505 lenA: mp_limb_signed_t,
506 B: acb_srcptr,
507 lenB: mp_limb_signed_t,
508 prec: mp_limb_signed_t,
509 );
510 pub fn acb_poly_divrem(
511 Q: *mut acb_poly_struct,
512 R: *mut acb_poly_struct,
513 A: *mut acb_poly_struct,
514 B: *mut acb_poly_struct,
515 prec: mp_limb_signed_t,
516 ) -> c_int;
517 pub fn _acb_poly_div_root(
518 Q: acb_ptr,
519 R: *mut acb_struct,
520 A: acb_srcptr,
521 len: mp_limb_signed_t,
522 c: *mut acb_struct,
523 prec: mp_limb_signed_t,
524 );
525 pub fn _acb_poly_taylor_shift_horner(
526 poly: acb_ptr,
527 c: *mut acb_struct,
528 n: mp_limb_signed_t,
529 prec: mp_limb_signed_t,
530 );
531 pub fn acb_poly_taylor_shift_horner(
532 g: *mut acb_poly_struct,
533 f: *mut acb_poly_struct,
534 c: *mut acb_struct,
535 prec: mp_limb_signed_t,
536 );
537 pub fn _acb_poly_taylor_shift_divconquer(
538 poly: acb_ptr,
539 c: *mut acb_struct,
540 n: mp_limb_signed_t,
541 prec: mp_limb_signed_t,
542 );
543 pub fn acb_poly_taylor_shift_divconquer(
544 g: *mut acb_poly_struct,
545 f: *mut acb_poly_struct,
546 c: *mut acb_struct,
547 prec: mp_limb_signed_t,
548 );
549 pub fn _acb_poly_taylor_shift_convolution(
550 poly: acb_ptr,
551 c: *mut acb_struct,
552 n: mp_limb_signed_t,
553 prec: mp_limb_signed_t,
554 );
555 pub fn acb_poly_taylor_shift_convolution(
556 g: *mut acb_poly_struct,
557 f: *mut acb_poly_struct,
558 c: *mut acb_struct,
559 prec: mp_limb_signed_t,
560 );
561 pub fn _acb_poly_taylor_shift(
562 poly: acb_ptr,
563 c: *mut acb_struct,
564 n: mp_limb_signed_t,
565 prec: mp_limb_signed_t,
566 );
567 pub fn acb_poly_taylor_shift(
568 g: *mut acb_poly_struct,
569 f: *mut acb_poly_struct,
570 c: *mut acb_struct,
571 prec: mp_limb_signed_t,
572 );
573 pub fn _acb_poly_compose(
574 res: acb_ptr,
575 poly1: acb_srcptr,
576 len1: mp_limb_signed_t,
577 poly2: acb_srcptr,
578 len2: mp_limb_signed_t,
579 prec: mp_limb_signed_t,
580 );
581 pub fn acb_poly_compose(
582 res: *mut acb_poly_struct,
583 poly1: *mut acb_poly_struct,
584 poly2: *mut acb_poly_struct,
585 prec: mp_limb_signed_t,
586 );
587 pub fn _acb_poly_compose_horner(
588 res: acb_ptr,
589 poly1: acb_srcptr,
590 len1: mp_limb_signed_t,
591 poly2: acb_srcptr,
592 len2: mp_limb_signed_t,
593 prec: mp_limb_signed_t,
594 );
595 pub fn acb_poly_compose_horner(
596 res: *mut acb_poly_struct,
597 poly1: *mut acb_poly_struct,
598 poly2: *mut acb_poly_struct,
599 prec: mp_limb_signed_t,
600 );
601 pub fn _acb_poly_compose_divconquer(
602 res: acb_ptr,
603 poly1: acb_srcptr,
604 len1: mp_limb_signed_t,
605 poly2: acb_srcptr,
606 len2: mp_limb_signed_t,
607 prec: mp_limb_signed_t,
608 );
609 pub fn acb_poly_compose_divconquer(
610 res: *mut acb_poly_struct,
611 poly1: *mut acb_poly_struct,
612 poly2: *mut acb_poly_struct,
613 prec: mp_limb_signed_t,
614 );
615 pub fn _acb_poly_compose_series_horner(
616 res: acb_ptr,
617 poly1: acb_srcptr,
618 len1: mp_limb_signed_t,
619 poly2: acb_srcptr,
620 len2: mp_limb_signed_t,
621 n: mp_limb_signed_t,
622 prec: mp_limb_signed_t,
623 );
624 pub fn acb_poly_compose_series_horner(
625 res: *mut acb_poly_struct,
626 poly1: *mut acb_poly_struct,
627 poly2: *mut acb_poly_struct,
628 n: mp_limb_signed_t,
629 prec: mp_limb_signed_t,
630 );
631 pub fn _acb_poly_compose_series_brent_kung(
632 res: acb_ptr,
633 poly1: acb_srcptr,
634 len1: mp_limb_signed_t,
635 poly2: acb_srcptr,
636 len2: mp_limb_signed_t,
637 n: mp_limb_signed_t,
638 prec: mp_limb_signed_t,
639 );
640 pub fn acb_poly_compose_series_brent_kung(
641 res: *mut acb_poly_struct,
642 poly1: *mut acb_poly_struct,
643 poly2: *mut acb_poly_struct,
644 n: mp_limb_signed_t,
645 prec: mp_limb_signed_t,
646 );
647 pub fn _acb_poly_compose_series(
648 res: acb_ptr,
649 poly1: acb_srcptr,
650 len1: mp_limb_signed_t,
651 poly2: acb_srcptr,
652 len2: mp_limb_signed_t,
653 n: mp_limb_signed_t,
654 prec: mp_limb_signed_t,
655 );
656 pub fn acb_poly_compose_series(
657 res: *mut acb_poly_struct,
658 poly1: *mut acb_poly_struct,
659 poly2: *mut acb_poly_struct,
660 n: mp_limb_signed_t,
661 prec: mp_limb_signed_t,
662 );
663 pub fn _acb_poly_revert_series_lagrange(
664 Qinv: acb_ptr,
665 Q: acb_srcptr,
666 Qlen: mp_limb_signed_t,
667 n: mp_limb_signed_t,
668 prec: mp_limb_signed_t,
669 );
670 pub fn acb_poly_revert_series_lagrange(
671 Qinv: *mut acb_poly_struct,
672 Q: *mut acb_poly_struct,
673 n: mp_limb_signed_t,
674 prec: mp_limb_signed_t,
675 );
676 pub fn _acb_poly_revert_series_newton(
677 Qinv: acb_ptr,
678 Q: acb_srcptr,
679 Qlen: mp_limb_signed_t,
680 n: mp_limb_signed_t,
681 prec: mp_limb_signed_t,
682 );
683 pub fn acb_poly_revert_series_newton(
684 Qinv: *mut acb_poly_struct,
685 Q: *mut acb_poly_struct,
686 n: mp_limb_signed_t,
687 prec: mp_limb_signed_t,
688 );
689 pub fn _acb_poly_revert_series_lagrange_fast(
690 Qinv: acb_ptr,
691 Q: acb_srcptr,
692 Qlen: mp_limb_signed_t,
693 n: mp_limb_signed_t,
694 prec: mp_limb_signed_t,
695 );
696 pub fn acb_poly_revert_series_lagrange_fast(
697 Qinv: *mut acb_poly_struct,
698 Q: *mut acb_poly_struct,
699 n: mp_limb_signed_t,
700 prec: mp_limb_signed_t,
701 );
702 pub fn _acb_poly_revert_series(
703 Qinv: acb_ptr,
704 Q: acb_srcptr,
705 Qlen: mp_limb_signed_t,
706 n: mp_limb_signed_t,
707 prec: mp_limb_signed_t,
708 );
709 pub fn acb_poly_revert_series(
710 Qinv: *mut acb_poly_struct,
711 Q: *mut acb_poly_struct,
712 n: mp_limb_signed_t,
713 prec: mp_limb_signed_t,
714 );
715 pub fn _acb_poly_evaluate_vec_fast_precomp(
716 vs: acb_ptr,
717 poly: acb_srcptr,
718 plen: mp_limb_signed_t,
719 tree: *mut acb_ptr,
720 len: mp_limb_signed_t,
721 prec: mp_limb_signed_t,
722 );
723 pub fn _acb_poly_evaluate_vec_fast(
724 ys: acb_ptr,
725 poly: acb_srcptr,
726 plen: mp_limb_signed_t,
727 xs: acb_srcptr,
728 n: mp_limb_signed_t,
729 prec: mp_limb_signed_t,
730 );
731 pub fn acb_poly_evaluate_vec_fast(
732 ys: acb_ptr,
733 poly: *mut acb_poly_struct,
734 xs: acb_srcptr,
735 n: mp_limb_signed_t,
736 prec: mp_limb_signed_t,
737 );
738 pub fn _acb_poly_evaluate_vec_iter(
739 ys: acb_ptr,
740 poly: acb_srcptr,
741 plen: mp_limb_signed_t,
742 xs: acb_srcptr,
743 n: mp_limb_signed_t,
744 prec: mp_limb_signed_t,
745 );
746 pub fn acb_poly_evaluate_vec_iter(
747 ys: acb_ptr,
748 poly: *mut acb_poly_struct,
749 xs: acb_srcptr,
750 n: mp_limb_signed_t,
751 prec: mp_limb_signed_t,
752 );
753 pub fn _acb_poly_interpolate_barycentric(
754 poly: acb_ptr,
755 xs: acb_srcptr,
756 ys: acb_srcptr,
757 n: mp_limb_signed_t,
758 prec: mp_limb_signed_t,
759 );
760 pub fn acb_poly_interpolate_barycentric(
761 poly: *mut acb_poly_struct,
762 xs: acb_srcptr,
763 ys: acb_srcptr,
764 n: mp_limb_signed_t,
765 prec: mp_limb_signed_t,
766 );
767 pub fn _acb_poly_interpolation_weights(
768 w: acb_ptr,
769 tree: *mut acb_ptr,
770 len: mp_limb_signed_t,
771 prec: mp_limb_signed_t,
772 );
773 pub fn _acb_poly_interpolate_fast_precomp(
774 poly: acb_ptr,
775 ys: acb_srcptr,
776 tree: *mut acb_ptr,
777 weights: acb_srcptr,
778 len: mp_limb_signed_t,
779 prec: mp_limb_signed_t,
780 );
781 pub fn _acb_poly_interpolate_fast(
782 poly: acb_ptr,
783 xs: acb_srcptr,
784 ys: acb_srcptr,
785 len: mp_limb_signed_t,
786 prec: mp_limb_signed_t,
787 );
788 pub fn acb_poly_interpolate_fast(
789 poly: *mut acb_poly_struct,
790 xs: acb_srcptr,
791 ys: acb_srcptr,
792 n: mp_limb_signed_t,
793 prec: mp_limb_signed_t,
794 );
795 pub fn _acb_poly_interpolate_newton(
796 poly: acb_ptr,
797 xs: acb_srcptr,
798 ys: acb_srcptr,
799 n: mp_limb_signed_t,
800 prec: mp_limb_signed_t,
801 );
802 pub fn acb_poly_interpolate_newton(
803 poly: *mut acb_poly_struct,
804 xs: acb_srcptr,
805 ys: acb_srcptr,
806 n: mp_limb_signed_t,
807 prec: mp_limb_signed_t,
808 );
809 pub fn _acb_poly_product_roots(
810 poly: acb_ptr,
811 xs: acb_srcptr,
812 n: mp_limb_signed_t,
813 prec: mp_limb_signed_t,
814 );
815 pub fn acb_poly_product_roots(
816 poly: *mut acb_poly_struct,
817 xs: acb_srcptr,
818 n: mp_limb_signed_t,
819 prec: mp_limb_signed_t,
820 );
821 pub fn _acb_poly_tree_alloc(len: mp_limb_signed_t) -> *mut acb_ptr;
822 pub fn _acb_poly_tree_free(tree: *mut acb_ptr, len: mp_limb_signed_t);
823 pub fn _acb_poly_tree_build(
824 tree: *mut acb_ptr,
825 roots: acb_srcptr,
826 len: mp_limb_signed_t,
827 prec: mp_limb_signed_t,
828 );
829 pub fn _acb_poly_root_inclusion(
830 r: *mut acb_struct,
831 m: *mut acb_struct,
832 poly: acb_srcptr,
833 polyder: acb_srcptr,
834 len: mp_limb_signed_t,
835 prec: mp_limb_signed_t,
836 );
837 pub fn _acb_poly_validate_roots(
838 roots: acb_ptr,
839 poly: acb_srcptr,
840 len: mp_limb_signed_t,
841 prec: mp_limb_signed_t,
842 ) -> mp_limb_signed_t;
843 pub fn _acb_poly_refine_roots_durand_kerner(
844 roots: acb_ptr,
845 poly: acb_srcptr,
846 len: mp_limb_signed_t,
847 prec: mp_limb_signed_t,
848 );
849 pub fn _acb_poly_find_roots(
850 roots: acb_ptr,
851 poly: acb_srcptr,
852 initial: acb_srcptr,
853 len: mp_limb_signed_t,
854 maxiter: mp_limb_signed_t,
855 prec: mp_limb_signed_t,
856 ) -> mp_limb_signed_t;
857 pub fn acb_poly_find_roots(
858 roots: acb_ptr,
859 poly: *mut acb_poly_struct,
860 initial: acb_srcptr,
861 maxiter: mp_limb_signed_t,
862 prec: mp_limb_signed_t,
863 ) -> mp_limb_signed_t;
864 pub fn _acb_poly_root_bound_fujiwara(
865 bound: *mut mag_struct,
866 poly: acb_srcptr,
867 len: mp_limb_signed_t,
868 );
869 pub fn acb_poly_root_bound_fujiwara(bound: *mut mag_struct, poly: *mut acb_poly_struct);
870 pub fn _acb_poly_validate_real_roots(
871 roots: acb_srcptr,
872 poly: acb_srcptr,
873 len: mp_limb_signed_t,
874 prec: mp_limb_signed_t,
875 ) -> c_int;
876 pub fn acb_poly_validate_real_roots(
877 roots: acb_srcptr,
878 poly: *mut acb_poly_struct,
879 prec: mp_limb_signed_t,
880 ) -> c_int;
881 pub fn _acb_poly_pow_ui_trunc_binexp(
882 res: acb_ptr,
883 f: acb_srcptr,
884 flen: mp_limb_signed_t,
885 exp: mp_limb_t,
886 len: mp_limb_signed_t,
887 prec: mp_limb_signed_t,
888 );
889 pub fn acb_poly_pow_ui_trunc_binexp(
890 res: *mut acb_poly_struct,
891 poly: *mut acb_poly_struct,
892 exp: mp_limb_t,
893 len: mp_limb_signed_t,
894 prec: mp_limb_signed_t,
895 );
896 pub fn _acb_poly_pow_ui(
897 res: acb_ptr,
898 f: acb_srcptr,
899 flen: mp_limb_signed_t,
900 exp: mp_limb_t,
901 prec: mp_limb_signed_t,
902 );
903 pub fn acb_poly_pow_ui(
904 res: *mut acb_poly_struct,
905 poly: *mut acb_poly_struct,
906 exp: mp_limb_t,
907 prec: mp_limb_signed_t,
908 );
909 pub fn _acb_poly_rsqrt_series(
910 g: acb_ptr,
911 h: acb_srcptr,
912 hlen: mp_limb_signed_t,
913 len: mp_limb_signed_t,
914 prec: mp_limb_signed_t,
915 );
916 pub fn acb_poly_rsqrt_series(
917 g: *mut acb_poly_struct,
918 h: *mut acb_poly_struct,
919 n: mp_limb_signed_t,
920 prec: mp_limb_signed_t,
921 );
922 pub fn _acb_poly_sqrt_series(
923 g: acb_ptr,
924 h: acb_srcptr,
925 hlen: mp_limb_signed_t,
926 len: mp_limb_signed_t,
927 prec: mp_limb_signed_t,
928 );
929 pub fn acb_poly_sqrt_series(
930 g: *mut acb_poly_struct,
931 h: *mut acb_poly_struct,
932 n: mp_limb_signed_t,
933 prec: mp_limb_signed_t,
934 );
935 pub fn _acb_poly_log_series(
936 res: acb_ptr,
937 f: acb_srcptr,
938 flen: mp_limb_signed_t,
939 n: mp_limb_signed_t,
940 prec: mp_limb_signed_t,
941 );
942 pub fn acb_poly_log_series(
943 res: *mut acb_poly_struct,
944 f: *mut acb_poly_struct,
945 n: mp_limb_signed_t,
946 prec: mp_limb_signed_t,
947 );
948 pub fn _acb_poly_log1p_series(
949 res: acb_ptr,
950 f: acb_srcptr,
951 flen: mp_limb_signed_t,
952 n: mp_limb_signed_t,
953 prec: mp_limb_signed_t,
954 );
955 pub fn acb_poly_log1p_series(
956 res: *mut acb_poly_struct,
957 f: *mut acb_poly_struct,
958 n: mp_limb_signed_t,
959 prec: mp_limb_signed_t,
960 );
961 pub fn _acb_poly_atan_series(
962 res: acb_ptr,
963 f: acb_srcptr,
964 flen: mp_limb_signed_t,
965 n: mp_limb_signed_t,
966 prec: mp_limb_signed_t,
967 );
968 pub fn acb_poly_atan_series(
969 res: *mut acb_poly_struct,
970 f: *mut acb_poly_struct,
971 n: mp_limb_signed_t,
972 prec: mp_limb_signed_t,
973 );
974 pub fn _acb_poly_exp_series_basecase(
975 f: acb_ptr,
976 h: acb_srcptr,
977 hlen: mp_limb_signed_t,
978 n: mp_limb_signed_t,
979 prec: mp_limb_signed_t,
980 );
981 pub fn acb_poly_exp_series_basecase(
982 f: *mut acb_poly_struct,
983 h: *mut acb_poly_struct,
984 n: mp_limb_signed_t,
985 prec: mp_limb_signed_t,
986 );
987 pub fn _acb_poly_exp_series(
988 f: acb_ptr,
989 h: acb_srcptr,
990 hlen: mp_limb_signed_t,
991 n: mp_limb_signed_t,
992 prec: mp_limb_signed_t,
993 );
994 pub fn acb_poly_exp_series(
995 f: *mut acb_poly_struct,
996 h: *mut acb_poly_struct,
997 n: mp_limb_signed_t,
998 prec: mp_limb_signed_t,
999 );
1000 pub fn _acb_poly_exp_pi_i_series(
1001 f: acb_ptr,
1002 h: acb_srcptr,
1003 hlen: mp_limb_signed_t,
1004 n: mp_limb_signed_t,
1005 prec: mp_limb_signed_t,
1006 );
1007 pub fn acb_poly_exp_pi_i_series(
1008 f: *mut acb_poly_struct,
1009 h: *mut acb_poly_struct,
1010 n: mp_limb_signed_t,
1011 prec: mp_limb_signed_t,
1012 );
1013 pub fn _acb_poly_sinh_cosh_series_basecase(
1014 s: acb_ptr,
1015 c: acb_ptr,
1016 h: acb_srcptr,
1017 hlen: mp_limb_signed_t,
1018 n: mp_limb_signed_t,
1019 prec: mp_limb_signed_t,
1020 );
1021 pub fn acb_poly_sinh_cosh_series_basecase(
1022 s: *mut acb_poly_struct,
1023 c: *mut acb_poly_struct,
1024 h: *mut acb_poly_struct,
1025 n: mp_limb_signed_t,
1026 prec: mp_limb_signed_t,
1027 );
1028 pub fn _acb_poly_sinh_cosh_series_exponential(
1029 s: acb_ptr,
1030 c: acb_ptr,
1031 h: acb_srcptr,
1032 hlen: mp_limb_signed_t,
1033 n: mp_limb_signed_t,
1034 prec: mp_limb_signed_t,
1035 );
1036 pub fn acb_poly_sinh_cosh_series_exponential(
1037 s: *mut acb_poly_struct,
1038 c: *mut acb_poly_struct,
1039 h: *mut acb_poly_struct,
1040 n: mp_limb_signed_t,
1041 prec: mp_limb_signed_t,
1042 );
1043 pub fn _acb_poly_sinh_cosh_series(
1044 s: acb_ptr,
1045 c: acb_ptr,
1046 h: acb_srcptr,
1047 hlen: mp_limb_signed_t,
1048 n: mp_limb_signed_t,
1049 prec: mp_limb_signed_t,
1050 );
1051 pub fn acb_poly_sinh_cosh_series(
1052 s: *mut acb_poly_struct,
1053 c: *mut acb_poly_struct,
1054 h: *mut acb_poly_struct,
1055 n: mp_limb_signed_t,
1056 prec: mp_limb_signed_t,
1057 );
1058 pub fn _acb_poly_sinh_series(
1059 s: acb_ptr,
1060 h: acb_srcptr,
1061 hlen: mp_limb_signed_t,
1062 n: mp_limb_signed_t,
1063 prec: mp_limb_signed_t,
1064 );
1065 pub fn acb_poly_sinh_series(
1066 s: *mut acb_poly_struct,
1067 h: *mut acb_poly_struct,
1068 n: mp_limb_signed_t,
1069 prec: mp_limb_signed_t,
1070 );
1071 pub fn _acb_poly_cosh_series(
1072 c: acb_ptr,
1073 h: acb_srcptr,
1074 hlen: mp_limb_signed_t,
1075 n: mp_limb_signed_t,
1076 prec: mp_limb_signed_t,
1077 );
1078 pub fn acb_poly_cosh_series(
1079 c: *mut acb_poly_struct,
1080 h: *mut acb_poly_struct,
1081 n: mp_limb_signed_t,
1082 prec: mp_limb_signed_t,
1083 );
1084 pub fn _acb_poly_sin_cos_series_basecase(
1085 s: acb_ptr,
1086 c: acb_ptr,
1087 h: acb_srcptr,
1088 hlen: mp_limb_signed_t,
1089 n: mp_limb_signed_t,
1090 prec: mp_limb_signed_t,
1091 times_pi: c_int,
1092 );
1093 pub fn acb_poly_sin_cos_series_basecase(
1094 s: *mut acb_poly_struct,
1095 c: *mut acb_poly_struct,
1096 h: *mut acb_poly_struct,
1097 n: mp_limb_signed_t,
1098 prec: mp_limb_signed_t,
1099 times_pi: c_int,
1100 );
1101 pub fn _acb_poly_sin_cos_series_tangent(
1102 s: acb_ptr,
1103 c: acb_ptr,
1104 h: acb_srcptr,
1105 hlen: mp_limb_signed_t,
1106 len: mp_limb_signed_t,
1107 prec: mp_limb_signed_t,
1108 times_pi: c_int,
1109 );
1110 pub fn acb_poly_sin_cos_series_tangent(
1111 s: *mut acb_poly_struct,
1112 c: *mut acb_poly_struct,
1113 h: *mut acb_poly_struct,
1114 n: mp_limb_signed_t,
1115 prec: mp_limb_signed_t,
1116 times_pi: c_int,
1117 );
1118 pub fn _acb_poly_sin_cos_series(
1119 s: acb_ptr,
1120 c: acb_ptr,
1121 h: acb_srcptr,
1122 hlen: mp_limb_signed_t,
1123 len: mp_limb_signed_t,
1124 prec: mp_limb_signed_t,
1125 );
1126 pub fn acb_poly_sin_cos_series(
1127 s: *mut acb_poly_struct,
1128 c: *mut acb_poly_struct,
1129 h: *mut acb_poly_struct,
1130 n: mp_limb_signed_t,
1131 prec: mp_limb_signed_t,
1132 );
1133 pub fn _acb_poly_sin_series(
1134 g: acb_ptr,
1135 h: acb_srcptr,
1136 hlen: mp_limb_signed_t,
1137 n: mp_limb_signed_t,
1138 prec: mp_limb_signed_t,
1139 );
1140 pub fn acb_poly_sin_series(
1141 g: *mut acb_poly_struct,
1142 h: *mut acb_poly_struct,
1143 n: mp_limb_signed_t,
1144 prec: mp_limb_signed_t,
1145 );
1146 pub fn _acb_poly_cos_series(
1147 g: acb_ptr,
1148 h: acb_srcptr,
1149 hlen: mp_limb_signed_t,
1150 n: mp_limb_signed_t,
1151 prec: mp_limb_signed_t,
1152 );
1153 pub fn acb_poly_cos_series(
1154 g: *mut acb_poly_struct,
1155 h: *mut acb_poly_struct,
1156 n: mp_limb_signed_t,
1157 prec: mp_limb_signed_t,
1158 );
1159 pub fn _acb_poly_sin_cos_pi_series(
1160 s: acb_ptr,
1161 c: acb_ptr,
1162 h: acb_srcptr,
1163 hlen: mp_limb_signed_t,
1164 len: mp_limb_signed_t,
1165 prec: mp_limb_signed_t,
1166 );
1167 pub fn acb_poly_sin_cos_pi_series(
1168 s: *mut acb_poly_struct,
1169 c: *mut acb_poly_struct,
1170 h: *mut acb_poly_struct,
1171 n: mp_limb_signed_t,
1172 prec: mp_limb_signed_t,
1173 );
1174 pub fn _acb_poly_sin_pi_series(
1175 g: acb_ptr,
1176 h: acb_srcptr,
1177 hlen: mp_limb_signed_t,
1178 n: mp_limb_signed_t,
1179 prec: mp_limb_signed_t,
1180 );
1181 pub fn acb_poly_sin_pi_series(
1182 g: *mut acb_poly_struct,
1183 h: *mut acb_poly_struct,
1184 n: mp_limb_signed_t,
1185 prec: mp_limb_signed_t,
1186 );
1187 pub fn _acb_poly_cos_pi_series(
1188 g: acb_ptr,
1189 h: acb_srcptr,
1190 hlen: mp_limb_signed_t,
1191 n: mp_limb_signed_t,
1192 prec: mp_limb_signed_t,
1193 );
1194 pub fn acb_poly_cos_pi_series(
1195 g: *mut acb_poly_struct,
1196 h: *mut acb_poly_struct,
1197 n: mp_limb_signed_t,
1198 prec: mp_limb_signed_t,
1199 );
1200 pub fn _acb_poly_cot_pi_series(
1201 g: acb_ptr,
1202 h: acb_srcptr,
1203 hlen: mp_limb_signed_t,
1204 len: mp_limb_signed_t,
1205 prec: mp_limb_signed_t,
1206 );
1207 pub fn acb_poly_cot_pi_series(
1208 res: *mut acb_poly_struct,
1209 f: *mut acb_poly_struct,
1210 len: mp_limb_signed_t,
1211 prec: mp_limb_signed_t,
1212 );
1213 pub fn _acb_poly_tan_series(
1214 g: acb_ptr,
1215 h: acb_srcptr,
1216 hlen: mp_limb_signed_t,
1217 len: mp_limb_signed_t,
1218 prec: mp_limb_signed_t,
1219 );
1220 pub fn acb_poly_tan_series(
1221 g: *mut acb_poly_struct,
1222 h: *mut acb_poly_struct,
1223 n: mp_limb_signed_t,
1224 prec: mp_limb_signed_t,
1225 );
1226 pub fn _acb_poly_sinc_series(
1227 g: acb_ptr,
1228 h: acb_srcptr,
1229 hlen: mp_limb_signed_t,
1230 n: mp_limb_signed_t,
1231 prec: mp_limb_signed_t,
1232 );
1233 pub fn acb_poly_sinc_series(
1234 g: *mut acb_poly_struct,
1235 h: *mut acb_poly_struct,
1236 n: mp_limb_signed_t,
1237 prec: mp_limb_signed_t,
1238 );
1239 pub fn _acb_poly_lambertw_series(
1240 res: acb_ptr,
1241 z: acb_srcptr,
1242 zlen: mp_limb_signed_t,
1243 k: *mut fmpz,
1244 flags: c_int,
1245 len: mp_limb_signed_t,
1246 prec: mp_limb_signed_t,
1247 );
1248 pub fn acb_poly_lambertw_series(
1249 res: *mut acb_poly_struct,
1250 z: *mut acb_poly_struct,
1251 k: *mut fmpz,
1252 flags: c_int,
1253 len: mp_limb_signed_t,
1254 prec: mp_limb_signed_t,
1255 );
1256 pub fn _acb_poly_gamma_series(
1257 res: acb_ptr,
1258 h: acb_srcptr,
1259 hlen: mp_limb_signed_t,
1260 len: mp_limb_signed_t,
1261 prec: mp_limb_signed_t,
1262 );
1263 pub fn acb_poly_gamma_series(
1264 res: *mut acb_poly_struct,
1265 f: *mut acb_poly_struct,
1266 n: mp_limb_signed_t,
1267 prec: mp_limb_signed_t,
1268 );
1269 pub fn _acb_poly_rgamma_series(
1270 res: acb_ptr,
1271 h: acb_srcptr,
1272 hlen: mp_limb_signed_t,
1273 len: mp_limb_signed_t,
1274 prec: mp_limb_signed_t,
1275 );
1276 pub fn acb_poly_rgamma_series(
1277 res: *mut acb_poly_struct,
1278 f: *mut acb_poly_struct,
1279 n: mp_limb_signed_t,
1280 prec: mp_limb_signed_t,
1281 );
1282 pub fn _acb_poly_lgamma_series(
1283 res: acb_ptr,
1284 h: acb_srcptr,
1285 hlen: mp_limb_signed_t,
1286 len: mp_limb_signed_t,
1287 prec: mp_limb_signed_t,
1288 );
1289 pub fn acb_poly_lgamma_series(
1290 res: *mut acb_poly_struct,
1291 f: *mut acb_poly_struct,
1292 n: mp_limb_signed_t,
1293 prec: mp_limb_signed_t,
1294 );
1295 pub fn _acb_poly_digamma_series(
1296 res: acb_ptr,
1297 h: acb_srcptr,
1298 hlen: mp_limb_signed_t,
1299 len: mp_limb_signed_t,
1300 prec: mp_limb_signed_t,
1301 );
1302 pub fn acb_poly_digamma_series(
1303 res: *mut acb_poly_struct,
1304 f: *mut acb_poly_struct,
1305 n: mp_limb_signed_t,
1306 prec: mp_limb_signed_t,
1307 );
1308 pub fn _acb_poly_rising_ui_series(
1309 res: acb_ptr,
1310 f: acb_srcptr,
1311 flen: mp_limb_signed_t,
1312 r: mp_limb_t,
1313 trunc: mp_limb_signed_t,
1314 prec: mp_limb_signed_t,
1315 );
1316 pub fn acb_poly_rising_ui_series(
1317 res: *mut acb_poly_struct,
1318 f: *mut acb_poly_struct,
1319 r: mp_limb_t,
1320 trunc: mp_limb_signed_t,
1321 prec: mp_limb_signed_t,
1322 );
1323 pub fn _acb_poly_pow_acb_series(
1324 h: acb_ptr,
1325 f: acb_srcptr,
1326 flen: mp_limb_signed_t,
1327 g: *mut acb_struct,
1328 len: mp_limb_signed_t,
1329 prec: mp_limb_signed_t,
1330 );
1331 pub fn acb_poly_pow_acb_series(
1332 h: *mut acb_poly_struct,
1333 f: *mut acb_poly_struct,
1334 g: *mut acb_struct,
1335 len: mp_limb_signed_t,
1336 prec: mp_limb_signed_t,
1337 );
1338 pub fn _acb_poly_pow_series(
1339 h: acb_ptr,
1340 f: acb_srcptr,
1341 flen: mp_limb_signed_t,
1342 g: acb_srcptr,
1343 glen: mp_limb_signed_t,
1344 len: mp_limb_signed_t,
1345 prec: mp_limb_signed_t,
1346 );
1347 pub fn acb_poly_pow_series(
1348 h: *mut acb_poly_struct,
1349 f: *mut acb_poly_struct,
1350 g: *mut acb_poly_struct,
1351 len: mp_limb_signed_t,
1352 prec: mp_limb_signed_t,
1353 );
1354 pub fn _acb_poly_binomial_pow_acb_series(
1355 h: acb_ptr,
1356 f: acb_srcptr,
1357 flen: mp_limb_signed_t,
1358 g: *mut acb_struct,
1359 len: mp_limb_signed_t,
1360 prec: mp_limb_signed_t,
1361 );
1362 pub fn _acb_poly_acb_invpow_cpx(
1363 res: acb_ptr,
1364 N: *mut acb_struct,
1365 c: *mut acb_struct,
1366 trunc: mp_limb_signed_t,
1367 prec: mp_limb_signed_t,
1368 );
1369 pub fn _acb_poly_mullow_cpx(
1370 res: acb_ptr,
1371 src: acb_srcptr,
1372 len: mp_limb_signed_t,
1373 c: *mut acb_struct,
1374 trunc: mp_limb_signed_t,
1375 prec: mp_limb_signed_t,
1376 );
1377 pub fn _acb_poly_powsum_series_naive(
1378 z: acb_ptr,
1379 s: *mut acb_struct,
1380 a: *mut acb_struct,
1381 q: *mut acb_struct,
1382 n: mp_limb_signed_t,
1383 len: mp_limb_signed_t,
1384 prec: mp_limb_signed_t,
1385 );
1386 pub fn _acb_poly_powsum_series_naive_threaded(
1387 z: acb_ptr,
1388 s: *mut acb_struct,
1389 a: *mut acb_struct,
1390 q: *mut acb_struct,
1391 n: mp_limb_signed_t,
1392 len: mp_limb_signed_t,
1393 prec: mp_limb_signed_t,
1394 );
1395 pub fn _acb_poly_powsum_one_series_sieved(
1396 z: acb_ptr,
1397 s: *mut acb_struct,
1398 n: mp_limb_signed_t,
1399 len: mp_limb_signed_t,
1400 prec: mp_limb_signed_t,
1401 );
1402 pub fn _acb_poly_zeta_em_sum(
1403 z: acb_ptr,
1404 s: *mut acb_struct,
1405 a: *mut acb_struct,
1406 deflate: c_int,
1407 N: mp_limb_t,
1408 M: mp_limb_t,
1409 d: mp_limb_signed_t,
1410 prec: mp_limb_signed_t,
1411 );
1412 pub fn _acb_poly_zeta_em_choose_param(
1413 bound: *mut mag_struct,
1414 N: *mut mp_limb_t,
1415 M: *mut mp_limb_t,
1416 s: *mut acb_struct,
1417 a: *mut acb_struct,
1418 d: mp_limb_signed_t,
1419 target: mp_limb_signed_t,
1420 prec: mp_limb_signed_t,
1421 );
1422 pub fn _acb_poly_zeta_em_bound1(
1423 bound: *mut mag_struct,
1424 s: *mut acb_struct,
1425 a: *mut acb_struct,
1426 N: mp_limb_signed_t,
1427 M: mp_limb_signed_t,
1428 d: mp_limb_signed_t,
1429 wp: mp_limb_signed_t,
1430 );
1431 pub fn _acb_poly_zeta_em_bound(
1432 vec: arb_ptr,
1433 s: *mut acb_struct,
1434 a: *mut acb_struct,
1435 N: mp_limb_t,
1436 M: mp_limb_t,
1437 d: mp_limb_signed_t,
1438 wp: mp_limb_signed_t,
1439 );
1440 pub fn _acb_poly_zeta_em_tail_naive(
1441 sum: acb_ptr,
1442 s: *mut acb_struct,
1443 Na: *mut acb_struct,
1444 Nasx: acb_srcptr,
1445 M: mp_limb_signed_t,
1446 len: mp_limb_signed_t,
1447 prec: mp_limb_signed_t,
1448 );
1449 pub fn _acb_poly_zeta_em_tail_bsplit(
1450 z: acb_ptr,
1451 s: *mut acb_struct,
1452 Na: *mut acb_struct,
1453 Nasx: acb_srcptr,
1454 M: mp_limb_signed_t,
1455 len: mp_limb_signed_t,
1456 prec: mp_limb_signed_t,
1457 );
1458 pub fn _acb_poly_zeta_cpx_series(
1459 z: acb_ptr,
1460 s: *mut acb_struct,
1461 a: *mut acb_struct,
1462 deflate: c_int,
1463 d: mp_limb_signed_t,
1464 prec: mp_limb_signed_t,
1465 );
1466 pub fn _acb_poly_zeta_series(
1467 res: acb_ptr,
1468 h: acb_srcptr,
1469 hlen: mp_limb_signed_t,
1470 a: *mut acb_struct,
1471 deflate: c_int,
1472 len: mp_limb_signed_t,
1473 prec: mp_limb_signed_t,
1474 );
1475 pub fn acb_poly_zeta_series(
1476 res: *mut acb_poly_struct,
1477 f: *mut acb_poly_struct,
1478 a: *mut acb_struct,
1479 deflate: c_int,
1480 n: mp_limb_signed_t,
1481 prec: mp_limb_signed_t,
1482 );
1483 pub fn _acb_poly_polylog_cpx_zeta(
1484 w: acb_ptr,
1485 s: *mut acb_struct,
1486 z: *mut acb_struct,
1487 len: mp_limb_signed_t,
1488 prec: mp_limb_signed_t,
1489 );
1490 pub fn _acb_poly_polylog_cpx_small(
1491 w: acb_ptr,
1492 s: *mut acb_struct,
1493 z: *mut acb_struct,
1494 len: mp_limb_signed_t,
1495 prec: mp_limb_signed_t,
1496 );
1497 pub fn _acb_poly_polylog_cpx(
1498 w: acb_ptr,
1499 s: *mut acb_struct,
1500 z: *mut acb_struct,
1501 len: mp_limb_signed_t,
1502 prec: mp_limb_signed_t,
1503 );
1504 pub fn _acb_poly_polylog_series(
1505 res: acb_ptr,
1506 s: acb_srcptr,
1507 slen: mp_limb_signed_t,
1508 z: *mut acb_struct,
1509 len: mp_limb_signed_t,
1510 prec: mp_limb_signed_t,
1511 );
1512 pub fn acb_poly_polylog_series(
1513 res: *mut acb_poly_struct,
1514 s: *mut acb_poly_struct,
1515 z: *mut acb_struct,
1516 n: mp_limb_signed_t,
1517 prec: mp_limb_signed_t,
1518 );
1519 pub fn _acb_poly_agm1_series(
1520 res: acb_ptr,
1521 z: acb_srcptr,
1522 zlen: mp_limb_signed_t,
1523 len: mp_limb_signed_t,
1524 prec: mp_limb_signed_t,
1525 );
1526 pub fn acb_poly_agm1_series(
1527 res: *mut acb_poly_struct,
1528 z: *mut acb_poly_struct,
1529 n: mp_limb_signed_t,
1530 prec: mp_limb_signed_t,
1531 );
1532 pub fn _acb_poly_elliptic_k_series(
1533 res: acb_ptr,
1534 z: acb_srcptr,
1535 zlen: mp_limb_signed_t,
1536 len: mp_limb_signed_t,
1537 prec: mp_limb_signed_t,
1538 );
1539 pub fn acb_poly_elliptic_k_series(
1540 res: *mut acb_poly_struct,
1541 z: *mut acb_poly_struct,
1542 n: mp_limb_signed_t,
1543 prec: mp_limb_signed_t,
1544 );
1545 pub fn _acb_poly_elliptic_p_series(
1546 res: acb_ptr,
1547 z: acb_srcptr,
1548 zlen: mp_limb_signed_t,
1549 tau: *mut acb_struct,
1550 len: mp_limb_signed_t,
1551 prec: mp_limb_signed_t,
1552 );
1553 pub fn acb_poly_elliptic_p_series(
1554 res: *mut acb_poly_struct,
1555 z: *mut acb_poly_struct,
1556 tau: *mut acb_struct,
1557 n: mp_limb_signed_t,
1558 prec: mp_limb_signed_t,
1559 );
1560 pub fn _acb_poly_erf_series(
1561 g: acb_ptr,
1562 h: acb_srcptr,
1563 hlen: mp_limb_signed_t,
1564 n: mp_limb_signed_t,
1565 prec: mp_limb_signed_t,
1566 );
1567 pub fn acb_poly_erf_series(
1568 g: *mut acb_poly_struct,
1569 h: *mut acb_poly_struct,
1570 n: mp_limb_signed_t,
1571 prec: mp_limb_signed_t,
1572 );
1573}