#[inline]
pub fn sqrt(x: f64) -> f64 {
libm::sqrt(x)
}
#[inline]
pub fn ln(x: f64) -> f64 {
libm::log(x)
}
#[inline]
pub fn log10(x: f64) -> f64 {
libm::log10(x)
}
#[inline]
pub fn cos(x: f64) -> f64 {
libm::cos(x)
}
#[inline]
pub fn exp(x: f64) -> f64 {
libm::exp(x)
}
#[inline]
pub fn ceil(x: f64) -> f64 {
libm::ceil(x)
}
#[inline]
pub fn pow(x: f64, y: f64) -> f64 {
libm::pow(x, y)
}
#[inline]
pub fn cbrt(x: f64) -> f64 {
libm::cbrt(x)
}
#[inline]
pub fn floor(x: f64) -> f64 {
libm::floor(x)
}
#[inline]
pub fn round(x: f64) -> f64 {
libm::round(x)
}
#[inline]
pub fn sq(x: f64) -> f64 {
x * x
}
#[inline]
pub fn normal_cdf(x: f64) -> f64 {
0.5 * (1.0 + libm::erf(x * core::f64::consts::FRAC_1_SQRT_2))
}
#[inline]
pub fn abs(x: f64) -> f64 {
libm::fabs(x)
}