\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 r41749 = x;
double r41750 = r41749 * r41749;
double r41751 = 1.0;
double r41752 = r41750 - r41751;
double r41753 = sqrt(r41752);
double r41754 = r41749 + r41753;
double r41755 = log(r41754);
return r41755;
}
double f(double x) {
double r41756 = x;
double r41757 = 1.0;
double r41758 = sqrt(r41757);
double r41759 = r41756 + r41758;
double r41760 = sqrt(r41759);
double r41761 = r41756 - r41758;
double r41762 = sqrt(r41761);
double r41763 = r41760 * r41762;
double r41764 = r41756 + r41763;
double r41765 = log(r41764);
return r41765;
}



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