\frac{2}{1 + e^{-2 \cdot x}} - 1\begin{array}{l}
\mathbf{if}\;-2 \cdot x \le -2.66125213953473545 \cdot 10^{30}:\\
\;\;\;\;\sqrt[3]{{\left(\frac{2}{1 + e^{-2 \cdot x}}\right)}^{3}} - 1\\
\mathbf{elif}\;-2 \cdot x \le 2.69769158723092915 \cdot 10^{-5}:\\
\;\;\;\;1 \cdot x - \left(5.55112 \cdot 10^{-17} \cdot {x}^{4} + 0.33333333333333337 \cdot {x}^{3}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\sqrt[3]{\sqrt{{\left(\frac{2}{1 + e^{-2 \cdot x}}\right)}^{3}}} + \sqrt{1}\right) \cdot \left(\sqrt[3]{\sqrt{{\left(\frac{2}{1 + e^{-2 \cdot x}}\right)}^{3}}} - \sqrt{1}\right)\\
\end{array}double f(double x, double __attribute__((unused)) y) {
double r52010 = 2.0;
double r52011 = 1.0;
double r52012 = -2.0;
double r52013 = x;
double r52014 = r52012 * r52013;
double r52015 = exp(r52014);
double r52016 = r52011 + r52015;
double r52017 = r52010 / r52016;
double r52018 = r52017 - r52011;
return r52018;
}
double f(double x, double __attribute__((unused)) y) {
double r52019 = -2.0;
double r52020 = x;
double r52021 = r52019 * r52020;
double r52022 = -2.6612521395347354e+30;
bool r52023 = r52021 <= r52022;
double r52024 = 2.0;
double r52025 = 1.0;
double r52026 = exp(r52021);
double r52027 = r52025 + r52026;
double r52028 = r52024 / r52027;
double r52029 = 3.0;
double r52030 = pow(r52028, r52029);
double r52031 = cbrt(r52030);
double r52032 = r52031 - r52025;
double r52033 = 2.697691587230929e-05;
bool r52034 = r52021 <= r52033;
double r52035 = r52025 * r52020;
double r52036 = 5.551115123125783e-17;
double r52037 = 4.0;
double r52038 = pow(r52020, r52037);
double r52039 = r52036 * r52038;
double r52040 = 0.33333333333333337;
double r52041 = pow(r52020, r52029);
double r52042 = r52040 * r52041;
double r52043 = r52039 + r52042;
double r52044 = r52035 - r52043;
double r52045 = sqrt(r52030);
double r52046 = cbrt(r52045);
double r52047 = sqrt(r52025);
double r52048 = r52046 + r52047;
double r52049 = r52046 - r52047;
double r52050 = r52048 * r52049;
double r52051 = r52034 ? r52044 : r52050;
double r52052 = r52023 ? r52032 : r52051;
return r52052;
}



Bits error versus x



Bits error versus y
Results
if (* -2.0 x) < -2.6612521395347354e+30Initial program 0
rmApplied add-cbrt-cube0
Applied add-cbrt-cube0
Applied cbrt-undiv0
Simplified0
if -2.6612521395347354e+30 < (* -2.0 x) < 2.697691587230929e-05Initial program 56.5
Taylor expanded around 0 3.0
if 2.697691587230929e-05 < (* -2.0 x) Initial program 0.1
rmApplied add-cbrt-cube0.1
Applied add-cbrt-cube0.1
Applied cbrt-undiv0.1
Simplified0.1
rmApplied add-sqr-sqrt0.1
Applied add-sqr-sqrt0.1
Applied cbrt-prod0.1
Applied difference-of-squares0.1
Final simplification1.6
herbie shell --seed 2020100
(FPCore (x y)
:name "Logistic function from Lakshay Garg"
:precision binary64
(- (/ 2 (+ 1 (exp (* -2 x)))) 1))