\frac{e^{x} - e^{-x}}{2}\frac{\mathsf{fma}\left(\frac{1}{3}, {x}^{3}, \mathsf{fma}\left(\frac{1}{60}, {x}^{5}, 2 \cdot x\right)\right)}{2}double f(double x) {
double r61209 = x;
double r61210 = exp(r61209);
double r61211 = -r61209;
double r61212 = exp(r61211);
double r61213 = r61210 - r61212;
double r61214 = 2.0;
double r61215 = r61213 / r61214;
return r61215;
}
double f(double x) {
double r61216 = 0.3333333333333333;
double r61217 = x;
double r61218 = 3.0;
double r61219 = pow(r61217, r61218);
double r61220 = 0.016666666666666666;
double r61221 = 5.0;
double r61222 = pow(r61217, r61221);
double r61223 = 2.0;
double r61224 = r61223 * r61217;
double r61225 = fma(r61220, r61222, r61224);
double r61226 = fma(r61216, r61219, r61225);
double r61227 = 2.0;
double r61228 = r61226 / r61227;
return r61228;
}



Bits error versus x
Initial program 58.0
Taylor expanded around 0 0.7
Simplified0.7
Final simplification0.7
herbie shell --seed 2020036 +o rules:numerics
(FPCore (x)
:name "Hyperbolic sine"
:precision binary64
(/ (- (exp x) (exp (- x))) 2))