use libc::*;
use crate::deps::*;
use crate::arb_types::*;
use crate::arf::*;
use crate::arf_types::*;
use crate::flint::*;
pub const ARB_ATAN_TAB1_BITS: u32 = 8;
pub const ARB_ATAN_TAB1_PREC: u32 = 512;
pub const ARB_ATAN_TAB1_LIMBS: u32 = 8;
pub const ARB_ATAN_TAB21_BITS: u32 = 5;
pub const ARB_ATAN_TAB22_BITS: u32 = 5;
pub const ARB_ATAN_TAB2_PREC: u32 = 4608;
pub const ARB_ATAN_TAB2_LIMBS: u32 = 72;
pub const ARB_ATAN_NEWTON_PREC: u32 = 3400;
pub const ARB_LOG_TAB11_BITS: u32 = 7;
pub const ARB_LOG_TAB12_BITS: u32 = 7;
pub const ARB_LOG_TAB1_PREC: u32 = 512;
pub const ARB_LOG_TAB1_LIMBS: u32 = 8;
pub const ARB_LOG_TAB21_BITS: u32 = 5;
pub const ARB_LOG_TAB22_BITS: u32 = 5;
pub const ARB_LOG_TAB2_PREC: u32 = 4608;
pub const ARB_LOG_TAB2_LIMBS: u32 = 72;
pub const ARB_LOG_PRIME_CACHE_NUM: u32 = 13;
pub const ARB_EXP_TAB1_NUM: u32 = 178;
pub const ARB_EXP_TAB1_BITS: u32 = 8;
pub const ARB_EXP_TAB1_PREC: u32 = 512;
pub const ARB_EXP_TAB1_LIMBS: u32 = 8;
pub const ARB_EXP_TAB21_NUM: u32 = 23;
pub const ARB_EXP_TAB21_BITS: u32 = 5;
pub const ARB_EXP_TAB22_BITS: u32 = 5;
pub const ARB_EXP_TAB2_PREC: u32 = 4608;
pub const ARB_EXP_TAB2_LIMBS: u32 = 72;
pub const ARB_LOG_REDUCTION_DEFAULT_MAX_PREC: u32 = 4000000;
pub const ARB_EXP_LOG_REDUCTION_PREC: u32 = 2240;
pub const ARB_LOG_NEWTON_PREC: u32 = 2800;
pub const ARB_SIN_COS_TAB1_NUM: u32 = 203;
pub const ARB_SIN_COS_TAB1_BITS: u32 = 8;
pub const ARB_SIN_COS_TAB1_PREC: u32 = 512;
pub const ARB_SIN_COS_TAB1_LIMBS: u32 = 8;
pub const ARB_SIN_COS_TAB21_NUM: u32 = 26;
pub const ARB_SIN_COS_TAB21_BITS: u32 = 5;
pub const ARB_SIN_COS_TAB22_BITS: u32 = 5;
pub const ARB_SIN_COS_TAB2_PREC: u32 = 4608;
pub const ARB_SIN_COS_TAB2_LIMBS: u32 = 72;
pub const ARB_PI4_TAB_LIMBS: u32 = 72;
pub const ARB_ATAN_GAUSS_PRIME_CACHE_NUM: u32 = 13;
pub const ARB_SIN_COS_ATAN_REDUCTION_DEFAULT_MAX_PREC: u32 = 4000000;
pub const ARB_SIN_COS_ATAN_REDUCTION_PREC: u32 = 2600;
extern "C" {
#[link_name = "arb_init__extern"]
pub fn arb_init(x: *mut arb_struct);
pub fn arb_clear(x: *mut arb_struct);
pub fn _arb_vec_init(n: slong) -> arb_ptr;
pub fn _arb_vec_clear(v: arb_ptr, n: slong);
#[link_name = "arb_mid_ptr__extern"]
pub fn arb_mid_ptr(z: *mut arb_struct) -> arf_ptr;
#[link_name = "arb_rad_ptr__extern"]
pub fn arb_rad_ptr(z: *mut arb_struct) -> mag_ptr;
#[link_name = "arb_is_exact__extern"]
pub fn arb_is_exact(x: *const arb_struct) -> libc::c_int;
#[link_name = "arb_equal__extern"]
pub fn arb_equal(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
#[link_name = "arb_equal_si__extern"]
pub fn arb_equal_si(x: *const arb_struct, y: slong) -> libc::c_int;
pub fn arb_eq(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_ne(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_lt(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_le(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_gt(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_ge(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_zero(x: *mut arb_struct);
#[link_name = "arb_is_zero__extern"]
pub fn arb_is_zero(x: *const arb_struct) -> libc::c_int;
#[link_name = "arb_pos_inf__extern"]
pub fn arb_pos_inf(x: *mut arb_struct);
#[link_name = "arb_neg_inf__extern"]
pub fn arb_neg_inf(x: *mut arb_struct);
#[link_name = "arb_zero_pm_inf__extern"]
pub fn arb_zero_pm_inf(x: *mut arb_struct);
#[link_name = "arb_zero_pm_one__extern"]
pub fn arb_zero_pm_one(x: *mut arb_struct);
#[link_name = "arb_unit_interval__extern"]
pub fn arb_unit_interval(x: *mut arb_struct);
pub fn arb_indeterminate(x: *mut arb_struct);
pub fn arb_is_finite(x: *const arb_struct) -> libc::c_int;
pub fn arb_set(y: *mut arb_struct, x: *const arb_struct);
#[link_name = "arb_swap__extern"]
pub fn arb_swap(x: *mut arb_struct, y: *mut arb_struct);
pub fn arb_set_round(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_trim(y: *mut arb_struct, x: *const arb_struct);
pub fn arb_neg(y: *mut arb_struct, x: *const arb_struct);
pub fn arb_neg_round(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_abs(y: *mut arb_struct, x: *const arb_struct);
pub fn arb_nonnegative_abs(y: *mut arb_struct, x: *const arb_struct);
pub fn arb_sgn(res: *mut arb_struct, x: *const arb_struct);
pub fn arb_sgn_nonzero(x: *const arb_struct) -> libc::c_int;
pub fn _arb_digits_round_inplace(
s: *mut libc::c_char,
shift: *mut flint_bitcnt_t,
error: *mut fmpz,
n: slong,
rnd: arf_rnd_t,
);
pub fn arb_set_str(res: *mut arb_struct, inp: *const libc::c_char, prec: slong) -> libc::c_int;
pub fn arb_get_str(x: *const arb_struct, n: slong, flags: ulong) -> *mut libc::c_char;
#[link_name = "arb_set_arf__extern"]
pub fn arb_set_arf(x: *mut arb_struct, y: *const arf_struct);
pub fn arb_set_si(y: *mut arb_struct, x: slong);
pub fn arb_set_ui(y: *mut arb_struct, x: ulong);
pub fn arb_set_d(y: *mut arb_struct, x: f64);
pub fn arb_set_fmpz(y: *mut arb_struct, x: *const fmpz);
#[link_name = "arb_set_fmpz_2exp__extern"]
pub fn arb_set_fmpz_2exp(x: *mut arb_struct, y: *const fmpz, exp: *const fmpz);
pub fn arb_set_round_fmpz_2exp(
y: *mut arb_struct,
x: *const fmpz,
exp: *const fmpz,
prec: slong,
);
pub fn arb_set_round_fmpz(y: *mut arb_struct, x: *const fmpz, prec: slong);
#[link_name = "arb_is_one__extern"]
pub fn arb_is_one(f: *const arb_struct) -> libc::c_int;
pub fn arb_one(f: *mut arb_struct);
pub fn arb_fprint(file: *mut FILE, x: *const arb_struct);
pub fn arb_fprintd(file: *mut FILE, x: *const arb_struct, digits: slong);
pub fn arb_fprintn(file: *mut FILE, x: *const arb_struct, digits: slong, flags: ulong);
pub fn arb_print(x: *const arb_struct);
pub fn arb_printd(x: *const arb_struct, digits: slong);
pub fn arb_printn(x: *const arb_struct, digits: slong, flags: ulong);
pub fn _arb_vec_printn(vec: arb_srcptr, len: slong, ndigits: slong, flags: ulong);
pub fn _arb_vec_printd(vec: arb_srcptr, len: slong, ndigits: slong);
pub fn arb_mul_2exp_si(y: *mut arb_struct, x: *const arb_struct, e: slong);
#[link_name = "arb_mul_2exp_fmpz__extern"]
pub fn arb_mul_2exp_fmpz(y: *mut arb_struct, x: *const arb_struct, e: *const fmpz);
#[link_name = "arb_is_int__extern"]
pub fn arb_is_int(x: *const arb_struct) -> libc::c_int;
#[link_name = "arb_is_int_2exp_si__extern"]
pub fn arb_is_int_2exp_si(x: *const arb_struct, e: slong) -> libc::c_int;
pub fn arb_contains_zero(x: *const arb_struct) -> libc::c_int;
pub fn arb_is_nonzero(x: *const arb_struct) -> libc::c_int;
pub fn arb_is_positive(x: *const arb_struct) -> libc::c_int;
pub fn arb_is_nonnegative(x: *const arb_struct) -> libc::c_int;
pub fn arb_is_negative(x: *const arb_struct) -> libc::c_int;
pub fn arb_is_nonpositive(x: *const arb_struct) -> libc::c_int;
pub fn arb_contains_negative(x: *const arb_struct) -> libc::c_int;
pub fn arb_contains_nonpositive(x: *const arb_struct) -> libc::c_int;
pub fn arb_contains_positive(x: *const arb_struct) -> libc::c_int;
pub fn arb_contains_nonnegative(x: *const arb_struct) -> libc::c_int;
pub fn arb_get_mag_lower(z: *mut mag_struct, x: *const arb_struct);
pub fn arb_get_mag_lower_nonnegative(z: *mut mag_struct, x: *const arb_struct);
#[link_name = "arb_get_mag__extern"]
pub fn arb_get_mag(z: *mut mag_struct, x: *const arb_struct);
#[link_name = "arb_get_mid_arb__extern"]
pub fn arb_get_mid_arb(z: *mut arb_struct, x: *const arb_struct);
#[link_name = "arb_get_rad_arb__extern"]
pub fn arb_get_rad_arb(z: *mut arb_struct, x: *const arb_struct);
pub fn arb_get_abs_ubound_arf(u: *mut arf_struct, x: *const arb_struct, prec: slong);
pub fn arb_get_abs_lbound_arf(u: *mut arf_struct, x: *const arb_struct, prec: slong);
pub fn arb_get_ubound_arf(u: *mut arf_struct, x: *const arb_struct, prec: slong);
pub fn arb_get_lbound_arf(u: *mut arf_struct, x: *const arb_struct, prec: slong);
pub fn arb_nonnegative_part(res: *mut arb_struct, x: *const arb_struct);
pub fn arb_rel_error_bits(x: *const arb_struct) -> slong;
#[link_name = "arb_rel_accuracy_bits__extern"]
pub fn arb_rel_accuracy_bits(x: *const arb_struct) -> slong;
pub fn arb_rel_one_accuracy_bits(x: *const arb_struct) -> slong;
#[link_name = "arb_bits__extern"]
pub fn arb_bits(x: *const arb_struct) -> slong;
pub fn arb_randtest_exact(
x: *mut arb_struct,
state: *mut flint_rand_struct,
prec: slong,
mag_bits: slong,
);
pub fn arb_randtest_wide(
x: *mut arb_struct,
state: *mut flint_rand_struct,
prec: slong,
mag_bits: slong,
);
pub fn arb_randtest_precise(
x: *mut arb_struct,
state: *mut flint_rand_struct,
prec: slong,
mag_bits: slong,
);
pub fn arb_randtest_positive(
x: *mut arb_struct,
state: *mut flint_rand_struct,
prec: slong,
mag_bits: slong,
);
pub fn arb_randtest(
x: *mut arb_struct,
state: *mut flint_rand_struct,
prec: slong,
mag_bits: slong,
);
pub fn arb_randtest_special(
x: *mut arb_struct,
state: *mut flint_rand_struct,
prec: slong,
mag_bits: slong,
);
pub fn arb_urandom(x: *mut arb_struct, state: *mut flint_rand_struct, prec: slong);
pub fn arb_add_error_arf(x: *mut arb_struct, err: *const arf_struct);
pub fn arb_add_error_2exp_si(x: *mut arb_struct, err: slong);
pub fn arb_add_error_2exp_fmpz(x: *mut arb_struct, err: *const fmpz);
pub fn arb_add_error(x: *mut arb_struct, error: *const arb_struct);
#[link_name = "arb_add_error_mag__extern"]
pub fn arb_add_error_mag(x: *mut arb_struct, err: *const mag_struct);
pub fn arb_contains_arf(x: *const arb_struct, y: *const arf_struct) -> libc::c_int;
pub fn arb_contains_fmpq(x: *const arb_struct, y: *const fmpq) -> libc::c_int;
pub fn arb_contains_fmpz(x: *const arb_struct, y: *const fmpz) -> libc::c_int;
pub fn arb_contains_si(x: *const arb_struct, y: slong) -> libc::c_int;
pub fn arb_contains_mpfr(x: *const arb_struct, y: *const __mpfr_struct) -> libc::c_int;
pub fn arb_overlaps(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_contains(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_contains_interior(x: *const arb_struct, y: *const arb_struct) -> libc::c_int;
pub fn arb_contains_int(x: *const arb_struct) -> libc::c_int;
pub fn arb_get_interval_fmpz_2exp(
a: *mut fmpz,
b: *mut fmpz,
exp: *mut fmpz,
x: *const arb_struct,
);
pub fn arb_get_unique_fmpz(z: *mut fmpz, x: *const arb_struct) -> libc::c_int;
pub fn arb_get_fmpz_mid_rad_10exp(
mid: *mut fmpz,
rad: *mut fmpz,
exp: *mut fmpz,
x: *const arb_struct,
n: slong,
);
pub fn arb_floor(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_ceil(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_nint(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_trunc(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_set_interval_arf(
x: *mut arb_struct,
a: *const arf_struct,
b: *const arf_struct,
prec: slong,
);
pub fn arb_set_interval_mpfr(
x: *mut arb_struct,
a: *const __mpfr_struct,
b: *const __mpfr_struct,
prec: slong,
);
pub fn arb_get_interval_arf(
a: *mut arf_struct,
b: *mut arf_struct,
x: *const arb_struct,
prec: slong,
);
pub fn arb_get_interval_mpfr(
a: *mut __mpfr_struct,
b: *mut __mpfr_struct,
x: *const arb_struct,
);
pub fn arb_set_interval_mag(
res: *mut arb_struct,
a: *const mag_struct,
b: *const mag_struct,
prec: slong,
);
pub fn arb_set_interval_neg_pos_mag(
res: *mut arb_struct,
a: *const mag_struct,
b: *const mag_struct,
prec: slong,
);
pub fn arb_union(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_intersection(
z: *mut arb_struct,
x: *const arb_struct,
y: *const arb_struct,
prec: slong,
) -> libc::c_int;
pub fn arb_get_rand_fmpq(
q: *mut fmpq,
state: *mut flint_rand_struct,
x: *const arb_struct,
bits: slong,
);
pub fn arb_min(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_max(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_minmax(
z1: *mut arb_struct,
z2: *mut arb_struct,
x: *const arb_struct,
y: *const arb_struct,
prec: slong,
);
pub fn arb_can_round_arf(x: *const arb_struct, prec: slong, rnd: arf_rnd_t) -> libc::c_int;
pub fn arb_can_round_mpfr(x: *const arb_struct, prec: slong, rnd: mpfr_rnd_t) -> libc::c_int;
pub fn arb_add(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_add_arf(z: *mut arb_struct, x: *const arb_struct, y: *const arf_struct, prec: slong);
pub fn arb_add_ui(z: *mut arb_struct, x: *const arb_struct, y: ulong, prec: slong);
pub fn arb_add_si(z: *mut arb_struct, x: *const arb_struct, y: slong, prec: slong);
pub fn arb_add_fmpz(z: *mut arb_struct, x: *const arb_struct, y: *const fmpz, prec: slong);
pub fn arb_add_fmpz_2exp(
z: *mut arb_struct,
x: *const arb_struct,
man: *const fmpz,
exp: *const fmpz,
prec: slong,
);
pub fn arb_sub(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_sub_arf(z: *mut arb_struct, x: *const arb_struct, y: *const arf_struct, prec: slong);
pub fn arb_sub_ui(z: *mut arb_struct, x: *const arb_struct, y: ulong, prec: slong);
pub fn arb_sub_si(z: *mut arb_struct, x: *const arb_struct, y: slong, prec: slong);
pub fn arb_sub_fmpz(z: *mut arb_struct, x: *const arb_struct, y: *const fmpz, prec: slong);
pub fn arb_mul(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_mul_arf(z: *mut arb_struct, x: *const arb_struct, y: *const arf_struct, prec: slong);
pub fn arb_mul_si(z: *mut arb_struct, x: *const arb_struct, y: slong, prec: slong);
pub fn arb_mul_ui(z: *mut arb_struct, x: *const arb_struct, y: ulong, prec: slong);
pub fn arb_mul_fmpz(z: *mut arb_struct, x: *const arb_struct, y: *const fmpz, prec: slong);
pub fn arb_addmul(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_addmul_arf(
z: *mut arb_struct,
x: *const arb_struct,
y: *const arf_struct,
prec: slong,
);
pub fn arb_addmul_si(z: *mut arb_struct, x: *const arb_struct, y: slong, prec: slong);
pub fn arb_addmul_ui(z: *mut arb_struct, x: *const arb_struct, y: ulong, prec: slong);
pub fn arb_addmul_fmpz(z: *mut arb_struct, x: *const arb_struct, y: *const fmpz, prec: slong);
pub fn arb_submul(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_submul_arf(
z: *mut arb_struct,
x: *const arb_struct,
y: *const arf_struct,
prec: slong,
);
pub fn arb_submul_si(z: *mut arb_struct, x: *const arb_struct, y: slong, prec: slong);
pub fn arb_submul_ui(z: *mut arb_struct, x: *const arb_struct, y: ulong, prec: slong);
pub fn arb_submul_fmpz(z: *mut arb_struct, x: *const arb_struct, y: *const fmpz, prec: slong);
pub fn arb_fma(
res: *mut arb_struct,
x: *const arb_struct,
y: *const arb_struct,
z: *const arb_struct,
prec: slong,
);
pub fn arb_fma_arf(
res: *mut arb_struct,
x: *const arb_struct,
y: *const arf_struct,
z: *const arb_struct,
prec: slong,
);
pub fn arb_fma_si(
res: *mut arb_struct,
x: *const arb_struct,
y: slong,
z: *const arb_struct,
prec: slong,
);
pub fn arb_fma_ui(
res: *mut arb_struct,
x: *const arb_struct,
y: ulong,
z: *const arb_struct,
prec: slong,
);
pub fn arb_fma_fmpz(
res: *mut arb_struct,
x: *const arb_struct,
y: *const fmpz,
z: *const arb_struct,
prec: slong,
);
pub fn arb_dot_simple(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: arb_srcptr,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_dot_precise(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: arb_srcptr,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_dot(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: arb_srcptr,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_approx_dot(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: arb_srcptr,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_dot_ui(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: *const ulong,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_dot_si(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: *const slong,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_dot_uiui(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: *const ulong,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_dot_siui(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: *const ulong,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_dot_fmpz(
res: *mut arb_struct,
initial: *const arb_struct,
subtract: libc::c_int,
x: arb_srcptr,
xstep: slong,
y: *const fmpz,
ystep: slong,
len: slong,
prec: slong,
);
pub fn arb_div(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_div_arf(z: *mut arb_struct, x: *const arb_struct, y: *const arf_struct, prec: slong);
pub fn arb_div_si(z: *mut arb_struct, x: *const arb_struct, y: slong, prec: slong);
pub fn arb_div_ui(z: *mut arb_struct, x: *const arb_struct, y: ulong, prec: slong);
pub fn arb_div_fmpz(z: *mut arb_struct, x: *const arb_struct, y: *const fmpz, prec: slong);
pub fn arb_fmpz_div_fmpz(z: *mut arb_struct, x: *const fmpz, y: *const fmpz, prec: slong);
pub fn arb_ui_div(z: *mut arb_struct, x: ulong, y: *const arb_struct, prec: slong);
pub fn arb_div_arf_newton(
res: *mut arb_struct,
x: *const arb_struct,
y: *const arf_struct,
prec: slong,
);
pub fn arb_div_newton(
res: *mut arb_struct,
x: *const arb_struct,
y: *const arb_struct,
prec: slong,
);
pub fn arb_fmpz_divapprox(res: *mut fmpz, x: *const fmpz, y: *const fmpz);
#[link_name = "arb_inv__extern"]
pub fn arb_inv(y: *mut arb_struct, x: *const arb_struct, prec: slong);
#[link_name = "arb_set_fmpq__extern"]
pub fn arb_set_fmpq(y: *mut arb_struct, x: *const fmpq, prec: slong);
pub fn arb_sqrt(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sqrt_arf(z: *mut arb_struct, x: *const arf_struct, prec: slong);
pub fn arb_sqrt_fmpz(z: *mut arb_struct, x: *const fmpz, prec: slong);
pub fn arb_sqrt_ui(z: *mut arb_struct, x: ulong, prec: slong);
pub fn arb_sqrtpos(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_hypot(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_rsqrt(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_rsqrt_ui(z: *mut arb_struct, x: ulong, prec: slong);
pub fn arb_sqrt1pm1(r: *mut arb_struct, z: *const arb_struct, prec: slong);
pub fn arb_rsqrt_arf_newton(res: *mut arb_struct, x: *const arf_struct, prec: slong);
pub fn arb_sqrt_arf_newton(res: *mut arb_struct, x: *const arf_struct, prec: slong);
pub fn arb_sqrt_newton(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_pow_fmpz_binexp(
y: *mut arb_struct,
b: *const arb_struct,
e: *const fmpz,
prec: slong,
);
pub fn arb_pow_fmpz(y: *mut arb_struct, b: *const arb_struct, e: *const fmpz, prec: slong);
pub fn arb_pow_ui(y: *mut arb_struct, b: *const arb_struct, e: ulong, prec: slong);
pub fn arb_ui_pow_ui(y: *mut arb_struct, b: ulong, e: ulong, prec: slong);
pub fn arb_si_pow_ui(y: *mut arb_struct, b: slong, e: ulong, prec: slong);
pub fn arb_pow_fmpq(y: *mut arb_struct, x: *const arb_struct, a: *const fmpq, prec: slong);
pub fn arb_div_2expm1_ui(z: *mut arb_struct, x: *const arb_struct, n: ulong, prec: slong);
pub fn arb_pow(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_root_ui(z: *mut arb_struct, x: *const arb_struct, k: ulong, prec: slong);
pub fn arb_root(z: *mut arb_struct, x: *const arb_struct, k: ulong, prec: slong);
pub fn _arb_log_precompute_reductions(
rel: *mut libc::c_short,
eps: *mut f64,
alpha: arb_srcptr,
n: slong,
max_rel: slong,
C: f64,
);
pub fn arb_log(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_log_arf(z: *mut arb_struct, x: *const arf_struct, prec: slong);
pub fn arb_log_ui(z: *mut arb_struct, x: ulong, prec: slong);
pub fn arb_log_fmpz(z: *mut arb_struct, x: *const fmpz, prec: slong);
pub fn arb_log1p(r: *mut arb_struct, z: *const arb_struct, prec: slong);
pub fn arb_log_base_ui(res: *mut arb_struct, x: *const arb_struct, b: ulong, prec: slong);
pub fn arb_log_hypot(
res: *mut arb_struct,
x: *const arb_struct,
y: *const arb_struct,
prec: slong,
);
pub fn arb_exp(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_expm1(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_exp_invexp(
z: *mut arb_struct,
w: *mut arb_struct,
x: *const arb_struct,
prec: slong,
);
pub fn arb_sin(s: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_cos(c: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sin_cos(s: *mut arb_struct, c: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sin_pi(s: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_cos_pi(c: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sin_cos_pi(
s: *mut arb_struct,
c: *mut arb_struct,
x: *const arb_struct,
prec: slong,
);
pub fn arb_tan(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_cot(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_tan_pi(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_cot_pi(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn _arb_sin_pi_fmpq_algebraic(s: *mut arb_struct, p: ulong, q: ulong, prec: slong);
pub fn _arb_cos_pi_fmpq_algebraic(c: *mut arb_struct, p: ulong, q: ulong, prec: slong);
pub fn _arb_sin_cos_pi_fmpq_algebraic(
s: *mut arb_struct,
c: *mut arb_struct,
p: ulong,
q: ulong,
prec: slong,
);
pub fn arb_sin_cos_pi_fmpq(s: *mut arb_struct, c: *mut arb_struct, x: *const fmpq, prec: slong);
pub fn arb_sin_pi_fmpq(s: *mut arb_struct, x: *const fmpq, prec: slong);
pub fn arb_cos_pi_fmpq(c: *mut arb_struct, x: *const fmpq, prec: slong);
pub fn arb_sinc(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sinc_pi(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sinh(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_cosh(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sinh_cosh(s: *mut arb_struct, c: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_tanh(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_coth(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_atan_arf(z: *mut arb_struct, x: *const arf_struct, prec: slong);
pub fn arb_atan(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_atan2(z: *mut arb_struct, b: *const arb_struct, a: *const arb_struct, prec: slong);
pub fn arb_asin(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_acos(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_atanh(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_asinh(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_acosh(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sec(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_csc(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_csc_pi(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_sech(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_csch(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_fac_ui(z: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_doublefac_ui(z: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_bin_ui(z: *mut arb_struct, n: *const arb_struct, k: ulong, prec: slong);
pub fn arb_bin_uiui(z: *mut arb_struct, n: ulong, k: ulong, prec: slong);
pub fn arb_fib_fmpz(z: *mut arb_struct, n: *const fmpz, prec: slong);
pub fn arb_fib_ui(z: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_const_pi(z: *mut arb_struct, prec: slong);
pub fn arb_const_sqrt_pi(z: *mut arb_struct, prec: slong);
pub fn arb_const_log_sqrt2pi(z: *mut arb_struct, prec: slong);
pub fn arb_const_log2(z: *mut arb_struct, prec: slong);
pub fn arb_const_log10(z: *mut arb_struct, prec: slong);
pub fn arb_const_euler(z: *mut arb_struct, prec: slong);
pub fn arb_const_catalan(z: *mut arb_struct, prec: slong);
pub fn arb_const_e(z: *mut arb_struct, prec: slong);
pub fn arb_const_khinchin(z: *mut arb_struct, prec: slong);
pub fn arb_const_glaisher(z: *mut arb_struct, prec: slong);
pub fn arb_const_reciprocal_fibonacci(res: *mut arb_struct, prec: slong);
pub fn arb_agm(z: *mut arb_struct, x: *const arb_struct, y: *const arb_struct, prec: slong);
pub fn arb_lgamma(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_rgamma(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_gamma(z: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_gamma_fmpq(z: *mut arb_struct, x: *const fmpq, prec: slong);
pub fn arb_gamma_fmpz(z: *mut arb_struct, x: *const fmpz, prec: slong);
pub fn arb_digamma(y: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_zeta(z: *mut arb_struct, s: *const arb_struct, prec: slong);
pub fn arb_hurwitz_zeta(
z: *mut arb_struct,
s: *const arb_struct,
a: *const arb_struct,
prec: slong,
);
pub fn arb_rising_ui(z: *mut arb_struct, x: *const arb_struct, n: ulong, prec: slong);
pub fn arb_rising_fmpq_ui(y: *mut arb_struct, x: *const fmpq, n: ulong, prec: slong);
pub fn arb_rising(z: *mut arb_struct, x: *const arb_struct, n: *const arb_struct, prec: slong);
pub fn arb_rising2_ui(
u: *mut arb_struct,
v: *mut arb_struct,
x: *const arb_struct,
n: ulong,
prec: slong,
);
pub fn arb_log_ui_from_prev(
s: *mut arb_struct,
k: ulong,
log_prev: *mut arb_struct,
prev: ulong,
prec: slong,
);
pub fn arb_const_apery(s: *mut arb_struct, prec: slong);
pub fn arb_zeta_ui_asymp(x: *mut arb_struct, s: ulong, prec: slong);
pub fn arb_zeta_ui_borwein_bsplit(x: *mut arb_struct, s: ulong, prec: slong);
pub fn arb_zeta_ui_euler_product(z: *mut arb_struct, s: ulong, prec: slong);
pub fn arb_zeta_ui_bernoulli(x: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_zeta_ui_vec_borwein(z: arb_ptr, start: ulong, num: slong, step: ulong, prec: slong);
pub fn arb_zeta_ui(x: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_zeta_ui_vec_even(x: arb_ptr, start: ulong, num: slong, prec: slong);
pub fn arb_zeta_ui_vec_odd(x: arb_ptr, start: ulong, num: slong, prec: slong);
pub fn arb_zeta_ui_vec(x: arb_ptr, start: ulong, num: slong, prec: slong);
pub fn arb_bernoulli_ui(b: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_bernoulli_ui_zeta(b: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_bernoulli_fmpz(b: *mut arb_struct, n: *const fmpz, prec: slong);
pub fn arb_bernoulli_poly_ui(res: *mut arb_struct, n: ulong, x: *const arb_struct, prec: slong);
pub fn arb_polylog(w: *mut arb_struct, s: *const arb_struct, z: *const arb_struct, prec: slong);
pub fn arb_polylog_si(w: *mut arb_struct, s: slong, z: *const arb_struct, prec: slong);
pub fn arb_chebyshev_t_ui(a: *mut arb_struct, n: ulong, x: *const arb_struct, prec: slong);
pub fn arb_chebyshev_t2_ui(
a: *mut arb_struct,
b: *mut arb_struct,
n: ulong,
x: *const arb_struct,
prec: slong,
);
pub fn arb_chebyshev_u_ui(a: *mut arb_struct, n: ulong, x: *const arb_struct, prec: slong);
pub fn arb_chebyshev_u2_ui(
a: *mut arb_struct,
b: *mut arb_struct,
n: ulong,
x: *const arb_struct,
prec: slong,
);
pub fn arb_power_sum_vec(
res: arb_ptr,
a: *const arb_struct,
b: *const arb_struct,
len: slong,
prec: slong,
);
pub fn arb_bell_sum_taylor(
res: *mut arb_struct,
n: *const fmpz,
a: *const fmpz,
b: *const fmpz,
mmag: *const fmpz,
prec: slong,
);
pub fn arb_bell_sum_bsplit(
res: *mut arb_struct,
n: *const fmpz,
a: *const fmpz,
b: *const fmpz,
mmag: *const fmpz,
prec: slong,
);
pub fn arb_bell_fmpz(res: *mut arb_struct, n: *const fmpz, prec: slong);
pub fn arb_bell_ui(res: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_euler_number_fmpz(res: *mut arb_struct, n: *const fmpz, prec: slong);
pub fn arb_euler_number_ui(res: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_fmpz_euler_number_ui_multi_mod(res: *mut fmpz, n: ulong, alpha: f64);
pub fn arb_fmpz_euler_number_ui(res: *mut fmpz, n: ulong);
pub fn arb_partitions_fmpz(res: *mut arb_struct, n: *const fmpz, prec: slong);
pub fn arb_partitions_ui(res: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_primorial_nth_ui(res: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_primorial_ui(res: *mut arb_struct, n: ulong, prec: slong);
pub fn arb_lambertw(
res: *mut arb_struct,
x: *const arb_struct,
flags: libc::c_int,
prec: slong,
);
#[link_name = "arb_sqr__extern"]
pub fn arb_sqr(res: *mut arb_struct, val: *const arb_struct, prec: slong);
pub fn _arb_vec_entry_ptr(vec: arb_ptr, i: slong) -> arb_ptr;
pub fn _arb_vec_zero(A: arb_ptr, n: slong);
pub fn _arb_vec_indeterminate(vec: arb_ptr, len: slong);
pub fn _arb_vec_is_zero(vec: arb_srcptr, len: slong) -> libc::c_int;
pub fn _arb_vec_is_finite(x: arb_srcptr, len: slong) -> libc::c_int;
pub fn _arb_vec_equal(vec1: arb_srcptr, vec2: arb_srcptr, len: slong) -> libc::c_int;
pub fn _arb_vec_overlaps(vec1: arb_srcptr, vec2: arb_srcptr, len: slong) -> libc::c_int;
pub fn _arb_vec_contains(vec1: arb_srcptr, vec2: arb_srcptr, len: slong) -> libc::c_int;
pub fn _arb_vec_set(res: arb_ptr, vec: arb_srcptr, len: slong);
pub fn _arb_vec_swap(res: arb_ptr, vec: arb_ptr, len: slong);
pub fn _arb_vec_neg(B: arb_ptr, A: arb_srcptr, n: slong);
pub fn _arb_vec_set_round(res: arb_ptr, vec: arb_srcptr, len: slong, prec: slong);
pub fn _arb_vec_sub(C: arb_ptr, A: arb_srcptr, B: arb_srcptr, n: slong, prec: slong);
pub fn _arb_vec_add(C: arb_ptr, A: arb_srcptr, B: arb_srcptr, n: slong, prec: slong);
pub fn _arb_vec_scalar_mul(
res: arb_ptr,
vec: arb_srcptr,
len: slong,
c: *const arb_struct,
prec: slong,
);
pub fn _arb_vec_scalar_mul_fmpz(
res: arb_ptr,
vec: arb_srcptr,
len: slong,
c: *const fmpz,
prec: slong,
);
pub fn _arb_vec_scalar_mul_2exp_si(res: arb_ptr, src: arb_srcptr, len: slong, c: slong);
pub fn _arb_vec_scalar_div(
res: arb_ptr,
vec: arb_srcptr,
len: slong,
c: *const arb_struct,
prec: slong,
);
pub fn _arb_vec_scalar_addmul(
res: arb_ptr,
vec: arb_srcptr,
len: slong,
c: *const arb_struct,
prec: slong,
);
pub fn _arb_vec_get_mag(bound: *mut mag_struct, vec: arb_srcptr, len: slong);
pub fn _arb_vec_bits(x: arb_srcptr, len: slong) -> slong;
pub fn _arb_vec_set_powers(xs: arb_ptr, x: *const arb_struct, len: slong, prec: slong);
pub fn _arb_vec_add_error_arf_vec(res: arb_ptr, err: arf_srcptr, len: slong);
pub fn _arb_vec_add_error_mag_vec(res: arb_ptr, err: mag_srcptr, len: slong);
pub fn _arb_vec_trim(res: arb_ptr, vec: arb_srcptr, len: slong);
pub fn _arb_vec_get_unique_fmpz_vec(res: *mut fmpz, vec: arb_srcptr, len: slong)
-> libc::c_int;
pub static mut arb_atan_tab1: [[ulong; 8usize]; 256usize];
pub static mut arb_atan_tab21: [[ulong; 72usize]; 32usize];
pub static mut arb_atan_tab22: [[ulong; 72usize]; 32usize];
pub static arb_atan_pi2_minus_one: [ulong; 72usize];
pub fn _arb_atan_taylor_naive(
y: nn_ptr,
error: *mut ulong,
x: nn_srcptr,
xn: slong,
N: ulong,
alternating: libc::c_int,
);
pub fn _arb_atan_taylor_rs(
y: nn_ptr,
error: *mut ulong,
x: nn_srcptr,
xn: slong,
N: ulong,
alternating: libc::c_int,
);
pub fn arb_atan_newton(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_atan_arf_newton(res: *mut arb_struct, x: *const arf_struct, prec: slong);
pub static mut arb_log_tab11: [[ulong; 8usize]; 128usize];
pub static mut arb_log_tab12: [[ulong; 8usize]; 128usize];
pub static mut arb_log_tab21: [[ulong; 72usize]; 32usize];
pub static mut arb_log_tab22: [[ulong; 72usize]; 32usize];
pub static arb_log_log2_tab: nn_srcptr;
pub fn arb_log_newton(res: *mut arb_struct, x: *const arb_struct, prec: slong);
pub fn arb_log_arf_newton(res: *mut arb_struct, x: *const arf_struct, prec: slong);
pub static mut arb_log_p_tab: [[ulong; 72usize]; 13usize];
pub fn arb_log_primes_vec_bsplit(res: arb_ptr, n: slong, prec: slong);
pub fn _arb_log_p_ensure_cached(prec: slong);
pub fn _arb_log_p_cache_vec() -> arb_srcptr;
pub static mut arb_exp_tab1: [[ulong; 8usize]; 178usize];
pub static mut arb_exp_tab21: [[ulong; 72usize]; 23usize];
pub static mut arb_exp_tab22: [[ulong; 72usize]; 32usize];
pub fn _arb_exp_taylor_naive(y: nn_ptr, error: *mut ulong, x: nn_srcptr, xn: slong, N: ulong);
pub fn _arb_exp_taylor_rs(y: nn_ptr, error: *mut ulong, x: nn_srcptr, xn: slong, N: ulong);
pub fn arb_exp_arf_bb(
z: *mut arb_struct,
x: *const arf_struct,
prec: slong,
minus_one: libc::c_int,
);
pub fn arb_exp_arf_rs_generic(
res: *mut arb_struct,
x: *const arf_struct,
prec: slong,
minus_one: libc::c_int,
);
pub fn _arb_get_mpn_fixed_mod_log2(
w: nn_ptr,
q: *mut fmpz,
error: *mut ulong,
x: *const arf_struct,
wn: slong,
) -> libc::c_int;
pub fn _arb_exp_taylor_bound(mag: slong, prec: slong) -> slong;
pub fn _arb_exp_sum_bs_powtab(
T: *mut fmpz,
Q: *mut fmpz,
Qexp: *mut flint_bitcnt_t,
x: *const fmpz,
r: flint_bitcnt_t,
N: slong,
);
pub fn _arb_exp_sum_bs_simple(
T: *mut fmpz,
Q: *mut fmpz,
Qexp: *mut flint_bitcnt_t,
x: *const fmpz,
r: flint_bitcnt_t,
N: slong,
);
pub fn arb_exp_arf_log_reduction(
res: *mut arb_struct,
x: *const arf_struct,
prec: slong,
minus_one: libc::c_int,
);
pub fn arb_exp_arf_generic(
z: *mut arb_struct,
x: *const arf_struct,
prec: slong,
minus_one: libc::c_int,
);
pub fn arb_exp_arf(
z: *mut arb_struct,
x: *const arf_struct,
prec: slong,
minus_one: libc::c_int,
maglim: slong,
);
pub static mut arb_sin_cos_tab1: [[ulong; 8usize]; 406usize];
pub static mut arb_sin_cos_tab21: [[ulong; 72usize]; 52usize];
pub static mut arb_sin_cos_tab22: [[ulong; 72usize]; 64usize];
pub static arb_pi4_tab: [ulong; 72usize];
pub fn _arb_sin_cos_taylor_naive(
ysin: nn_ptr,
ycos: nn_ptr,
error: *mut ulong,
x: nn_srcptr,
xn: slong,
N: ulong,
);
pub fn _arb_sin_cos_taylor_rs(
ysin: nn_ptr,
ycos: nn_ptr,
error: *mut ulong,
x: nn_srcptr,
xn: slong,
N: ulong,
sinonly: libc::c_int,
alternating: libc::c_int,
);
pub fn _arb_get_mpn_fixed_mod_pi4(
w: nn_ptr,
q: *mut fmpz,
octant: *mut libc::c_int,
error: *mut ulong,
x: *const arf_struct,
wn: slong,
) -> libc::c_int;
pub fn arb_sin_cos_arf_bb(
zsin: *mut arb_struct,
zcos: *mut arb_struct,
x: *const arf_struct,
prec: slong,
);
pub fn arb_sin_cos_arf_rs_generic(
res_sin: *mut arb_struct,
res_cos: *mut arb_struct,
x: *const arf_struct,
prec: slong,
);
pub fn arb_sin_cos_arf_generic(
res_sin: *mut arb_struct,
res_cos: *mut arb_struct,
x: *const arf_struct,
prec: slong,
);
pub fn _arb_sin_cos_wide(
s: *mut arb_struct,
c: *mut arb_struct,
x: *const arf_struct,
r: *const mag_struct,
prec: slong,
);
pub fn arb_sin_cos_wide(
s: *mut arb_struct,
c: *mut arb_struct,
x: *const arb_struct,
prec: slong,
);
pub fn _arb_sin_cos_generic(
s: *mut arb_struct,
c: *mut arb_struct,
x: *const arf_struct,
xrad: *const mag_struct,
prec: slong,
);
pub fn arb_sin_cos_generic(
s: *mut arb_struct,
c: *mut arb_struct,
x: *const arb_struct,
prec: slong,
);
pub fn arb_atan_gauss_primes_vec_bsplit(res: arb_ptr, n: slong, prec: slong);
pub static mut arb_atan_gauss_tab: [[ulong; 72usize]; 13usize];
pub fn _arb_atan_gauss_p_ensure_cached(prec: slong);
pub fn _arb_atan_gauss_p_cache_vec() -> arb_srcptr;
pub fn arb_sin_cos_arf_atan_reduction(
res1: *mut arb_struct,
res2: *mut arb_struct,
x: *const arf_struct,
prec: slong,
);
#[link_name = "_arb_mpn_leading_zeros__extern"]
pub fn _arb_mpn_leading_zeros(d: nn_srcptr, n: slong) -> flint_bitcnt_t;
pub fn _arb_atan_sum_bs_simple(
T: *mut fmpz,
Q: *mut fmpz,
Qexp: *mut flint_bitcnt_t,
x: *const fmpz,
r: flint_bitcnt_t,
N: slong,
);
pub fn _arb_atan_sum_bs_powtab(
T: *mut fmpz,
Q: *mut fmpz,
Qexp: *mut flint_bitcnt_t,
x: *const fmpz,
r: flint_bitcnt_t,
N: slong,
);
pub fn arb_atan_arf_bb(z: *mut arb_struct, x: *const arf_struct, prec: slong);
pub fn arb_atan_frac_bsplit(
s: *mut arb_struct,
p: *const fmpz,
q: *const fmpz,
hyperbolic: libc::c_int,
prec: slong,
);
#[link_name = "arb_allocated_bytes__extern"]
pub fn arb_allocated_bytes(x: *const arb_struct) -> slong;
pub fn _arb_vec_allocated_bytes(vec: arb_srcptr, len: slong) -> slong;
pub fn _arb_vec_estimate_allocated_bytes(len: slong, prec: slong) -> f64;
pub fn arb_load_str(res: *mut arb_struct, data: *const libc::c_char) -> libc::c_int;
pub fn arb_dump_str(x: *const arb_struct) -> *mut libc::c_char;
pub fn arb_load_file(res: *mut arb_struct, stream: *mut FILE) -> libc::c_int;
pub fn arb_dump_file(stream: *mut FILE, x: *const arb_struct) -> libc::c_int;
}