double f(double x, double __attribute__((unused)) y) {
double r8290174 = 2.0;
double r8290175 = 1.0;
double r8290176 = -2.0;
double r8290177 = x;
double r8290178 = r8290176 * r8290177;
double r8290179 = exp(r8290178);
double r8290180 = r8290175 + r8290179;
double r8290181 = r8290174 / r8290180;
double r8290182 = r8290181 - r8290175;
return r8290182;
}
double f(double x, double __attribute__((unused)) y) {
double r8290183 = x;
double r8290184 = -0.007721035358892515;
bool r8290185 = r8290183 <= r8290184;
double r8290186 = 2.0;
double r8290187 = -2.0;
double r8290188 = r8290187 * r8290183;
double r8290189 = exp(r8290188);
double r8290190 = 1.0;
double r8290191 = r8290189 + r8290190;
double r8290192 = r8290186 / r8290191;
double r8290193 = r8290192 - r8290190;
double r8290194 = exp(r8290193);
double r8290195 = log(r8290194);
double r8290196 = 0.00689805232726187;
bool r8290197 = r8290183 <= r8290196;
double r8290198 = 5.0;
double r8290199 = pow(r8290183, r8290198);
double r8290200 = 0.13333333333333333;
double r8290201 = r8290199 * r8290200;
double r8290202 = r8290183 * r8290183;
double r8290203 = -0.3333333333333333;
double r8290204 = r8290202 * r8290203;
double r8290205 = r8290183 * r8290204;
double r8290206 = r8290205 + r8290183;
double r8290207 = r8290201 + r8290206;
double r8290208 = cbrt(r8290193);
double r8290209 = r8290208 * r8290208;
double r8290210 = exp(r8290209);
double r8290211 = log(r8290210);
double r8290212 = sqrt(r8290192);
double r8290213 = r8290212 - r8290190;
double r8290214 = r8290190 + r8290212;
double r8290215 = r8290213 * r8290214;
double r8290216 = cbrt(r8290215);
double r8290217 = r8290211 * r8290216;
double r8290218 = r8290197 ? r8290207 : r8290217;
double r8290219 = r8290185 ? r8290195 : r8290218;
return r8290219;
}
\frac{2}{1 + e^{-2 \cdot x}} - 1\begin{array}{l}
\mathbf{if}\;x \le -0.007721035358892515:\\
\;\;\;\;\log \left(e^{\frac{2}{e^{-2 \cdot x} + 1} - 1}\right)\\
\mathbf{elif}\;x \le 0.00689805232726187:\\
\;\;\;\;{x}^{5} \cdot \frac{2}{15} + \left(x \cdot \left(\left(x \cdot x\right) \cdot \frac{-1}{3}\right) + x\right)\\
\mathbf{else}:\\
\;\;\;\;\log \left(e^{\sqrt[3]{\frac{2}{e^{-2 \cdot x} + 1} - 1} \cdot \sqrt[3]{\frac{2}{e^{-2 \cdot x} + 1} - 1}}\right) \cdot \sqrt[3]{\left(\sqrt{\frac{2}{e^{-2 \cdot x} + 1}} - 1\right) \cdot \left(1 + \sqrt{\frac{2}{e^{-2 \cdot x} + 1}}\right)}\\
\end{array}


Bits error versus x



Bits error versus y
if x < -0.007721035358892515Initial program 0.0
rmApplied add-log-exp0.0
if -0.007721035358892515 < x < 0.00689805232726187Initial program 59.1
Taylor expanded around 0 0.0
Simplified0.0
if 0.00689805232726187 < x Initial program 0.0
rmApplied add-log-exp0.0
rmApplied add-cube-cbrt0.0
Applied exp-prod0.0
Applied log-pow0.0
rmApplied add-sqr-sqrt0.0
Applied difference-of-sqr-10.0
Final simplification0.0
herbie shell --seed 2019102
(FPCore (x y)
:name "Logistic function from Lakshay Garg"
(- (/ 2 (+ 1 (exp (* -2 x)))) 1))