Average Error: 29.1 → 1.1
Time: 8.7s
Precision: 64
\[\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - \left(\frac{1}{\varepsilon} - 1\right) \cdot e^{-\left(1 + \varepsilon\right) \cdot x}}{2}\]
\[\begin{array}{l} \mathbf{if}\;x \le 273.9633798024049156083492562174797058105:\\ \;\;\;\;\frac{\left(\sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}} \cdot \sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}\right) \cdot \frac{\frac{\sqrt[3]{{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right)}^{3} - {\left(1 \cdot {x}^{2}\right)}^{3}}}{\sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}{\sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - 1 \cdot \left(\frac{e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}}{\varepsilon} - e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}\right)}{2}\\ \end{array}\]
\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - \left(\frac{1}{\varepsilon} - 1\right) \cdot e^{-\left(1 + \varepsilon\right) \cdot x}}{2}
\begin{array}{l}
\mathbf{if}\;x \le 273.9633798024049156083492562174797058105:\\
\;\;\;\;\frac{\left(\sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}} \cdot \sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}\right) \cdot \frac{\frac{\sqrt[3]{{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right)}^{3} - {\left(1 \cdot {x}^{2}\right)}^{3}}}{\sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}{\sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}{2}\\

\mathbf{else}:\\
\;\;\;\;\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - 1 \cdot \left(\frac{e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}}{\varepsilon} - e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}\right)}{2}\\

\end{array}
double f(double x, double eps) {
        double r46195 = 1.0;
        double r46196 = eps;
        double r46197 = r46195 / r46196;
        double r46198 = r46195 + r46197;
        double r46199 = r46195 - r46196;
        double r46200 = x;
        double r46201 = r46199 * r46200;
        double r46202 = -r46201;
        double r46203 = exp(r46202);
        double r46204 = r46198 * r46203;
        double r46205 = r46197 - r46195;
        double r46206 = r46195 + r46196;
        double r46207 = r46206 * r46200;
        double r46208 = -r46207;
        double r46209 = exp(r46208);
        double r46210 = r46205 * r46209;
        double r46211 = r46204 - r46210;
        double r46212 = 2.0;
        double r46213 = r46211 / r46212;
        return r46213;
}

double f(double x, double eps) {
        double r46214 = x;
        double r46215 = 273.9633798024049;
        bool r46216 = r46214 <= r46215;
        double r46217 = 0.6666666666666667;
        double r46218 = 3.0;
        double r46219 = pow(r46214, r46218);
        double r46220 = r46217 * r46219;
        double r46221 = 2.0;
        double r46222 = r46220 + r46221;
        double r46223 = 1.0;
        double r46224 = 2.0;
        double r46225 = pow(r46214, r46224);
        double r46226 = r46223 * r46225;
        double r46227 = r46222 - r46226;
        double r46228 = cbrt(r46227);
        double r46229 = r46228 * r46228;
        double r46230 = pow(r46222, r46218);
        double r46231 = pow(r46226, r46218);
        double r46232 = r46230 - r46231;
        double r46233 = cbrt(r46232);
        double r46234 = r46222 * r46222;
        double r46235 = r46226 * r46226;
        double r46236 = r46222 * r46226;
        double r46237 = r46235 + r46236;
        double r46238 = r46234 + r46237;
        double r46239 = sqrt(r46238);
        double r46240 = cbrt(r46239);
        double r46241 = r46233 / r46240;
        double r46242 = r46241 / r46240;
        double r46243 = r46229 * r46242;
        double r46244 = r46243 / r46221;
        double r46245 = eps;
        double r46246 = r46223 / r46245;
        double r46247 = r46223 + r46246;
        double r46248 = r46223 - r46245;
        double r46249 = r46248 * r46214;
        double r46250 = -r46249;
        double r46251 = exp(r46250);
        double r46252 = r46247 * r46251;
        double r46253 = r46214 * r46245;
        double r46254 = r46223 * r46214;
        double r46255 = r46253 + r46254;
        double r46256 = -r46255;
        double r46257 = exp(r46256);
        double r46258 = r46257 / r46245;
        double r46259 = r46258 - r46257;
        double r46260 = r46223 * r46259;
        double r46261 = r46252 - r46260;
        double r46262 = r46261 / r46221;
        double r46263 = r46216 ? r46244 : r46262;
        return r46263;
}

Error

Bits error versus x

Bits error versus eps

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if x < 273.9633798024049

    1. Initial program 39.1

      \[\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - \left(\frac{1}{\varepsilon} - 1\right) \cdot e^{-\left(1 + \varepsilon\right) \cdot x}}{2}\]
    2. Taylor expanded around 0 1.4

      \[\leadsto \frac{\color{blue}{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}}{2}\]
    3. Using strategy rm
    4. Applied add-cube-cbrt2.9

      \[\leadsto \frac{\color{blue}{\left(\sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}} \cdot \sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}\right) \cdot \sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}}}{2}\]
    5. Using strategy rm
    6. Applied flip3--2.9

      \[\leadsto \frac{\left(\sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}} \cdot \sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}\right) \cdot \sqrt[3]{\color{blue}{\frac{{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right)}^{3} - {\left(1 \cdot {x}^{2}\right)}^{3}}{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}{2}\]
    7. Applied cbrt-div2.4

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

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

      \[\leadsto \frac{\left(\sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}} \cdot \sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}\right) \cdot \frac{\sqrt[3]{{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right)}^{3} - {\left(1 \cdot {x}^{2}\right)}^{3}}}{\color{blue}{\sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}} \cdot \sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}}{2}\]
    11. Applied associate-/r*1.4

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

    if 273.9633798024049 < x

    1. Initial program 0.1

      \[\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - \left(\frac{1}{\varepsilon} - 1\right) \cdot e^{-\left(1 + \varepsilon\right) \cdot x}}{2}\]
    2. Taylor expanded around inf 0.1

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

      \[\leadsto \frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - \color{blue}{1 \cdot \left(\frac{e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}}{\varepsilon} - e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}\right)}}{2}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification1.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le 273.9633798024049156083492562174797058105:\\ \;\;\;\;\frac{\left(\sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}} \cdot \sqrt[3]{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) - 1 \cdot {x}^{2}}\right) \cdot \frac{\frac{\sqrt[3]{{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right)}^{3} - {\left(1 \cdot {x}^{2}\right)}^{3}}}{\sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}{\sqrt[3]{\sqrt{\left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) + \left(\left(1 \cdot {x}^{2}\right) \cdot \left(1 \cdot {x}^{2}\right) + \left(0.6666666666666667406815349750104360282421 \cdot {x}^{3} + 2\right) \cdot \left(1 \cdot {x}^{2}\right)\right)}}}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(1 + \frac{1}{\varepsilon}\right) \cdot e^{-\left(1 - \varepsilon\right) \cdot x} - 1 \cdot \left(\frac{e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}}{\varepsilon} - e^{-\left(x \cdot \varepsilon + 1 \cdot x\right)}\right)}{2}\\ \end{array}\]

Reproduce

herbie shell --seed 2019353 
(FPCore (x eps)
  :name "NMSE Section 6.1 mentioned, A"
  :precision binary64
  (/ (- (* (+ 1 (/ 1 eps)) (exp (- (* (- 1 eps) x)))) (* (- (/ 1 eps) 1) (exp (- (* (+ 1 eps) x))))) 2))