\frac{2}{1 + e^{-2 \cdot x}} - 1\begin{array}{l}
\mathbf{if}\;-2 \cdot x \le -14207516.1141591389 \lor \neg \left(-2 \cdot x \le 3.6425271859424674 \cdot 10^{-6}\right):\\
\;\;\;\;\mathsf{fma}\left(\frac{1}{\sqrt[3]{1 + e^{-2 \cdot x}} \cdot \sqrt[3]{1 + e^{-2 \cdot x}}}, \frac{2}{\sqrt[3]{1 + e^{-2 \cdot x}}}, -1\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(1, x, -\mathsf{fma}\left(5.55112 \cdot 10^{-17}, {x}^{4}, 0.33333333333333337 \cdot {x}^{3}\right)\right)\\
\end{array}double code(double x, double y) {
return ((2.0 / (1.0 + exp((-2.0 * x)))) - 1.0);
}
double code(double x, double y) {
double temp;
if ((((-2.0 * x) <= -14207516.114159139) || !((-2.0 * x) <= 3.6425271859424674e-06))) {
temp = fma((1.0 / (cbrt((1.0 + exp((-2.0 * x)))) * cbrt((1.0 + exp((-2.0 * x)))))), (2.0 / cbrt((1.0 + exp((-2.0 * x))))), -1.0);
} else {
temp = fma(1.0, x, -fma(5.551115123125783e-17, pow(x, 4.0), (0.33333333333333337 * pow(x, 3.0))));
}
return temp;
}



Bits error versus x



Bits error versus y
Results
if (* -2.0 x) < -14207516.114159139 or 3.6425271859424674e-06 < (* -2.0 x) Initial program 0.1
rmApplied add-cube-cbrt0.1
Applied *-un-lft-identity0.1
Applied times-frac0.1
Applied fma-neg0.1
if -14207516.114159139 < (* -2.0 x) < 3.6425271859424674e-06Initial program 58.3
Taylor expanded around 0 0.8
Simplified0.8
Final simplification0.4
herbie shell --seed 2020060 +o rules:numerics
(FPCore (x y)
:name "Logistic function from Lakshay Garg"
:precision binary64
(- (/ 2 (+ 1 (exp (* -2 x)))) 1))