\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(x + \sqrt{x + \sqrt{1}} \cdot \sqrt{x - \sqrt{1}}\right)double f(double x) {
double r49870 = x;
double r49871 = r49870 * r49870;
double r49872 = 1.0;
double r49873 = r49871 - r49872;
double r49874 = sqrt(r49873);
double r49875 = r49870 + r49874;
double r49876 = log(r49875);
return r49876;
}
double f(double x) {
double r49877 = x;
double r49878 = 1.0;
double r49879 = sqrt(r49878);
double r49880 = r49877 + r49879;
double r49881 = sqrt(r49880);
double r49882 = r49877 - r49879;
double r49883 = sqrt(r49882);
double r49884 = r49881 * r49883;
double r49885 = r49877 + r49884;
double r49886 = log(r49885);
return r49886;
}



Bits error versus x
Results
Initial program 32.1
rmApplied add-sqr-sqrt32.1
Applied difference-of-squares32.1
Applied sqrt-prod0.1
Final simplification0.1
herbie shell --seed 2019208
(FPCore (x)
:name "Hyperbolic arc-cosine"
:precision binary64
(log (+ x (sqrt (- (* x x) 1)))))