\log \left(x + \sqrt{x \cdot x - 1}\right)\log \left(\sqrt{x + \sqrt{1 + x} \cdot \sqrt{x - 1}}\right) + \log \left(\sqrt{x + \sqrt{1 + x} \cdot \sqrt{x - 1}}\right)double f(double x) {
double r5064560 = x;
double r5064561 = r5064560 * r5064560;
double r5064562 = 1.0;
double r5064563 = r5064561 - r5064562;
double r5064564 = sqrt(r5064563);
double r5064565 = r5064560 + r5064564;
double r5064566 = log(r5064565);
return r5064566;
}
double f(double x) {
double r5064567 = x;
double r5064568 = 1.0;
double r5064569 = r5064568 + r5064567;
double r5064570 = sqrt(r5064569);
double r5064571 = r5064567 - r5064568;
double r5064572 = sqrt(r5064571);
double r5064573 = r5064570 * r5064572;
double r5064574 = r5064567 + r5064573;
double r5064575 = sqrt(r5064574);
double r5064576 = log(r5064575);
double r5064577 = r5064576 + r5064576;
return r5064577;
}



Bits error versus x
Results
Initial program 30.9
rmApplied *-un-lft-identity30.9
Applied difference-of-squares30.9
Applied sqrt-prod0.0
rmApplied add-sqr-sqrt0.1
Applied log-prod0.1
Final simplification0.1
herbie shell --seed 2019128
(FPCore (x)
:name "Hyperbolic arc-cosine"
(log (+ x (sqrt (- (* x x) 1)))))