\frac{2}{1 + e^{-2 \cdot x}} - 1\begin{array}{l}
\mathbf{if}\;x \le -0.008132844190967993:\\
\;\;\;\;\frac{2}{1 + e^{-2 \cdot x}} - 1\\
\mathbf{elif}\;x \le 0.006948963129088722:\\
\;\;\;\;\mathsf{fma}\left(\left(\frac{-1}{3} \cdot x\right), \left(x \cdot x\right), \left(\mathsf{fma}\left(\frac{2}{15}, \left({x}^{5}\right), x\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{1 + e^{-2 \cdot x}} - 1\\
\end{array}double f(double x, double __attribute__((unused)) y) {
double r5987620 = 2.0;
double r5987621 = 1.0;
double r5987622 = -2.0;
double r5987623 = x;
double r5987624 = r5987622 * r5987623;
double r5987625 = exp(r5987624);
double r5987626 = r5987621 + r5987625;
double r5987627 = r5987620 / r5987626;
double r5987628 = r5987627 - r5987621;
return r5987628;
}
double f(double x, double __attribute__((unused)) y) {
double r5987629 = x;
double r5987630 = -0.008132844190967993;
bool r5987631 = r5987629 <= r5987630;
double r5987632 = 2.0;
double r5987633 = 1.0;
double r5987634 = -2.0;
double r5987635 = r5987634 * r5987629;
double r5987636 = exp(r5987635);
double r5987637 = r5987633 + r5987636;
double r5987638 = r5987632 / r5987637;
double r5987639 = r5987638 - r5987633;
double r5987640 = 0.006948963129088722;
bool r5987641 = r5987629 <= r5987640;
double r5987642 = -0.3333333333333333;
double r5987643 = r5987642 * r5987629;
double r5987644 = r5987629 * r5987629;
double r5987645 = 0.13333333333333333;
double r5987646 = 5.0;
double r5987647 = pow(r5987629, r5987646);
double r5987648 = fma(r5987645, r5987647, r5987629);
double r5987649 = fma(r5987643, r5987644, r5987648);
double r5987650 = r5987641 ? r5987649 : r5987639;
double r5987651 = r5987631 ? r5987639 : r5987650;
return r5987651;
}



Bits error versus x



Bits error versus y
if x < -0.008132844190967993 or 0.006948963129088722 < x Initial program 0.0
Taylor expanded around inf 0.0
if -0.008132844190967993 < x < 0.006948963129088722Initial program 59.1
Taylor expanded around inf 59.1
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019124 +o rules:numerics
(FPCore (x y)
:name "Logistic function from Lakshay Garg"
(- (/ 2 (+ 1 (exp (* -2 x)))) 1))