double f(double x) {
double r11648401 = x;
double r11648402 = r11648401 * r11648401;
double r11648403 = 1.0;
double r11648404 = r11648402 - r11648403;
double r11648405 = sqrt(r11648404);
double r11648406 = r11648401 + r11648405;
double r11648407 = log(r11648406);
return r11648407;
}
double f(double x) {
double r11648408 = -0.125;
double r11648409 = x;
double r11648410 = r11648408 / r11648409;
double r11648411 = r11648409 * r11648409;
double r11648412 = r11648410 / r11648411;
double r11648413 = 2.0;
double r11648414 = -0.5;
double r11648415 = r11648414 / r11648409;
double r11648416 = fma(r11648413, r11648409, r11648415);
double r11648417 = r11648412 + r11648416;
double r11648418 = log(r11648417);
return r11648418;
}
\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(\frac{\frac{\frac{-1}{8}}{x}}{x \cdot x} + (2 \cdot x + \left(\frac{\frac{-1}{2}}{x}\right))_*\right)


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