1#![allow(non_camel_case_types)]
2
3use crate::arb::{arb_ptr, arb_srcptr, arb_struct};
6use crate::arb_poly::arb_poly_struct;
7use crate::mag::mag_struct;
8use flint_sys::deps::*;
9use flint_sys::fmpz::fmpz;
10
11extern "C" {
12 pub fn _arb_hypgeom_rising_coeffs_1(c: *mut mp_limb_t, k: mp_limb_t, l: mp_limb_signed_t);
13 pub fn _arb_hypgeom_rising_coeffs_2(c: *mut mp_limb_t, k: mp_limb_t, l: mp_limb_signed_t);
14 pub fn _arb_hypgeom_rising_coeffs_fmpz(c: *mut fmpz, k: mp_limb_t, l: mp_limb_signed_t);
15 pub fn arb_hypgeom_rising_ui_forward(
16 res: *mut arb_struct,
17 x: *mut arb_struct,
18 n: mp_limb_t,
19 prec: mp_limb_signed_t,
20 );
21 pub fn arb_hypgeom_rising_ui_rs(
22 res: *mut arb_struct,
23 x: *mut arb_struct,
24 n: mp_limb_t,
25 m: mp_limb_t,
26 prec: mp_limb_signed_t,
27 );
28 pub fn arb_hypgeom_rising_ui_bs(
29 res: *mut arb_struct,
30 x: *mut arb_struct,
31 n: mp_limb_t,
32 prec: mp_limb_signed_t,
33 );
34 pub fn arb_hypgeom_rising_ui_rec(
35 res: *mut arb_struct,
36 x: *mut arb_struct,
37 n: mp_limb_t,
38 prec: mp_limb_signed_t,
39 );
40 pub fn arb_hypgeom_rising_ui(
41 y: *mut arb_struct,
42 x: *mut arb_struct,
43 n: mp_limb_t,
44 prec: mp_limb_signed_t,
45 );
46 pub fn arb_hypgeom_rising(
47 y: *mut arb_struct,
48 x: *mut arb_struct,
49 n: *mut arb_struct,
50 prec: mp_limb_signed_t,
51 );
52 pub fn arb_hypgeom_rising_ui_jet_powsum(
53 res: arb_ptr,
54 x: *mut arb_struct,
55 n: mp_limb_t,
56 len: mp_limb_signed_t,
57 prec: mp_limb_signed_t,
58 );
59 pub fn arb_hypgeom_rising_ui_jet_rs(
60 res: arb_ptr,
61 x: *mut arb_struct,
62 n: mp_limb_t,
63 m: mp_limb_t,
64 len: mp_limb_signed_t,
65 prec: mp_limb_signed_t,
66 );
67 pub fn arb_hypgeom_rising_ui_jet_bs(
68 res: arb_ptr,
69 x: *mut arb_struct,
70 n: mp_limb_t,
71 len: mp_limb_signed_t,
72 prec: mp_limb_signed_t,
73 );
74 pub fn arb_hypgeom_rising_ui_jet(
75 res: arb_ptr,
76 x: *mut arb_struct,
77 n: mp_limb_t,
78 len: mp_limb_signed_t,
79 prec: mp_limb_signed_t,
80 );
81 pub fn arb_hypgeom_pfq(
82 res: *mut arb_struct,
83 a: arb_srcptr,
84 p: mp_limb_signed_t,
85 b: arb_srcptr,
86 q: mp_limb_signed_t,
87 z: *mut arb_struct,
88 regularized: ::std::os::raw::c_int,
89 prec: mp_limb_signed_t,
90 );
91 pub fn arb_hypgeom_0f1(
92 res: *mut arb_struct,
93 a: *mut arb_struct,
94 z: *mut arb_struct,
95 regularized: ::std::os::raw::c_int,
96 prec: mp_limb_signed_t,
97 );
98 pub fn arb_hypgeom_m(
99 res: *mut arb_struct,
100 a: *mut arb_struct,
101 b: *mut arb_struct,
102 z: *mut arb_struct,
103 regularized: ::std::os::raw::c_int,
104 prec: mp_limb_signed_t,
105 );
106 pub fn arb_hypgeom_1f1(
107 res: *mut arb_struct,
108 a: *mut arb_struct,
109 b: *mut arb_struct,
110 z: *mut arb_struct,
111 regularized: ::std::os::raw::c_int,
112 prec: mp_limb_signed_t,
113 );
114 pub fn arb_hypgeom_u(
115 res: *mut arb_struct,
116 a: *mut arb_struct,
117 b: *mut arb_struct,
118 z: *mut arb_struct,
119 prec: mp_limb_signed_t,
120 );
121 pub fn arb_hypgeom_2f1(
122 res: *mut arb_struct,
123 a: *mut arb_struct,
124 b: *mut arb_struct,
125 c: *mut arb_struct,
126 z: *mut arb_struct,
127 regularized: ::std::os::raw::c_int,
128 prec: mp_limb_signed_t,
129 );
130 pub fn arb_hypgeom_erf(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
131 pub fn _arb_hypgeom_erf_series(
132 g: arb_ptr,
133 h: arb_srcptr,
134 hlen: mp_limb_signed_t,
135 len: mp_limb_signed_t,
136 prec: mp_limb_signed_t,
137 );
138 pub fn arb_hypgeom_erf_series(
139 g: *mut arb_poly_struct,
140 h: *mut arb_poly_struct,
141 len: mp_limb_signed_t,
142 prec: mp_limb_signed_t,
143 );
144 pub fn arb_hypgeom_erfc(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
145 pub fn _arb_hypgeom_erfc_series(
146 g: arb_ptr,
147 h: arb_srcptr,
148 hlen: mp_limb_signed_t,
149 len: mp_limb_signed_t,
150 prec: mp_limb_signed_t,
151 );
152 pub fn arb_hypgeom_erfc_series(
153 g: *mut arb_poly_struct,
154 h: *mut arb_poly_struct,
155 len: mp_limb_signed_t,
156 prec: mp_limb_signed_t,
157 );
158 pub fn arb_hypgeom_erfi(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
159 pub fn _arb_hypgeom_erfi_series(
160 g: arb_ptr,
161 h: arb_srcptr,
162 hlen: mp_limb_signed_t,
163 len: mp_limb_signed_t,
164 prec: mp_limb_signed_t,
165 );
166 pub fn arb_hypgeom_erfi_series(
167 g: *mut arb_poly_struct,
168 h: *mut arb_poly_struct,
169 len: mp_limb_signed_t,
170 prec: mp_limb_signed_t,
171 );
172 pub fn arb_hypgeom_fresnel(
173 res1: *mut arb_struct,
174 res2: *mut arb_struct,
175 z: *mut arb_struct,
176 normalized: ::std::os::raw::c_int,
177 prec: mp_limb_signed_t,
178 );
179 pub fn _arb_hypgeom_fresnel_series(
180 s: arb_ptr,
181 c: arb_ptr,
182 h: arb_srcptr,
183 hlen: mp_limb_signed_t,
184 normalized: ::std::os::raw::c_int,
185 len: mp_limb_signed_t,
186 prec: mp_limb_signed_t,
187 );
188 pub fn arb_hypgeom_fresnel_series(
189 s: *mut arb_poly_struct,
190 c: *mut arb_poly_struct,
191 h: *mut arb_poly_struct,
192 normalized: ::std::os::raw::c_int,
193 len: mp_limb_signed_t,
194 prec: mp_limb_signed_t,
195 );
196 pub fn arb_hypgeom_ei(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
197 pub fn _arb_hypgeom_ei_series(
198 g: arb_ptr,
199 h: arb_srcptr,
200 hlen: mp_limb_signed_t,
201 len: mp_limb_signed_t,
202 prec: mp_limb_signed_t,
203 );
204 pub fn arb_hypgeom_ei_series(
205 g: *mut arb_poly_struct,
206 h: *mut arb_poly_struct,
207 len: mp_limb_signed_t,
208 prec: mp_limb_signed_t,
209 );
210 pub fn arb_hypgeom_si(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
211 pub fn _arb_hypgeom_si_series(
212 g: arb_ptr,
213 h: arb_srcptr,
214 hlen: mp_limb_signed_t,
215 len: mp_limb_signed_t,
216 prec: mp_limb_signed_t,
217 );
218 pub fn arb_hypgeom_si_series(
219 g: *mut arb_poly_struct,
220 h: *mut arb_poly_struct,
221 len: mp_limb_signed_t,
222 prec: mp_limb_signed_t,
223 );
224 pub fn arb_hypgeom_ci(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
225 pub fn _arb_hypgeom_ci_series(
226 g: arb_ptr,
227 h: arb_srcptr,
228 hlen: mp_limb_signed_t,
229 len: mp_limb_signed_t,
230 prec: mp_limb_signed_t,
231 );
232 pub fn arb_hypgeom_ci_series(
233 g: *mut arb_poly_struct,
234 h: *mut arb_poly_struct,
235 len: mp_limb_signed_t,
236 prec: mp_limb_signed_t,
237 );
238 pub fn arb_hypgeom_shi(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
239 pub fn _arb_hypgeom_shi_series(
240 g: arb_ptr,
241 h: arb_srcptr,
242 hlen: mp_limb_signed_t,
243 len: mp_limb_signed_t,
244 prec: mp_limb_signed_t,
245 );
246 pub fn arb_hypgeom_shi_series(
247 g: *mut arb_poly_struct,
248 h: *mut arb_poly_struct,
249 len: mp_limb_signed_t,
250 prec: mp_limb_signed_t,
251 );
252 pub fn arb_hypgeom_chi(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
253 pub fn _arb_hypgeom_chi_series(
254 g: arb_ptr,
255 h: arb_srcptr,
256 hlen: mp_limb_signed_t,
257 len: mp_limb_signed_t,
258 prec: mp_limb_signed_t,
259 );
260 pub fn arb_hypgeom_chi_series(
261 g: *mut arb_poly_struct,
262 h: *mut arb_poly_struct,
263 len: mp_limb_signed_t,
264 prec: mp_limb_signed_t,
265 );
266 pub fn arb_hypgeom_li(
267 res: *mut arb_struct,
268 z: *mut arb_struct,
269 offset: ::std::os::raw::c_int,
270 prec: mp_limb_signed_t,
271 );
272 pub fn _arb_hypgeom_li_series(
273 g: arb_ptr,
274 h: arb_srcptr,
275 hlen: mp_limb_signed_t,
276 offset: ::std::os::raw::c_int,
277 len: mp_limb_signed_t,
278 prec: mp_limb_signed_t,
279 );
280 pub fn arb_hypgeom_li_series(
281 g: *mut arb_poly_struct,
282 h: *mut arb_poly_struct,
283 offset: ::std::os::raw::c_int,
284 len: mp_limb_signed_t,
285 prec: mp_limb_signed_t,
286 );
287 pub fn arb_hypgeom_bessel_j(
288 res: *mut arb_struct,
289 nu: *mut arb_struct,
290 z: *mut arb_struct,
291 prec: mp_limb_signed_t,
292 );
293 pub fn arb_hypgeom_bessel_y(
294 res: *mut arb_struct,
295 nu: *mut arb_struct,
296 z: *mut arb_struct,
297 prec: mp_limb_signed_t,
298 );
299 pub fn arb_hypgeom_bessel_jy(
300 res1: *mut arb_struct,
301 res2: *mut arb_struct,
302 nu: *mut arb_struct,
303 z: *mut arb_struct,
304 prec: mp_limb_signed_t,
305 );
306 pub fn arb_hypgeom_bessel_i(
307 res: *mut arb_struct,
308 nu: *mut arb_struct,
309 z: *mut arb_struct,
310 prec: mp_limb_signed_t,
311 );
312 pub fn arb_hypgeom_bessel_k(
313 res: *mut arb_struct,
314 nu: *mut arb_struct,
315 z: *mut arb_struct,
316 prec: mp_limb_signed_t,
317 );
318 pub fn arb_hypgeom_bessel_i_scaled(
319 res: *mut arb_struct,
320 nu: *mut arb_struct,
321 z: *mut arb_struct,
322 prec: mp_limb_signed_t,
323 );
324 pub fn arb_hypgeom_bessel_k_scaled(
325 res: *mut arb_struct,
326 nu: *mut arb_struct,
327 z: *mut arb_struct,
328 prec: mp_limb_signed_t,
329 );
330 pub fn arb_hypgeom_airy(
331 ai: *mut arb_struct,
332 aip: *mut arb_struct,
333 bi: *mut arb_struct,
334 bip: *mut arb_struct,
335 z: *mut arb_struct,
336 prec: mp_limb_signed_t,
337 );
338 pub fn arb_hypgeom_airy_jet(
339 ai: arb_ptr,
340 bi: arb_ptr,
341 z: *mut arb_struct,
342 len: mp_limb_signed_t,
343 prec: mp_limb_signed_t,
344 );
345 pub fn arb_hypgeom_airy_series(
346 ai: *mut arb_poly_struct,
347 ai_prime: *mut arb_poly_struct,
348 bi: *mut arb_poly_struct,
349 bi_prime: *mut arb_poly_struct,
350 z: *mut arb_poly_struct,
351 len: mp_limb_signed_t,
352 prec: mp_limb_signed_t,
353 );
354 pub fn _arb_hypgeom_airy_series(
355 ai: arb_ptr,
356 ai_prime: arb_ptr,
357 bi: arb_ptr,
358 bi_prime: arb_ptr,
359 z: arb_srcptr,
360 zlen: mp_limb_signed_t,
361 len: mp_limb_signed_t,
362 prec: mp_limb_signed_t,
363 );
364 pub fn arb_hypgeom_airy_zero(
365 ai: *mut arb_struct,
366 aip: *mut arb_struct,
367 bi: *mut arb_struct,
368 bip: *mut arb_struct,
369 n: *mut fmpz,
370 prec: mp_limb_signed_t,
371 );
372 pub fn arb_hypgeom_coulomb(
373 F: *mut arb_struct,
374 G: *mut arb_struct,
375 l: *mut arb_struct,
376 eta: *mut arb_struct,
377 z: *mut arb_struct,
378 prec: mp_limb_signed_t,
379 );
380 pub fn arb_hypgeom_coulomb_jet(
381 F: arb_ptr,
382 G: arb_ptr,
383 l: *mut arb_struct,
384 eta: *mut arb_struct,
385 z: *mut arb_struct,
386 len: mp_limb_signed_t,
387 prec: mp_limb_signed_t,
388 );
389 pub fn _arb_hypgeom_coulomb_series(
390 F: arb_ptr,
391 G: arb_ptr,
392 l: *mut arb_struct,
393 eta: *mut arb_struct,
394 z: arb_srcptr,
395 zlen: mp_limb_signed_t,
396 len: mp_limb_signed_t,
397 prec: mp_limb_signed_t,
398 );
399 pub fn arb_hypgeom_coulomb_series(
400 F: *mut arb_poly_struct,
401 G: *mut arb_poly_struct,
402 l: *mut arb_struct,
403 eta: *mut arb_struct,
404 z: *mut arb_poly_struct,
405 len: mp_limb_signed_t,
406 prec: mp_limb_signed_t,
407 );
408 pub fn arb_hypgeom_expint(
409 res: *mut arb_struct,
410 s: *mut arb_struct,
411 z: *mut arb_struct,
412 prec: mp_limb_signed_t,
413 );
414 pub fn arb_hypgeom_gamma_lower(
415 res: *mut arb_struct,
416 s: *mut arb_struct,
417 z: *mut arb_struct,
418 regularized: ::std::os::raw::c_int,
419 prec: mp_limb_signed_t,
420 );
421 pub fn _arb_hypgeom_gamma_lower_series(
422 g: arb_ptr,
423 s: *mut arb_struct,
424 h: arb_srcptr,
425 hlen: mp_limb_signed_t,
426 regularized: ::std::os::raw::c_int,
427 n: mp_limb_signed_t,
428 prec: mp_limb_signed_t,
429 );
430 pub fn arb_hypgeom_gamma_lower_series(
431 g: *mut arb_poly_struct,
432 s: *mut arb_struct,
433 h: *mut arb_poly_struct,
434 regularized: ::std::os::raw::c_int,
435 n: mp_limb_signed_t,
436 prec: mp_limb_signed_t,
437 );
438 pub fn arb_hypgeom_gamma_upper(
439 res: *mut arb_struct,
440 s: *mut arb_struct,
441 z: *mut arb_struct,
442 regularized: ::std::os::raw::c_int,
443 prec: mp_limb_signed_t,
444 );
445 pub fn _arb_hypgeom_gamma_upper_series(
446 g: arb_ptr,
447 s: *mut arb_struct,
448 h: arb_srcptr,
449 hlen: mp_limb_signed_t,
450 regularized: ::std::os::raw::c_int,
451 n: mp_limb_signed_t,
452 prec: mp_limb_signed_t,
453 );
454 pub fn arb_hypgeom_gamma_upper_series(
455 g: *mut arb_poly_struct,
456 s: *mut arb_struct,
457 h: *mut arb_poly_struct,
458 regularized: ::std::os::raw::c_int,
459 n: mp_limb_signed_t,
460 prec: mp_limb_signed_t,
461 );
462 pub fn arb_hypgeom_beta_lower(
463 res: *mut arb_struct,
464 a: *mut arb_struct,
465 c: *mut arb_struct,
466 z: *mut arb_struct,
467 regularized: ::std::os::raw::c_int,
468 prec: mp_limb_signed_t,
469 );
470 pub fn arb_hypgeom_beta_lower_series(
471 res: *mut arb_poly_struct,
472 a: *mut arb_struct,
473 b: *mut arb_struct,
474 z: *mut arb_poly_struct,
475 regularized: ::std::os::raw::c_int,
476 len: mp_limb_signed_t,
477 prec: mp_limb_signed_t,
478 );
479 pub fn _arb_hypgeom_beta_lower_series(
480 res: arb_ptr,
481 a: *mut arb_struct,
482 b: *mut arb_struct,
483 z: arb_srcptr,
484 zlen: mp_limb_signed_t,
485 regularized: ::std::os::raw::c_int,
486 len: mp_limb_signed_t,
487 prec: mp_limb_signed_t,
488 );
489 pub fn arb_hypgeom_chebyshev_t(
490 res: *mut arb_struct,
491 nu: *mut arb_struct,
492 z: *mut arb_struct,
493 prec: mp_limb_signed_t,
494 );
495 pub fn arb_hypgeom_chebyshev_u(
496 res: *mut arb_struct,
497 nu: *mut arb_struct,
498 z: *mut arb_struct,
499 prec: mp_limb_signed_t,
500 );
501 pub fn arb_hypgeom_jacobi_p(
502 res: *mut arb_struct,
503 n: *mut arb_struct,
504 a: *mut arb_struct,
505 b: *mut arb_struct,
506 z: *mut arb_struct,
507 prec: mp_limb_signed_t,
508 );
509 pub fn arb_hypgeom_gegenbauer_c(
510 res: *mut arb_struct,
511 n: *mut arb_struct,
512 m: *mut arb_struct,
513 z: *mut arb_struct,
514 prec: mp_limb_signed_t,
515 );
516 pub fn arb_hypgeom_laguerre_l(
517 res: *mut arb_struct,
518 n: *mut arb_struct,
519 m: *mut arb_struct,
520 z: *mut arb_struct,
521 prec: mp_limb_signed_t,
522 );
523 pub fn arb_hypgeom_hermite_h(
524 res: *mut arb_struct,
525 nu: *mut arb_struct,
526 z: *mut arb_struct,
527 prec: mp_limb_signed_t,
528 );
529 pub fn arb_hypgeom_legendre_p(
530 res: *mut arb_struct,
531 n: *mut arb_struct,
532 m: *mut arb_struct,
533 z: *mut arb_struct,
534 type_: ::std::os::raw::c_int,
535 prec: mp_limb_signed_t,
536 );
537 pub fn arb_hypgeom_legendre_q(
538 res: *mut arb_struct,
539 n: *mut arb_struct,
540 m: *mut arb_struct,
541 z: *mut arb_struct,
542 type_: ::std::os::raw::c_int,
543 prec: mp_limb_signed_t,
544 );
545 pub fn arb_hypgeom_legendre_p_ui_deriv_bound(
546 dp: *mut mag_struct,
547 dp2: *mut mag_struct,
548 n: mp_limb_t,
549 x: *mut arb_struct,
550 x2sub1: *mut arb_struct,
551 );
552 pub fn arb_hypgeom_legendre_p_ui_rec(
553 res: *mut arb_struct,
554 res_prime: *mut arb_struct,
555 n: mp_limb_t,
556 x: *mut arb_struct,
557 prec: mp_limb_signed_t,
558 );
559 pub fn arb_hypgeom_legendre_p_ui_asymp(
560 res: *mut arb_struct,
561 res2: *mut arb_struct,
562 n: mp_limb_t,
563 x: *mut arb_struct,
564 K: mp_limb_signed_t,
565 prec: mp_limb_signed_t,
566 );
567 pub fn arb_hypgeom_legendre_p_ui_one(
568 res: *mut arb_struct,
569 res2: *mut arb_struct,
570 n: mp_limb_t,
571 x: *mut arb_struct,
572 K: mp_limb_signed_t,
573 prec: mp_limb_signed_t,
574 );
575 pub fn arb_hypgeom_legendre_p_ui_zero(
576 res: *mut arb_struct,
577 res2: *mut arb_struct,
578 n: mp_limb_t,
579 x: *mut arb_struct,
580 K: mp_limb_signed_t,
581 prec: mp_limb_signed_t,
582 );
583 pub fn arb_hypgeom_legendre_p_ui(
584 res: *mut arb_struct,
585 res_prime: *mut arb_struct,
586 n: mp_limb_t,
587 x: *mut arb_struct,
588 prec: mp_limb_signed_t,
589 );
590 pub fn arb_hypgeom_legendre_p_ui_root(
591 res: *mut arb_struct,
592 weight: *mut arb_struct,
593 n: mp_limb_t,
594 k: mp_limb_t,
595 prec: mp_limb_signed_t,
596 );
597 pub fn arb_hypgeom_central_bin_ui(res: *mut arb_struct, n: mp_limb_t, prec: mp_limb_signed_t);
598 pub fn arb_hypgeom_dilog(res: *mut arb_struct, z: *mut arb_struct, prec: mp_limb_signed_t);
599}