\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 r69330 = x;
double r69331 = r69330 * r69330;
double r69332 = 1.0;
double r69333 = r69331 - r69332;
double r69334 = sqrt(r69333);
double r69335 = r69330 + r69334;
double r69336 = log(r69335);
return r69336;
}
double f(double x) {
double r69337 = x;
double r69338 = 1.0;
double r69339 = sqrt(r69338);
double r69340 = r69337 - r69339;
double r69341 = sqrt(r69340);
double r69342 = r69337 + r69339;
double r69343 = sqrt(r69342);
double r69344 = r69341 * r69343;
double r69345 = r69337 + r69344;
double r69346 = log(r69345);
return r69346;
}



Bits error versus x
Results
Initial program 32.3
rmApplied add-sqr-sqrt32.3
Applied difference-of-squares32.3
Applied sqrt-prod0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019196
(FPCore (x)
:name "Hyperbolic arc-cosine"
(log (+ x (sqrt (- (* x x) 1.0)))))