\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(x + \sqrt{\sqrt{x + \sqrt{1}} \cdot \sqrt{x - \sqrt{1}}} \cdot \sqrt{\sqrt{x + \sqrt{1}} \cdot \sqrt{x - \sqrt{1}}}\right)double f(double x) {
double r72655 = x;
double r72656 = r72655 * r72655;
double r72657 = 1.0;
double r72658 = r72656 - r72657;
double r72659 = sqrt(r72658);
double r72660 = r72655 + r72659;
double r72661 = log(r72660);
return r72661;
}
double f(double x) {
double r72662 = x;
double r72663 = 1.0;
double r72664 = sqrt(r72663);
double r72665 = r72662 + r72664;
double r72666 = sqrt(r72665);
double r72667 = r72662 - r72664;
double r72668 = sqrt(r72667);
double r72669 = r72666 * r72668;
double r72670 = sqrt(r72669);
double r72671 = r72670 * r72670;
double r72672 = r72662 + r72671;
double r72673 = log(r72672);
return r72673;
}



Bits error versus x
Results
Initial program 31.5
rmApplied add-sqr-sqrt31.5
Applied difference-of-squares31.5
Applied sqrt-prod0.1
rmApplied add-sqr-sqrt0.1
Final simplification0.1
herbie shell --seed 2020045
(FPCore (x)
:name "Hyperbolic arc-cosine"
:precision binary64
(log (+ x (sqrt (- (* x x) 1)))))