\log \left(\frac{1}{x} + \frac{\sqrt{1 - x \cdot x}}{x}\right)\left(\left(\log \left(\sqrt{1} + 1\right) - \frac{1}{2} \cdot \frac{{x}^{2}}{\sqrt{1} \cdot \left(\sqrt{1} + 1\right)}\right) - \left(\frac{1}{8} \cdot \frac{{x}^{4}}{{\left(\sqrt{1}\right)}^{3} \cdot \left(\sqrt{1} + 1\right)} + \log x\right)\right) - \frac{\frac{1}{8}}{{\left(\sqrt{1} + 1\right)}^{2}} \cdot \frac{{x}^{4}}{1}double f(double x) {
double r46005 = 1.0;
double r46006 = x;
double r46007 = r46005 / r46006;
double r46008 = r46006 * r46006;
double r46009 = r46005 - r46008;
double r46010 = sqrt(r46009);
double r46011 = r46010 / r46006;
double r46012 = r46007 + r46011;
double r46013 = log(r46012);
return r46013;
}
double f(double x) {
double r46014 = 1.0;
double r46015 = sqrt(r46014);
double r46016 = r46015 + r46014;
double r46017 = log(r46016);
double r46018 = 0.5;
double r46019 = x;
double r46020 = 2.0;
double r46021 = pow(r46019, r46020);
double r46022 = r46015 * r46016;
double r46023 = r46021 / r46022;
double r46024 = r46018 * r46023;
double r46025 = r46017 - r46024;
double r46026 = 0.125;
double r46027 = 4.0;
double r46028 = pow(r46019, r46027);
double r46029 = 3.0;
double r46030 = pow(r46015, r46029);
double r46031 = r46030 * r46016;
double r46032 = r46028 / r46031;
double r46033 = r46026 * r46032;
double r46034 = log(r46019);
double r46035 = r46033 + r46034;
double r46036 = r46025 - r46035;
double r46037 = pow(r46016, r46020);
double r46038 = r46026 / r46037;
double r46039 = r46028 / r46014;
double r46040 = r46038 * r46039;
double r46041 = r46036 - r46040;
return r46041;
}



Bits error versus x
Results
Initial program 0.0
Taylor expanded around 0 0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2020021
(FPCore (x)
:name "Hyperbolic arc-(co)secant"
:precision binary64
(log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))))