\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\begin{array}{l}
\mathbf{if}\;x \le -9.483169319790680130512520587429338328033 \cdot 10^{-14}:\\
\;\;\;\;\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x + x} - 1 \cdot 1}} \cdot \mathsf{hypot}\left({\left(e^{\sqrt[3]{x} \cdot \sqrt[3]{x}}\right)}^{\left(\frac{\sqrt[3]{x}}{2}\right)}, \sqrt{1}\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\frac{{x}^{2}}{\sqrt{2}}, 0.25 - \frac{0.125}{2}, \mathsf{fma}\left(0.5, \frac{x}{\sqrt{2}}, \sqrt{2}\right)\right)\\
\end{array}double f(double x) {
double r26697 = 2.0;
double r26698 = x;
double r26699 = r26697 * r26698;
double r26700 = exp(r26699);
double r26701 = 1.0;
double r26702 = r26700 - r26701;
double r26703 = exp(r26698);
double r26704 = r26703 - r26701;
double r26705 = r26702 / r26704;
double r26706 = sqrt(r26705);
return r26706;
}
double f(double x) {
double r26707 = x;
double r26708 = -9.48316931979068e-14;
bool r26709 = r26707 <= r26708;
double r26710 = 2.0;
double r26711 = r26710 * r26707;
double r26712 = exp(r26711);
double r26713 = 1.0;
double r26714 = r26712 - r26713;
double r26715 = r26707 + r26707;
double r26716 = exp(r26715);
double r26717 = r26713 * r26713;
double r26718 = r26716 - r26717;
double r26719 = r26714 / r26718;
double r26720 = sqrt(r26719);
double r26721 = cbrt(r26707);
double r26722 = r26721 * r26721;
double r26723 = exp(r26722);
double r26724 = 2.0;
double r26725 = r26721 / r26724;
double r26726 = pow(r26723, r26725);
double r26727 = sqrt(r26713);
double r26728 = hypot(r26726, r26727);
double r26729 = r26720 * r26728;
double r26730 = pow(r26707, r26724);
double r26731 = sqrt(r26710);
double r26732 = r26730 / r26731;
double r26733 = 0.25;
double r26734 = 0.125;
double r26735 = r26734 / r26710;
double r26736 = r26733 - r26735;
double r26737 = 0.5;
double r26738 = r26707 / r26731;
double r26739 = fma(r26737, r26738, r26731);
double r26740 = fma(r26732, r26736, r26739);
double r26741 = r26709 ? r26729 : r26740;
return r26741;
}



Bits error versus x
if x < -9.48316931979068e-14Initial program 0.7
rmApplied flip--0.4
Applied associate-/r/0.4
Applied sqrt-prod0.4
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied add-sqr-sqrt0.0
Applied hypot-def0.0
rmApplied add-cube-cbrt0.0
Applied exp-prod0.0
Applied sqrt-pow10.0
if -9.48316931979068e-14 < x Initial program 37.5
Taylor expanded around 0 7.8
Simplified7.8
Final simplification0.9
herbie shell --seed 2019303 +o rules:numerics
(FPCore (x)
:name "sqrtexp (problem 3.4.4)"
:precision binary64
(sqrt (/ (- (exp (* 2 x)) 1) (- (exp x) 1))))