\frac{2}{1 + e^{-2 \cdot x}} - 1\begin{array}{l}
\mathbf{if}\;x \le -0.0010981289010568475:\\
\;\;\;\;\frac{\sqrt{2}}{\frac{1 + e^{x \cdot -2}}{\sqrt{2}}} - 1\\
\mathbf{elif}\;x \le 0.0008601727671511666:\\
\;\;\;\;\left(\frac{-1}{3} \cdot \left(x \cdot x\right)\right) \cdot x + x\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\frac{2}{1 + e^{x \cdot -2}} - 1} \cdot \sqrt{\frac{2}{1 + e^{x \cdot -2}} - 1}\\
\end{array}double f(double x, double __attribute__((unused)) y) {
double r1392703 = 2.0;
double r1392704 = 1.0;
double r1392705 = -2.0;
double r1392706 = x;
double r1392707 = r1392705 * r1392706;
double r1392708 = exp(r1392707);
double r1392709 = r1392704 + r1392708;
double r1392710 = r1392703 / r1392709;
double r1392711 = r1392710 - r1392704;
return r1392711;
}
double f(double x, double __attribute__((unused)) y) {
double r1392712 = x;
double r1392713 = -0.0010981289010568475;
bool r1392714 = r1392712 <= r1392713;
double r1392715 = 2.0;
double r1392716 = sqrt(r1392715);
double r1392717 = 1.0;
double r1392718 = -2.0;
double r1392719 = r1392712 * r1392718;
double r1392720 = exp(r1392719);
double r1392721 = r1392717 + r1392720;
double r1392722 = r1392721 / r1392716;
double r1392723 = r1392716 / r1392722;
double r1392724 = r1392723 - r1392717;
double r1392725 = 0.0008601727671511666;
bool r1392726 = r1392712 <= r1392725;
double r1392727 = -0.3333333333333333;
double r1392728 = r1392712 * r1392712;
double r1392729 = r1392727 * r1392728;
double r1392730 = r1392729 * r1392712;
double r1392731 = r1392730 + r1392712;
double r1392732 = r1392715 / r1392721;
double r1392733 = r1392732 - r1392717;
double r1392734 = sqrt(r1392733);
double r1392735 = r1392734 * r1392734;
double r1392736 = r1392726 ? r1392731 : r1392735;
double r1392737 = r1392714 ? r1392724 : r1392736;
return r1392737;
}



Bits error versus x



Bits error versus y
Results
if x < -0.0010981289010568475Initial program 0.1
rmApplied add-sqr-sqrt0.1
Applied associate-/l*0.1
if -0.0010981289010568475 < x < 0.0008601727671511666Initial program 59.1
rmApplied add-sqr-sqrt60.2
Applied associate-/l*60.1
Taylor expanded around 0 60.2
Simplified0.0
if 0.0008601727671511666 < x Initial program 0.0
rmApplied add-sqr-sqrt0.0
Final simplification0.0
herbie shell --seed 2019130
(FPCore (x y)
:name "Logistic function from Lakshay Garg"
(- (/ 2 (+ 1 (exp (* -2 x)))) 1))