\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\begin{array}{l}
\mathbf{if}\;x \le -6.751810080739973559159999205335871800477 \cdot 10^{-16}:\\
\;\;\;\;\sqrt{\frac{\sqrt{{\left(e^{x}\right)}^{2}} - \sqrt{1}}{e^{x} - 1}} \cdot \sqrt{\sqrt{1} + \left|\sqrt[3]{{\left(e^{x}\right)}^{2}}\right| \cdot \sqrt{\sqrt[3]{{\left(e^{x}\right)}^{2}}}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{2} + \left(\frac{3}{16} \cdot \frac{x \cdot x}{\sqrt{2}} + \frac{\frac{1}{2}}{\frac{\sqrt{2}}{x}}\right)\\
\end{array}double f(double x) {
double r28428 = 2.0;
double r28429 = x;
double r28430 = r28428 * r28429;
double r28431 = exp(r28430);
double r28432 = 1.0;
double r28433 = r28431 - r28432;
double r28434 = exp(r28429);
double r28435 = r28434 - r28432;
double r28436 = r28433 / r28435;
double r28437 = sqrt(r28436);
return r28437;
}
double f(double x) {
double r28438 = x;
double r28439 = -6.751810080739974e-16;
bool r28440 = r28438 <= r28439;
double r28441 = exp(r28438);
double r28442 = 2.0;
double r28443 = pow(r28441, r28442);
double r28444 = sqrt(r28443);
double r28445 = 1.0;
double r28446 = sqrt(r28445);
double r28447 = r28444 - r28446;
double r28448 = r28441 - r28445;
double r28449 = r28447 / r28448;
double r28450 = sqrt(r28449);
double r28451 = cbrt(r28443);
double r28452 = fabs(r28451);
double r28453 = sqrt(r28451);
double r28454 = r28452 * r28453;
double r28455 = r28446 + r28454;
double r28456 = sqrt(r28455);
double r28457 = r28450 * r28456;
double r28458 = 2.0;
double r28459 = sqrt(r28458);
double r28460 = 0.1875;
double r28461 = r28438 * r28438;
double r28462 = r28461 / r28459;
double r28463 = r28460 * r28462;
double r28464 = 0.5;
double r28465 = r28459 / r28438;
double r28466 = r28464 / r28465;
double r28467 = r28463 + r28466;
double r28468 = r28459 + r28467;
double r28469 = r28440 ? r28457 : r28468;
return r28469;
}



Bits error versus x
Results
if x < -6.751810080739974e-16Initial program 0.8
Simplified0.5
rmApplied *-un-lft-identity0.5
Applied add-sqr-sqrt0.5
Applied add-sqr-sqrt0.5
Applied difference-of-squares0.0
Applied times-frac0.0
Applied sqrt-prod0.0
Simplified0.0
rmApplied add-cube-cbrt0.0
Applied sqrt-prod0.0
Simplified0.0
if -6.751810080739974e-16 < x Initial program 37.3
Simplified33.3
Taylor expanded around 0 9.3
Simplified9.3
Final simplification0.9
herbie shell --seed 2019195
(FPCore (x)
:name "sqrtexp (problem 3.4.4)"
(sqrt (/ (- (exp (* 2.0 x)) 1.0) (- (exp x) 1.0))))