\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 r61653 = x;
double r61654 = exp(r61653);
double r61655 = -r61653;
double r61656 = exp(r61655);
double r61657 = r61654 - r61656;
double r61658 = 2.0;
double r61659 = r61657 / r61658;
return r61659;
}
double f(double x) {
double r61660 = 0.3333333333333333;
double r61661 = x;
double r61662 = 3.0;
double r61663 = pow(r61661, r61662);
double r61664 = 0.016666666666666666;
double r61665 = 5.0;
double r61666 = pow(r61661, r61665);
double r61667 = 2.0;
double r61668 = r61667 * r61661;
double r61669 = fma(r61664, r61666, r61668);
double r61670 = fma(r61660, r61663, r61669);
double r61671 = 2.0;
double r61672 = r61670 / r61671;
return r61672;
}



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