double f(double x) {
double r7424868 = x;
double r7424869 = r7424868 * r7424868;
double r7424870 = 1.0;
double r7424871 = r7424869 - r7424870;
double r7424872 = sqrt(r7424871);
double r7424873 = r7424868 + r7424872;
double r7424874 = log(r7424873);
return r7424874;
}
double f(double x) {
double r7424875 = x;
double r7424876 = 1.0;
double r7424877 = r7424876 + r7424875;
double r7424878 = sqrt(r7424877);
double r7424879 = r7424875 - r7424876;
double r7424880 = sqrt(r7424879);
double r7424881 = r7424878 * r7424880;
double r7424882 = r7424875 + r7424881;
double r7424883 = log(r7424882);
return r7424883;
}
\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(x + \sqrt{1 + x} \cdot \sqrt{x - 1}\right)


Bits error versus x
Initial program 30.5
rmApplied *-un-lft-identity30.5
Applied difference-of-squares30.5
Applied sqrt-prod0.1
Final simplification0.1
herbie shell --seed 2019101
(FPCore (x)
:name "Hyperbolic arc-cosine"
(log (+ x (sqrt (- (* x x) 1)))))