\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(x + \left(\sqrt{x + \sqrt{1}} \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right) \cdot \sqrt{\sqrt{x - \sqrt{1}}}\right)double f(double x) {
double r85764 = x;
double r85765 = r85764 * r85764;
double r85766 = 1.0;
double r85767 = r85765 - r85766;
double r85768 = sqrt(r85767);
double r85769 = r85764 + r85768;
double r85770 = log(r85769);
return r85770;
}
double f(double x) {
double r85771 = x;
double r85772 = 1.0;
double r85773 = sqrt(r85772);
double r85774 = r85771 + r85773;
double r85775 = sqrt(r85774);
double r85776 = r85771 - r85773;
double r85777 = sqrt(r85776);
double r85778 = sqrt(r85777);
double r85779 = r85775 * r85778;
double r85780 = r85779 * r85778;
double r85781 = r85771 + r85780;
double r85782 = log(r85781);
return r85782;
}



Bits error versus x
Results
Initial program 32.4
rmApplied add-sqr-sqrt32.4
Applied difference-of-squares32.4
Applied sqrt-prod0.1
rmApplied add-sqr-sqrt0.1
Applied sqrt-prod0.1
Applied associate-*r*0.1
Final simplification0.1
herbie shell --seed 2020060 +o rules:numerics
(FPCore (x)
:name "Hyperbolic arc-cosine"
:precision binary64
(log (+ x (sqrt (- (* x x) 1)))))