\sqrt{\frac{e^{2 \cdot x} - 1}{e^{x} - 1}}\begin{array}{l}
\mathbf{if}\;x \le -4.967589317233999349028090086397013713793 \cdot 10^{-8}:\\
\;\;\;\;\sqrt{\frac{e^{2 \cdot x} - 1}{\left(e^{x + x} - 1 \cdot 1\right) \cdot \frac{1}{e^{x} + 1}}}\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(0.5, \frac{x}{\sqrt{2}}, \sqrt{2}\right) + \frac{{x}^{2}}{\sqrt{2}} \cdot \left(0.25 - \frac{0.125}{2}\right)\\
\end{array}double f(double x) {
double r25096 = 2.0;
double r25097 = x;
double r25098 = r25096 * r25097;
double r25099 = exp(r25098);
double r25100 = 1.0;
double r25101 = r25099 - r25100;
double r25102 = exp(r25097);
double r25103 = r25102 - r25100;
double r25104 = r25101 / r25103;
double r25105 = sqrt(r25104);
return r25105;
}
double f(double x) {
double r25106 = x;
double r25107 = -4.9675893172339993e-08;
bool r25108 = r25106 <= r25107;
double r25109 = 2.0;
double r25110 = r25109 * r25106;
double r25111 = exp(r25110);
double r25112 = 1.0;
double r25113 = r25111 - r25112;
double r25114 = r25106 + r25106;
double r25115 = exp(r25114);
double r25116 = r25112 * r25112;
double r25117 = r25115 - r25116;
double r25118 = 1.0;
double r25119 = exp(r25106);
double r25120 = r25119 + r25112;
double r25121 = r25118 / r25120;
double r25122 = r25117 * r25121;
double r25123 = r25113 / r25122;
double r25124 = sqrt(r25123);
double r25125 = 0.5;
double r25126 = sqrt(r25109);
double r25127 = r25106 / r25126;
double r25128 = fma(r25125, r25127, r25126);
double r25129 = 2.0;
double r25130 = pow(r25106, r25129);
double r25131 = r25130 / r25126;
double r25132 = 0.25;
double r25133 = 0.125;
double r25134 = r25133 / r25109;
double r25135 = r25132 - r25134;
double r25136 = r25131 * r25135;
double r25137 = r25128 + r25136;
double r25138 = r25108 ? r25124 : r25137;
return r25138;
}



Bits error versus x
if x < -4.9675893172339993e-08Initial program 0.2
rmApplied flip--0.1
Simplified0.0
rmApplied div-inv0.0
if -4.9675893172339993e-08 < x Initial program 35.5
rmApplied flip--32.7
Simplified23.8
rmApplied div-inv23.9
Taylor expanded around 0 6.8
Simplified6.7
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))))