double f(double x) {
double r76484 = 2.0;
double r76485 = x;
double r76486 = r76484 * r76485;
double r76487 = exp(r76486);
double r76488 = 1.0;
double r76489 = r76487 - r76488;
double r76490 = exp(r76485);
double r76491 = r76490 - r76488;
double r76492 = r76489 / r76491;
double r76493 = sqrt(r76492);
return r76493;
}
double f(double x) {
double r76494 = x;
double r76495 = exp(r76494);
double r76496 = sqrt(r76495);
double r76497 = 1.0;
double r76498 = fma(r76496, r76496, r76497);
double r76499 = sqrt(r76498);
return r76499;
}
\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\sqrt{(\left(\sqrt{e^{x}}\right) \cdot \left(\sqrt{e^{x}}\right) + 1)_*}


Bits error versus x
Initial program 4.6
Simplified0.1
rmApplied add-sqr-sqrt0.1
Applied fma-def0.1
Final simplification0.1
herbie shell --seed 2019101 +o rules:numerics
(FPCore (x)
:name "sqrtexp (problem 3.4.4)"
(sqrt (/ (- (exp (* 2 x)) 1) (- (exp x) 1))))