\frac{e^{x} - e^{-x}}{e^{x} + e^{-x}}\mathsf{fma}\left(x \cdot \left(x \cdot x\right), \frac{-1}{3}, \mathsf{fma}\left({x}^{5}, \frac{2}{15}, x\right)\right)double f(double x) {
double r2376516 = x;
double r2376517 = exp(r2376516);
double r2376518 = -r2376516;
double r2376519 = exp(r2376518);
double r2376520 = r2376517 - r2376519;
double r2376521 = r2376517 + r2376519;
double r2376522 = r2376520 / r2376521;
return r2376522;
}
double f(double x) {
double r2376523 = x;
double r2376524 = r2376523 * r2376523;
double r2376525 = r2376523 * r2376524;
double r2376526 = -0.3333333333333333;
double r2376527 = 5.0;
double r2376528 = pow(r2376523, r2376527);
double r2376529 = 0.13333333333333333;
double r2376530 = fma(r2376528, r2376529, r2376523);
double r2376531 = fma(r2376525, r2376526, r2376530);
return r2376531;
}



Bits error versus x
Initial program 58.4
Taylor expanded around 0 1.6
Simplified1.6
Final simplification1.6
herbie shell --seed 2019149 +o rules:numerics
(FPCore (x)
:name "Hyperbolic tangent"
(/ (- (exp x) (exp (- x))) (+ (exp x) (exp (- x)))))