\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|\sqrt{\frac{1}{\pi}} \cdot \mathsf{fma}\left(\frac{1}{5}, {\left(\left|x\right|\right)}^{5}, \mathsf{fma}\left(\left|x\right|, 2, \mathsf{fma}\left(\frac{2}{3}, \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|, \frac{1}{\sqrt[3]{21} \cdot \sqrt[3]{21}} \cdot \frac{{\left(\left|x\right|\right)}^{7}}{\sqrt[3]{21}}\right)\right)\right)\right|double f(double x) {
double r5532411 = 1.0;
double r5532412 = atan2(1.0, 0.0);
double r5532413 = sqrt(r5532412);
double r5532414 = r5532411 / r5532413;
double r5532415 = 2.0;
double r5532416 = x;
double r5532417 = fabs(r5532416);
double r5532418 = r5532415 * r5532417;
double r5532419 = 3.0;
double r5532420 = r5532415 / r5532419;
double r5532421 = r5532417 * r5532417;
double r5532422 = r5532421 * r5532417;
double r5532423 = r5532420 * r5532422;
double r5532424 = r5532418 + r5532423;
double r5532425 = 5.0;
double r5532426 = r5532411 / r5532425;
double r5532427 = r5532422 * r5532417;
double r5532428 = r5532427 * r5532417;
double r5532429 = r5532426 * r5532428;
double r5532430 = r5532424 + r5532429;
double r5532431 = 21.0;
double r5532432 = r5532411 / r5532431;
double r5532433 = r5532428 * r5532417;
double r5532434 = r5532433 * r5532417;
double r5532435 = r5532432 * r5532434;
double r5532436 = r5532430 + r5532435;
double r5532437 = r5532414 * r5532436;
double r5532438 = fabs(r5532437);
return r5532438;
}
double f(double x) {
double r5532439 = 1.0;
double r5532440 = atan2(1.0, 0.0);
double r5532441 = r5532439 / r5532440;
double r5532442 = sqrt(r5532441);
double r5532443 = 0.2;
double r5532444 = x;
double r5532445 = fabs(r5532444);
double r5532446 = 5.0;
double r5532447 = pow(r5532445, r5532446);
double r5532448 = 2.0;
double r5532449 = 0.6666666666666666;
double r5532450 = r5532445 * r5532445;
double r5532451 = r5532450 * r5532445;
double r5532452 = 21.0;
double r5532453 = cbrt(r5532452);
double r5532454 = r5532453 * r5532453;
double r5532455 = r5532439 / r5532454;
double r5532456 = 7.0;
double r5532457 = pow(r5532445, r5532456);
double r5532458 = r5532457 / r5532453;
double r5532459 = r5532455 * r5532458;
double r5532460 = fma(r5532449, r5532451, r5532459);
double r5532461 = fma(r5532445, r5532448, r5532460);
double r5532462 = fma(r5532443, r5532447, r5532461);
double r5532463 = r5532442 * r5532462;
double r5532464 = fabs(r5532463);
return r5532464;
}



Bits error versus x
Initial program 0.2
rmApplied add-sqr-sqrt0.2
Applied *-un-lft-identity0.2
Applied times-frac0.2
Applied associate-*l*0.2
Taylor expanded around 0 0.2
Simplified0.2
rmApplied add-cube-cbrt0.3
Applied *-un-lft-identity0.3
Applied unpow-prod-down0.3
Applied times-frac0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019165 +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)))))))