\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\begin{array}{l}
\mathbf{if}\;x \le -1.336679594201055357367315112870898019537 \cdot 10^{-5}:\\
\;\;\;\;\sqrt{\frac{{\left(\sqrt{1}\right)}^{3} + {\left({\left(e^{x}\right)}^{\left(\frac{2}{2}\right)}\right)}^{3}}{\left({\left(e^{x}\right)}^{\left(\frac{2}{2}\right)} - \sqrt{1}\right) \cdot {\left(e^{x}\right)}^{\left(\frac{2}{2}\right)} + 1} \cdot \frac{{\left(e^{x}\right)}^{\left(\frac{2}{2}\right)} - \sqrt{1}}{e^{x} - 1}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 + x\right) + \frac{1}{2} \cdot \left(x \cdot x\right)}\\
\end{array}double f(double x) {
double r23918 = 2.0;
double r23919 = x;
double r23920 = r23918 * r23919;
double r23921 = exp(r23920);
double r23922 = 1.0;
double r23923 = r23921 - r23922;
double r23924 = exp(r23919);
double r23925 = r23924 - r23922;
double r23926 = r23923 / r23925;
double r23927 = sqrt(r23926);
return r23927;
}
double f(double x) {
double r23928 = x;
double r23929 = -1.3366795942010554e-05;
bool r23930 = r23928 <= r23929;
double r23931 = 1.0;
double r23932 = sqrt(r23931);
double r23933 = 3.0;
double r23934 = pow(r23932, r23933);
double r23935 = exp(r23928);
double r23936 = 2.0;
double r23937 = 2.0;
double r23938 = r23936 / r23937;
double r23939 = pow(r23935, r23938);
double r23940 = pow(r23939, r23933);
double r23941 = r23934 + r23940;
double r23942 = r23939 - r23932;
double r23943 = r23942 * r23939;
double r23944 = r23943 + r23931;
double r23945 = r23941 / r23944;
double r23946 = r23935 - r23931;
double r23947 = r23942 / r23946;
double r23948 = r23945 * r23947;
double r23949 = sqrt(r23948);
double r23950 = r23937 + r23928;
double r23951 = 0.5;
double r23952 = r23928 * r23928;
double r23953 = r23951 * r23952;
double r23954 = r23950 + r23953;
double r23955 = sqrt(r23954);
double r23956 = r23930 ? r23949 : r23955;
return r23956;
}



Bits error versus x
Results
if x < -1.3366795942010554e-05Initial program 0.1
Simplified0.1
rmApplied *-un-lft-identity0.1
Applied add-sqr-sqrt0.1
Applied sqr-pow0.1
Applied difference-of-squares0.0
Applied times-frac0.0
Simplified0.0
rmApplied flip3-+0.0
Simplified0.0
Simplified0.0
if -1.3366795942010554e-05 < x Initial program 34.4
Simplified29.6
Taylor expanded around 0 6.2
Simplified6.2
Final simplification0.8
herbie shell --seed 2019196
(FPCore (x)
:name "sqrtexp (problem 3.4.4)"
(sqrt (/ (- (exp (* 2.0 x)) 1.0) (- (exp x) 1.0))))