\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(x + \left(\left(x - \frac{\frac{1}{2}}{x}\right) - \frac{\frac{\frac{1}{8}}{x}}{x \cdot x}\right)\right)double f(double x) {
double r1108398 = x;
double r1108399 = r1108398 * r1108398;
double r1108400 = 1.0;
double r1108401 = r1108399 - r1108400;
double r1108402 = sqrt(r1108401);
double r1108403 = r1108398 + r1108402;
double r1108404 = log(r1108403);
return r1108404;
}
double f(double x) {
double r1108405 = x;
double r1108406 = 0.5;
double r1108407 = r1108406 / r1108405;
double r1108408 = r1108405 - r1108407;
double r1108409 = 0.125;
double r1108410 = r1108409 / r1108405;
double r1108411 = r1108405 * r1108405;
double r1108412 = r1108410 / r1108411;
double r1108413 = r1108408 - r1108412;
double r1108414 = r1108405 + r1108413;
double r1108415 = log(r1108414);
return r1108415;
}



Bits error versus x
Results
Initial program 31.0
Simplified31.0
Taylor expanded around inf 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019156 +o rules:numerics
(FPCore (x)
:name "Hyperbolic arc-cosine"
(log (+ x (sqrt (- (* x x) 1)))))