\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\begin{array}{l}
\mathbf{if}\;x \le -1.6951281397363915 \cdot 10^{-07}:\\
\;\;\;\;\sqrt{\frac{{\left(e^{x}\right)}^{2} - 1}{\frac{{\left(e^{x}\right)}^{2} - 1 \cdot 1}{e^{x} + 1}}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{2} + \left(\left(x \cdot \left(\left(\sqrt[3]{\sqrt[3]{x}} \cdot {\left(\sqrt[3]{\sqrt[3]{x}}\right)}^{5}\right) \cdot \frac{\sqrt[3]{x}}{\sqrt{2}}\right)\right) \cdot 0.1875 + 0.5 \cdot \frac{x}{\sqrt{2}}\right)\\
\end{array}double code(double x) {
return ((double) sqrt(((double) (((double) (((double) exp(((double) (2.0 * x)))) - 1.0)) / ((double) (((double) exp(x)) - 1.0))))));
}
double code(double x) {
double VAR;
if ((x <= -1.6951281397363915e-07)) {
VAR = ((double) sqrt(((double) (((double) (((double) pow(((double) exp(x)), 2.0)) - 1.0)) / ((double) (((double) (((double) pow(((double) exp(x)), 2.0)) - ((double) (1.0 * 1.0)))) / ((double) (((double) exp(x)) + 1.0))))))));
} else {
VAR = ((double) (((double) sqrt(2.0)) + ((double) (((double) (((double) (x * ((double) (((double) (((double) cbrt(((double) cbrt(x)))) * ((double) pow(((double) cbrt(((double) cbrt(x)))), 5.0)))) * ((double) (((double) cbrt(x)) / ((double) sqrt(2.0)))))))) * 0.1875)) + ((double) (0.5 * ((double) (x / ((double) sqrt(2.0))))))))));
}
return VAR;
}



Bits error versus x
Results
if x < -1.6951281397363915e-7Initial program 0.2
Simplified0.2
rmApplied flip--0.0
Simplified0.0
if -1.6951281397363915e-7 < x Initial program 62.0
Simplified61.7
Taylor expanded around 0 0.4
Simplified0.4
rmApplied *-un-lft-identity0.4
Applied sqrt-prod0.4
Applied add-cube-cbrt0.4
Applied times-frac0.4
Simplified0.4
rmApplied add-cube-cbrt0.4
Applied associate-*r*0.4
Simplified0.4
Final simplification0.3
herbie shell --seed 2020184
(FPCore (x)
:name "sqrtexp (problem 3.4.4)"
:precision binary64
(sqrt (/ (- (exp (* 2.0 x)) 1.0) (- (exp x) 1.0))))