Average Error: 0.2 → 0.2
Time: 1.6m
Precision: 64
\[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
\[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left|x\right| \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\frac{1}{21} \cdot {\left(\left|x\right|\right)}^{4} + \frac{1}{5} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) + (\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_*\right)\right)\right|\]
double f(double x) {
        double r19409338 = 1.0;
        double r19409339 = atan2(1.0, 0.0);
        double r19409340 = sqrt(r19409339);
        double r19409341 = r19409338 / r19409340;
        double r19409342 = 2.0;
        double r19409343 = x;
        double r19409344 = fabs(r19409343);
        double r19409345 = r19409342 * r19409344;
        double r19409346 = 3.0;
        double r19409347 = r19409342 / r19409346;
        double r19409348 = r19409344 * r19409344;
        double r19409349 = r19409348 * r19409344;
        double r19409350 = r19409347 * r19409349;
        double r19409351 = r19409345 + r19409350;
        double r19409352 = 5.0;
        double r19409353 = r19409338 / r19409352;
        double r19409354 = r19409349 * r19409344;
        double r19409355 = r19409354 * r19409344;
        double r19409356 = r19409353 * r19409355;
        double r19409357 = r19409351 + r19409356;
        double r19409358 = 21.0;
        double r19409359 = r19409338 / r19409358;
        double r19409360 = r19409355 * r19409344;
        double r19409361 = r19409360 * r19409344;
        double r19409362 = r19409359 * r19409361;
        double r19409363 = r19409357 + r19409362;
        double r19409364 = r19409341 * r19409363;
        double r19409365 = fabs(r19409364);
        return r19409365;
}

double f(double x) {
        double r19409366 = 1.0;
        double r19409367 = atan2(1.0, 0.0);
        double r19409368 = sqrt(r19409367);
        double r19409369 = r19409366 / r19409368;
        double r19409370 = x;
        double r19409371 = fabs(r19409370);
        double r19409372 = r19409371 * r19409371;
        double r19409373 = 0.047619047619047616;
        double r19409374 = 4.0;
        double r19409375 = pow(r19409371, r19409374);
        double r19409376 = r19409373 * r19409375;
        double r19409377 = 0.2;
        double r19409378 = r19409377 * r19409372;
        double r19409379 = r19409376 + r19409378;
        double r19409380 = r19409372 * r19409379;
        double r19409381 = 0.6666666666666666;
        double r19409382 = 2.0;
        double r19409383 = fma(r19409381, r19409372, r19409382);
        double r19409384 = r19409380 + r19409383;
        double r19409385 = r19409371 * r19409384;
        double r19409386 = r19409369 * r19409385;
        double r19409387 = fabs(r19409386);
        return r19409387;
}

\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|
\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left|x\right| \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\frac{1}{21} \cdot {\left(\left|x\right|\right)}^{4} + \frac{1}{5} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) + (\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_*\right)\right)\right|

Error

Bits error versus x

Derivation

  1. Initial program 0.2

    \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  2. Using strategy rm
  3. Applied *-un-lft-identity0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \color{blue}{\left(1 \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right)}\right|\]
  4. Applied associate-*r*0.2

    \[\leadsto \left|\color{blue}{\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)}\right|\]
  5. Simplified0.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \color{blue}{\left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right)\right)\right)\right)}\right|\]
  6. Using strategy rm
  7. Applied pow10.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left|x\right| \cdot \color{blue}{{\left(\left|x\right|\right)}^{1}}\right)\right)\right)\right)\right)\right|\]
  8. Applied pow10.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\color{blue}{{\left(\left|x\right|\right)}^{1}} \cdot {\left(\left|x\right|\right)}^{1}\right)\right)\right)\right)\right)\right|\]
  9. Applied pow-sqr0.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \color{blue}{{\left(\left|x\right|\right)}^{\left(2 \cdot 1\right)}}\right)\right)\right)\right)\right|\]
  10. Applied pow10.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \left(\left(\left|x\right| \cdot \color{blue}{{\left(\left|x\right|\right)}^{1}}\right) \cdot {\left(\left|x\right|\right)}^{\left(2 \cdot 1\right)}\right)\right)\right)\right)\right|\]
  11. Applied pow10.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \left(\left(\color{blue}{{\left(\left|x\right|\right)}^{1}} \cdot {\left(\left|x\right|\right)}^{1}\right) \cdot {\left(\left|x\right|\right)}^{\left(2 \cdot 1\right)}\right)\right)\right)\right)\right|\]
  12. Applied pow-sqr0.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \left(\color{blue}{{\left(\left|x\right|\right)}^{\left(2 \cdot 1\right)}} \cdot {\left(\left|x\right|\right)}^{\left(2 \cdot 1\right)}\right)\right)\right)\right)\right|\]
  13. Applied pow-sqr0.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot \color{blue}{{\left(\left|x\right|\right)}^{\left(2 \cdot \left(2 \cdot 1\right)\right)}}\right)\right)\right)\right|\]
  14. Simplified0.2

    \[\leadsto \left|\left(\frac{1}{\sqrt{\pi}} \cdot 1\right) \cdot \left(\left|x\right| \cdot \left((\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_* + \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \frac{1}{5} + \frac{1}{21} \cdot {\left(\left|x\right|\right)}^{\color{blue}{4}}\right)\right)\right)\right|\]
  15. Final simplification0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left|x\right| \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left(\frac{1}{21} \cdot {\left(\left|x\right|\right)}^{4} + \frac{1}{5} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) + (\frac{2}{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right) + 2)_*\right)\right)\right|\]

Reproduce

herbie shell --seed 2019102 +o rules:numerics
(FPCore (x)
  :name "Jmat.Real.erfi, branch x less than or equal to 0.5"
  (fabs (* (/ 1 (sqrt PI)) (+ (+ (+ (* 2 (fabs x)) (* (/ 2 3) (* (* (fabs x) (fabs x)) (fabs x)))) (* (/ 1 5) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1 21) (* (* (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)))))))