\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\mathsf{hypot}\left(\left(\sqrt{e^{x}}\right), 1\right)double f(double x) {
double r154087 = 2.0;
double r154088 = x;
double r154089 = r154087 * r154088;
double r154090 = exp(r154089);
double r154091 = 1.0;
double r154092 = r154090 - r154091;
double r154093 = exp(r154088);
double r154094 = r154093 - r154091;
double r154095 = r154092 / r154094;
double r154096 = sqrt(r154095);
return r154096;
}
double f(double x) {
double r154097 = x;
double r154098 = exp(r154097);
double r154099 = sqrt(r154098);
double r154100 = 1.0;
double r154101 = hypot(r154099, r154100);
return r154101;
}



Bits error versus x
Results
Initial program 4.2
Simplified0.1
rmApplied *-un-lft-identity0.1
Applied add-sqr-sqrt0.1
Applied hypot-def0.1
Final simplification0.1
herbie shell --seed 2019120 +o rules:numerics
(FPCore (x)
:name "sqrtexp (problem 3.4.4)"
(sqrt (/ (- (exp (* 2 x)) 1) (- (exp x) 1))))