\frac{2}{1 + e^{-2 \cdot x}} - 1\begin{array}{l}
\mathbf{if}\;x \le -9.66599909477714012 \cdot 10^{-4} \lor \neg \left(x \le 8.6546567923037718 \cdot 10^{-4}\right):\\
\;\;\;\;\frac{\sqrt[3]{{\left(\frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}^{3} - {1}^{3}}}{\sqrt[3]{{\left(\frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}^{2} + 1 \cdot \left(1 + \frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}} \cdot \left(\frac{\sqrt[3]{{\left(\frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}^{3} - {1}^{3}}}{\sqrt[3]{{\left(\frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}^{2} + 1 \cdot \left(1 + \frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}} \cdot \frac{\sqrt[3]{{\left(\frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}^{3} - {1}^{3}}}{\sqrt[3]{{\left(\frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}^{2} + 1 \cdot \left(1 + \frac{2}{1 + {\left(e^{-2}\right)}^{x}}\right)}}\right)\\
\mathbf{else}:\\
\;\;\;\;x \cdot 1 - {x}^{3} \cdot \left(x \cdot 5.55112 \cdot 10^{-17} + 0.33333333333333337\right)\\
\end{array}double code(double x, double y) {
return ((double) (((double) (2.0 / ((double) (1.0 + ((double) exp(((double) (-2.0 * x)))))))) - 1.0));
}
double code(double x, double y) {
double VAR;
if (((x <= -0.000966599909477714) || !(x <= 0.0008654656792303772))) {
VAR = ((double) (((double) (((double) cbrt(((double) (((double) pow(((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))), 3.0)) - ((double) pow(1.0, 3.0)))))) / ((double) cbrt(((double) (((double) pow(((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))), 2.0)) + ((double) (1.0 * ((double) (1.0 + ((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))))))))))))) * ((double) (((double) (((double) cbrt(((double) (((double) pow(((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))), 3.0)) - ((double) pow(1.0, 3.0)))))) / ((double) cbrt(((double) (((double) pow(((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))), 2.0)) + ((double) (1.0 * ((double) (1.0 + ((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))))))))))))) * ((double) (((double) cbrt(((double) (((double) pow(((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))), 3.0)) - ((double) pow(1.0, 3.0)))))) / ((double) cbrt(((double) (((double) pow(((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x)))))), 2.0)) + ((double) (1.0 * ((double) (1.0 + ((double) (2.0 / ((double) (1.0 + ((double) pow(((double) exp(-2.0)), x))))))))))))))))))));
} else {
VAR = ((double) (((double) (x * 1.0)) - ((double) (((double) pow(x, 3.0)) * ((double) (((double) (x * 5.551115123125783e-17)) + 0.33333333333333337))))));
}
return VAR;
}



Bits error versus x



Bits error versus y
Results
if x < -9.66599909477714012e-4 or 8.6546567923037718e-4 < x Initial program 0.1
rmApplied flip3--0.1
Simplified0.1
Simplified0.1
rmApplied add-cube-cbrt1.3
Applied add-cube-cbrt0.1
Applied times-frac0.1
Simplified0.1
Simplified0.1
if -9.66599909477714012e-4 < x < 8.6546567923037718e-4Initial program 59.1
Taylor expanded around 0 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020179
(FPCore (x y)
:name "Logistic function from Lakshay Garg"
:precision binary64
(- (/ 2.0 (+ 1.0 (exp (* -2.0 x)))) 1.0))