\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 r72856 = x;
double r72857 = r72856 * r72856;
double r72858 = 1.0;
double r72859 = r72857 - r72858;
double r72860 = sqrt(r72859);
double r72861 = r72856 + r72860;
double r72862 = log(r72861);
return r72862;
}
double f(double x) {
double r72863 = x;
double r72864 = 1.0;
double r72865 = sqrt(r72864);
double r72866 = r72863 + r72865;
double r72867 = sqrt(r72866);
double r72868 = r72863 - r72865;
double r72869 = sqrt(r72868);
double r72870 = r72867 * r72869;
double r72871 = r72863 + r72870;
double r72872 = log(r72871);
return r72872;
}



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