\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(x + \sqrt{\sqrt{x + \sqrt{1}}} \cdot \left(\sqrt{\sqrt{x + \sqrt{1}}} \cdot \sqrt{x - \sqrt{1}}\right)\right)double f(double x) {
double r43876 = x;
double r43877 = r43876 * r43876;
double r43878 = 1.0;
double r43879 = r43877 - r43878;
double r43880 = sqrt(r43879);
double r43881 = r43876 + r43880;
double r43882 = log(r43881);
return r43882;
}
double f(double x) {
double r43883 = x;
double r43884 = 1.0;
double r43885 = sqrt(r43884);
double r43886 = r43883 + r43885;
double r43887 = sqrt(r43886);
double r43888 = sqrt(r43887);
double r43889 = r43883 - r43885;
double r43890 = sqrt(r43889);
double r43891 = r43888 * r43890;
double r43892 = r43888 * r43891;
double r43893 = r43883 + r43892;
double r43894 = log(r43893);
return r43894;
}



Bits error versus x
Results
Initial program 32.1
rmApplied add-sqr-sqrt32.1
Applied difference-of-squares32.1
Applied sqrt-prod0.0
rmApplied add-sqr-sqrt0.0
Applied sqrt-prod0.1
Applied associate-*l*0.1
Final simplification0.1
herbie shell --seed 2019195 +o rules:numerics
(FPCore (x)
:name "Hyperbolic arc-cosine"
(log (+ x (sqrt (- (* x x) 1.0)))))