\log \left(\frac{1}{x} + \frac{\sqrt{1 - x \cdot x}}{x}\right)\log \left(\frac{1}{x} + \sqrt{1 - x \cdot x} \cdot \frac{1}{x}\right)double f(double x) {
double r29303 = 1.0;
double r29304 = x;
double r29305 = r29303 / r29304;
double r29306 = r29304 * r29304;
double r29307 = r29303 - r29306;
double r29308 = sqrt(r29307);
double r29309 = r29308 / r29304;
double r29310 = r29305 + r29309;
double r29311 = log(r29310);
return r29311;
}
double f(double x) {
double r29312 = 1.0;
double r29313 = x;
double r29314 = r29312 / r29313;
double r29315 = r29313 * r29313;
double r29316 = r29312 - r29315;
double r29317 = sqrt(r29316);
double r29318 = 1.0;
double r29319 = r29318 / r29313;
double r29320 = r29317 * r29319;
double r29321 = r29314 + r29320;
double r29322 = log(r29321);
return r29322;
}



Bits error versus x
Results
Initial program 0.1
rmApplied div-inv0.1
Final simplification0.1
herbie shell --seed 2019303
(FPCore (x)
:name "Hyperbolic arc-(co)secant"
:precision binary64
(log (+ (/ 1 x) (/ (sqrt (- 1 (* x x))) x))))