\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 r48107 = x;
double r48108 = r48107 * r48107;
double r48109 = 1.0;
double r48110 = r48108 - r48109;
double r48111 = sqrt(r48110);
double r48112 = r48107 + r48111;
double r48113 = log(r48112);
return r48113;
}
double f(double x) {
double r48114 = x;
double r48115 = 1.0;
double r48116 = sqrt(r48115);
double r48117 = r48114 + r48116;
double r48118 = sqrt(r48117);
double r48119 = r48114 - r48116;
double r48120 = sqrt(r48119);
double r48121 = r48118 * r48120;
double r48122 = r48114 + r48121;
double r48123 = log(r48122);
return r48123;
}



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