\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 r67688 = x;
double r67689 = r67688 * r67688;
double r67690 = 1.0;
double r67691 = r67689 - r67690;
double r67692 = sqrt(r67691);
double r67693 = r67688 + r67692;
double r67694 = log(r67693);
return r67694;
}
double f(double x) {
double r67695 = x;
double r67696 = 1.0;
double r67697 = sqrt(r67696);
double r67698 = r67695 + r67697;
double r67699 = sqrt(r67698);
double r67700 = r67695 - r67697;
double r67701 = sqrt(r67700);
double r67702 = r67699 * r67701;
double r67703 = r67695 + r67702;
double r67704 = log(r67703);
return r67704;
}



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