\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(x + \left(\sqrt{x + \sqrt{1}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right) \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)double f(double x) {
double r65328 = x;
double r65329 = r65328 * r65328;
double r65330 = 1.0;
double r65331 = r65329 - r65330;
double r65332 = sqrt(r65331);
double r65333 = r65328 + r65332;
double r65334 = log(r65333);
return r65334;
}
double f(double x) {
double r65335 = x;
double r65336 = 1.0;
double r65337 = sqrt(r65336);
double r65338 = r65335 + r65337;
double r65339 = sqrt(r65338);
double r65340 = r65335 - r65337;
double r65341 = sqrt(r65340);
double r65342 = sqrt(r65341);
double r65343 = r65339 * r65342;
double r65344 = r65343 * r65342;
double r65345 = r65335 + r65344;
double r65346 = log(r65345);
return r65346;
}



Bits error versus x
Results
Initial program 32.4
rmApplied add-sqr-sqrt32.4
Applied difference-of-squares32.4
Applied sqrt-prod0.1
rmApplied add-sqr-sqrt0.1
Applied sqrt-prod0.1
Applied associate-*r*0.1
Final simplification0.1
herbie shell --seed 2020060 +o rules:numerics
(FPCore (x)
:name "Hyperbolic arc-cosine"
:precision binary64
(log (+ x (sqrt (- (* x x) 1)))))