\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\begin{array}{l}
\mathbf{if}\;x \le \frac{-281509160522293}{18446744073709551616}:\\
\;\;\;\;\sqrt{\left(\sqrt{e^{2 \cdot x}} + \sqrt{1}\right) \cdot \frac{\sqrt{e^{2 \cdot x}} - \sqrt{1}}{\sqrt[3]{\left(e^{x} - 1\right) \cdot \left(e^{x} - 1\right)} \cdot \sqrt[3]{e^{x} - 1}}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{x \cdot \left(1 + \frac{1}{2} \cdot x\right) + 2}\\
\end{array}double f(double x) {
double r19833 = 2.0;
double r19834 = x;
double r19835 = r19833 * r19834;
double r19836 = exp(r19835);
double r19837 = 1.0;
double r19838 = r19836 - r19837;
double r19839 = exp(r19834);
double r19840 = r19839 - r19837;
double r19841 = r19838 / r19840;
double r19842 = sqrt(r19841);
return r19842;
}
double f(double x) {
double r19843 = x;
double r19844 = -281509160522293.0;
double r19845 = 1.8446744073709552e+19;
double r19846 = r19844 / r19845;
bool r19847 = r19843 <= r19846;
double r19848 = 2.0;
double r19849 = r19848 * r19843;
double r19850 = exp(r19849);
double r19851 = sqrt(r19850);
double r19852 = 1.0;
double r19853 = sqrt(r19852);
double r19854 = r19851 + r19853;
double r19855 = r19851 - r19853;
double r19856 = exp(r19843);
double r19857 = r19856 - r19852;
double r19858 = r19857 * r19857;
double r19859 = cbrt(r19858);
double r19860 = cbrt(r19857);
double r19861 = r19859 * r19860;
double r19862 = r19855 / r19861;
double r19863 = r19854 * r19862;
double r19864 = sqrt(r19863);
double r19865 = r19852 / r19848;
double r19866 = r19865 * r19843;
double r19867 = r19852 + r19866;
double r19868 = r19843 * r19867;
double r19869 = r19868 + r19848;
double r19870 = sqrt(r19869);
double r19871 = r19847 ? r19864 : r19870;
return r19871;
}



Bits error versus x
Results
if x < -1.5260642170642034e-05Initial program 0.1
rmApplied *-un-lft-identity0.1
Applied add-sqr-sqrt0.1
Applied add-sqr-sqrt0.1
Applied difference-of-squares0.0
Applied times-frac0.0
Simplified0.0
rmApplied add-cbrt-cube0.0
Simplified0.0
rmApplied add-cube-cbrt0.0
Applied unpow-prod-down0.0
Applied cbrt-prod0.0
Simplified0.0
Simplified0.0
if -1.5260642170642034e-05 < x Initial program 35.2
Taylor expanded around 0 5.9
Simplified5.9
Final simplification0.8
herbie shell --seed 2019304
(FPCore (x)
:name "sqrtexp (problem 3.4.4)"
:precision binary64
(sqrt (/ (- (exp (* 2 x)) 1) (- (exp x) 1))))