Average Error: 0.2 → 0.2
Time: 10.1s
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{1}} \cdot \left(\frac{\sqrt{1}}{1} \cdot \mathsf{fma}\left(\frac{\sqrt{1}}{\sqrt{\pi}}, \frac{\left({\left(\left|x\right|\right)}^{4} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot 1}{21}, \frac{\sqrt{1}}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left(\frac{1}{5} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot \left|x\right|, \left|x\right|, \mathsf{fma}\left(\left|x\right|, 2, {\left(\left|x\right|\right)}^{3} \cdot \frac{2}{3}\right)\right)\right)\right)\right|\]
\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{1}} \cdot \left(\frac{\sqrt{1}}{1} \cdot \mathsf{fma}\left(\frac{\sqrt{1}}{\sqrt{\pi}}, \frac{\left({\left(\left|x\right|\right)}^{4} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot 1}{21}, \frac{\sqrt{1}}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left(\frac{1}{5} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot \left|x\right|, \left|x\right|, \mathsf{fma}\left(\left|x\right|, 2, {\left(\left|x\right|\right)}^{3} \cdot \frac{2}{3}\right)\right)\right)\right)\right|
double f(double x) {
        double r155266 = 1.0;
        double r155267 = atan2(1.0, 0.0);
        double r155268 = sqrt(r155267);
        double r155269 = r155266 / r155268;
        double r155270 = 2.0;
        double r155271 = x;
        double r155272 = fabs(r155271);
        double r155273 = r155270 * r155272;
        double r155274 = 3.0;
        double r155275 = r155270 / r155274;
        double r155276 = r155272 * r155272;
        double r155277 = r155276 * r155272;
        double r155278 = r155275 * r155277;
        double r155279 = r155273 + r155278;
        double r155280 = 5.0;
        double r155281 = r155266 / r155280;
        double r155282 = r155277 * r155272;
        double r155283 = r155282 * r155272;
        double r155284 = r155281 * r155283;
        double r155285 = r155279 + r155284;
        double r155286 = 21.0;
        double r155287 = r155266 / r155286;
        double r155288 = r155283 * r155272;
        double r155289 = r155288 * r155272;
        double r155290 = r155287 * r155289;
        double r155291 = r155285 + r155290;
        double r155292 = r155269 * r155291;
        double r155293 = fabs(r155292);
        return r155293;
}

double f(double x) {
        double r155294 = 1.0;
        double r155295 = sqrt(r155294);
        double r155296 = r155294 / r155295;
        double r155297 = 1.0;
        double r155298 = sqrt(r155297);
        double r155299 = r155298 / r155294;
        double r155300 = atan2(1.0, 0.0);
        double r155301 = sqrt(r155300);
        double r155302 = r155298 / r155301;
        double r155303 = x;
        double r155304 = fabs(r155303);
        double r155305 = 4.0;
        double r155306 = pow(r155304, r155305);
        double r155307 = 3.0;
        double r155308 = pow(r155304, r155307);
        double r155309 = r155306 * r155308;
        double r155310 = r155309 * r155297;
        double r155311 = 21.0;
        double r155312 = r155310 / r155311;
        double r155313 = 5.0;
        double r155314 = r155297 / r155313;
        double r155315 = r155314 * r155308;
        double r155316 = r155315 * r155304;
        double r155317 = 2.0;
        double r155318 = 3.0;
        double r155319 = r155317 / r155318;
        double r155320 = r155308 * r155319;
        double r155321 = fma(r155304, r155317, r155320);
        double r155322 = fma(r155316, r155304, r155321);
        double r155323 = r155302 * r155322;
        double r155324 = fma(r155302, r155312, r155323);
        double r155325 = r155299 * r155324;
        double r155326 = r155296 * r155325;
        double r155327 = fabs(r155326);
        return r155327;
}

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{\color{blue}{1 \cdot \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|\]
  4. Applied sqrt-prod0.2

    \[\leadsto \left|\frac{1}{\color{blue}{\sqrt{1} \cdot \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|\]
  5. Applied *-un-lft-identity0.2

    \[\leadsto \left|\frac{\color{blue}{1 \cdot 1}}{\sqrt{1} \cdot \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|\]
  6. Applied times-frac0.2

    \[\leadsto \left|\color{blue}{\left(\frac{1}{\sqrt{1}} \cdot \frac{1}{\sqrt{\pi}}\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|\]
  7. Applied associate-*l*0.2

    \[\leadsto \left|\color{blue}{\frac{1}{\sqrt{1}} \cdot \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)}\right|\]
  8. Simplified0.2

    \[\leadsto \left|\frac{1}{\sqrt{1}} \cdot \color{blue}{\left(\frac{1}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\frac{1}{21}, \left({\left(\left|x\right|\right)}^{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right), \mathsf{fma}\left(\left(\frac{1}{5} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot \left|x\right|, \left|x\right|, \mathsf{fma}\left(\left|x\right|, 2, {\left(\left|x\right|\right)}^{3} \cdot \frac{2}{3}\right)\right)\right)\right)}\right|\]
  9. Using strategy rm
  10. Applied *-un-lft-identity0.2

    \[\leadsto \left|\frac{1}{\sqrt{1}} \cdot \left(\frac{1}{\color{blue}{1 \cdot \sqrt{\pi}}} \cdot \mathsf{fma}\left(\frac{1}{21}, \left({\left(\left|x\right|\right)}^{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right), \mathsf{fma}\left(\left(\frac{1}{5} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot \left|x\right|, \left|x\right|, \mathsf{fma}\left(\left|x\right|, 2, {\left(\left|x\right|\right)}^{3} \cdot \frac{2}{3}\right)\right)\right)\right)\right|\]
  11. Applied add-sqr-sqrt0.2

    \[\leadsto \left|\frac{1}{\sqrt{1}} \cdot \left(\frac{\color{blue}{\sqrt{1} \cdot \sqrt{1}}}{1 \cdot \sqrt{\pi}} \cdot \mathsf{fma}\left(\frac{1}{21}, \left({\left(\left|x\right|\right)}^{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right), \mathsf{fma}\left(\left(\frac{1}{5} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot \left|x\right|, \left|x\right|, \mathsf{fma}\left(\left|x\right|, 2, {\left(\left|x\right|\right)}^{3} \cdot \frac{2}{3}\right)\right)\right)\right)\right|\]
  12. Applied times-frac0.2

    \[\leadsto \left|\frac{1}{\sqrt{1}} \cdot \left(\color{blue}{\left(\frac{\sqrt{1}}{1} \cdot \frac{\sqrt{1}}{\sqrt{\pi}}\right)} \cdot \mathsf{fma}\left(\frac{1}{21}, \left({\left(\left|x\right|\right)}^{3} \cdot \left(\left|x\right| \cdot \left|x\right|\right)\right) \cdot \left(\left|x\right| \cdot \left|x\right|\right), \mathsf{fma}\left(\left(\frac{1}{5} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot \left|x\right|, \left|x\right|, \mathsf{fma}\left(\left|x\right|, 2, {\left(\left|x\right|\right)}^{3} \cdot \frac{2}{3}\right)\right)\right)\right)\right|\]
  13. Applied associate-*l*0.2

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

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

    \[\leadsto \left|\frac{1}{\sqrt{1}} \cdot \left(\frac{\sqrt{1}}{1} \cdot \mathsf{fma}\left(\frac{\sqrt{1}}{\sqrt{\pi}}, \frac{\left({\left(\left|x\right|\right)}^{4} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot 1}{21}, \frac{\sqrt{1}}{\sqrt{\pi}} \cdot \mathsf{fma}\left(\left(\frac{1}{5} \cdot {\left(\left|x\right|\right)}^{3}\right) \cdot \left|x\right|, \left|x\right|, \mathsf{fma}\left(\left|x\right|, 2, {\left(\left|x\right|\right)}^{3} \cdot \frac{2}{3}\right)\right)\right)\right)\right|\]

Reproduce

herbie shell --seed 2020018 +o rules:numerics
(FPCore (x)
  :name "Jmat.Real.erfi, branch x less than or equal to 0.5"
  :precision binary64
  (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)))))))