double f(double x) {
double r8385358 = x;
double r8385359 = exp(r8385358);
double r8385360 = -r8385358;
double r8385361 = exp(r8385360);
double r8385362 = r8385359 - r8385361;
double r8385363 = 2.0;
double r8385364 = r8385362 / r8385363;
return r8385364;
}
double f(double x) {
double r8385365 = 0.016666666666666666;
double r8385366 = x;
double r8385367 = 5.0;
double r8385368 = pow(r8385366, r8385367);
double r8385369 = 2.0;
double r8385370 = r8385369 * r8385366;
double r8385371 = 0.3333333333333333;
double r8385372 = r8385366 * r8385366;
double r8385373 = r8385371 * r8385372;
double r8385374 = r8385373 * r8385366;
double r8385375 = r8385370 + r8385374;
double r8385376 = fma(r8385365, r8385368, r8385375);
double r8385377 = r8385376 / r8385369;
return r8385377;
}
\frac{e^{x} - e^{-x}}{2}\frac{(\frac{1}{60} \cdot \left({x}^{5}\right) + \left(2 \cdot x + \left(\frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot x\right))_*}{2}


Bits error versus x
Initial program 58.1
Taylor expanded around 0 0.6
Simplified0.6
rmApplied fma-udef0.6
Applied distribute-lft-in0.6
Final simplification0.6
herbie shell --seed 2019101 +o rules:numerics
(FPCore (x)
:name "Hyperbolic sine"
(/ (- (exp x) (exp (- x))) 2))