Average Error: 29.0 → 0.6
Time: 4.8s
Precision: 64
\[\frac{2}{1 + e^{-2 \cdot x}} - 1\]
\[\begin{array}{l} \mathbf{if}\;-2 \cdot x \le -17964639.956402041 \lor \neg \left(-2 \cdot x \le 3.59556513046770647 \cdot 10^{-10}\right):\\ \;\;\;\;\left(\sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} + \sqrt{1}} \cdot \left(\sqrt[3]{\sqrt{2} \cdot \sqrt{\frac{1}{e^{-2 \cdot x} + 1}} - \sqrt{1}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right)\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\\ \mathbf{else}:\\ \;\;\;\;1 \cdot x - \left(5.55112 \cdot 10^{-17} \cdot {x}^{4} + 0.33333333333333337 \cdot {x}^{3}\right)\\ \end{array}\]
\frac{2}{1 + e^{-2 \cdot x}} - 1
\begin{array}{l}
\mathbf{if}\;-2 \cdot x \le -17964639.956402041 \lor \neg \left(-2 \cdot x \le 3.59556513046770647 \cdot 10^{-10}\right):\\
\;\;\;\;\left(\sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} + \sqrt{1}} \cdot \left(\sqrt[3]{\sqrt{2} \cdot \sqrt{\frac{1}{e^{-2 \cdot x} + 1}} - \sqrt{1}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right)\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\\

\mathbf{else}:\\
\;\;\;\;1 \cdot x - \left(5.55112 \cdot 10^{-17} \cdot {x}^{4} + 0.33333333333333337 \cdot {x}^{3}\right)\\

\end{array}
double f(double x, double __attribute__((unused)) y) {
        double r62540 = 2.0;
        double r62541 = 1.0;
        double r62542 = -2.0;
        double r62543 = x;
        double r62544 = r62542 * r62543;
        double r62545 = exp(r62544);
        double r62546 = r62541 + r62545;
        double r62547 = r62540 / r62546;
        double r62548 = r62547 - r62541;
        return r62548;
}

double f(double x, double __attribute__((unused)) y) {
        double r62549 = -2.0;
        double r62550 = x;
        double r62551 = r62549 * r62550;
        double r62552 = -17964639.95640204;
        bool r62553 = r62551 <= r62552;
        double r62554 = 3.5955651304677065e-10;
        bool r62555 = r62551 <= r62554;
        double r62556 = !r62555;
        bool r62557 = r62553 || r62556;
        double r62558 = 2.0;
        double r62559 = sqrt(r62558);
        double r62560 = 1.0;
        double r62561 = exp(r62551);
        double r62562 = r62560 + r62561;
        double r62563 = sqrt(r62562);
        double r62564 = r62559 / r62563;
        double r62565 = sqrt(r62560);
        double r62566 = r62564 + r62565;
        double r62567 = cbrt(r62566);
        double r62568 = 1.0;
        double r62569 = r62561 + r62560;
        double r62570 = r62568 / r62569;
        double r62571 = sqrt(r62570);
        double r62572 = r62559 * r62571;
        double r62573 = r62572 - r62565;
        double r62574 = cbrt(r62573);
        double r62575 = r62558 / r62562;
        double r62576 = r62575 - r62560;
        double r62577 = cbrt(r62576);
        double r62578 = r62574 * r62577;
        double r62579 = r62567 * r62578;
        double r62580 = r62579 * r62577;
        double r62581 = r62560 * r62550;
        double r62582 = 5.551115123125783e-17;
        double r62583 = 4.0;
        double r62584 = pow(r62550, r62583);
        double r62585 = r62582 * r62584;
        double r62586 = 0.33333333333333337;
        double r62587 = 3.0;
        double r62588 = pow(r62550, r62587);
        double r62589 = r62586 * r62588;
        double r62590 = r62585 + r62589;
        double r62591 = r62581 - r62590;
        double r62592 = r62557 ? r62580 : r62591;
        return r62592;
}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if (* -2.0 x) < -17964639.95640204 or 3.5955651304677065e-10 < (* -2.0 x)

    1. Initial program 0.2

      \[\frac{2}{1 + e^{-2 \cdot x}} - 1\]
    2. Using strategy rm
    3. Applied add-cube-cbrt0.2

      \[\leadsto \color{blue}{\left(\sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}}\]
    4. Using strategy rm
    5. Applied add-sqr-sqrt0.2

      \[\leadsto \left(\sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - \color{blue}{\sqrt{1} \cdot \sqrt{1}}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]
    6. Applied add-sqr-sqrt0.2

      \[\leadsto \left(\sqrt[3]{\frac{2}{\color{blue}{\sqrt{1 + e^{-2 \cdot x}} \cdot \sqrt{1 + e^{-2 \cdot x}}}} - \sqrt{1} \cdot \sqrt{1}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]
    7. Applied add-sqr-sqrt0.2

      \[\leadsto \left(\sqrt[3]{\frac{\color{blue}{\sqrt{2} \cdot \sqrt{2}}}{\sqrt{1 + e^{-2 \cdot x}} \cdot \sqrt{1 + e^{-2 \cdot x}}} - \sqrt{1} \cdot \sqrt{1}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]
    8. Applied times-frac0.2

      \[\leadsto \left(\sqrt[3]{\color{blue}{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} \cdot \frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}}} - \sqrt{1} \cdot \sqrt{1}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]
    9. Applied difference-of-squares0.2

      \[\leadsto \left(\sqrt[3]{\color{blue}{\left(\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} + \sqrt{1}\right) \cdot \left(\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} - \sqrt{1}\right)}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]
    10. Applied cbrt-prod0.2

      \[\leadsto \left(\color{blue}{\left(\sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} + \sqrt{1}} \cdot \sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} - \sqrt{1}}\right)} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]
    11. Applied associate-*l*0.2

      \[\leadsto \color{blue}{\left(\sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} + \sqrt{1}} \cdot \left(\sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} - \sqrt{1}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right)\right)} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]
    12. Taylor expanded around inf 0.2

      \[\leadsto \left(\sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} + \sqrt{1}} \cdot \left(\sqrt[3]{\color{blue}{\sqrt{2} \cdot \sqrt{\frac{1}{e^{-2 \cdot x} + 1}} - \sqrt{1}}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right)\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\]

    if -17964639.95640204 < (* -2.0 x) < 3.5955651304677065e-10

    1. Initial program 58.6

      \[\frac{2}{1 + e^{-2 \cdot x}} - 1\]
    2. Taylor expanded around 0 1.0

      \[\leadsto \color{blue}{1 \cdot x - \left(5.55112 \cdot 10^{-17} \cdot {x}^{4} + 0.33333333333333337 \cdot {x}^{3}\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;-2 \cdot x \le -17964639.956402041 \lor \neg \left(-2 \cdot x \le 3.59556513046770647 \cdot 10^{-10}\right):\\ \;\;\;\;\left(\sqrt[3]{\frac{\sqrt{2}}{\sqrt{1 + e^{-2 \cdot x}}} + \sqrt{1}} \cdot \left(\sqrt[3]{\sqrt{2} \cdot \sqrt{\frac{1}{e^{-2 \cdot x} + 1}} - \sqrt{1}} \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\right)\right) \cdot \sqrt[3]{\frac{2}{1 + e^{-2 \cdot x}} - 1}\\ \mathbf{else}:\\ \;\;\;\;1 \cdot x - \left(5.55112 \cdot 10^{-17} \cdot {x}^{4} + 0.33333333333333337 \cdot {x}^{3}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2020036 
(FPCore (x y)
  :name "Logistic function from Lakshay Garg"
  :precision binary64
  (- (/ 2 (+ 1 (exp (* -2 x)))) 1))