\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|\mathsf{fma}\left(\frac{1}{5}, {\left(\left|x\right|\right)}^{5}, \mathsf{fma}\left(2, \left|x\right|, \mathsf{fma}\left(\frac{2}{3}, \left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|, \frac{1}{\frac{21}{{\left(\left|x\right|\right)}^{7}}}\right)\right)\right) \cdot \sqrt{\frac{1}{\pi}}\right|double f(double x) {
double r6189564 = 1.0;
double r6189565 = atan2(1.0, 0.0);
double r6189566 = sqrt(r6189565);
double r6189567 = r6189564 / r6189566;
double r6189568 = 2.0;
double r6189569 = x;
double r6189570 = fabs(r6189569);
double r6189571 = r6189568 * r6189570;
double r6189572 = 3.0;
double r6189573 = r6189568 / r6189572;
double r6189574 = r6189570 * r6189570;
double r6189575 = r6189574 * r6189570;
double r6189576 = r6189573 * r6189575;
double r6189577 = r6189571 + r6189576;
double r6189578 = 5.0;
double r6189579 = r6189564 / r6189578;
double r6189580 = r6189575 * r6189570;
double r6189581 = r6189580 * r6189570;
double r6189582 = r6189579 * r6189581;
double r6189583 = r6189577 + r6189582;
double r6189584 = 21.0;
double r6189585 = r6189564 / r6189584;
double r6189586 = r6189581 * r6189570;
double r6189587 = r6189586 * r6189570;
double r6189588 = r6189585 * r6189587;
double r6189589 = r6189583 + r6189588;
double r6189590 = r6189567 * r6189589;
double r6189591 = fabs(r6189590);
return r6189591;
}
double f(double x) {
double r6189592 = 0.2;
double r6189593 = x;
double r6189594 = fabs(r6189593);
double r6189595 = 5.0;
double r6189596 = pow(r6189594, r6189595);
double r6189597 = 2.0;
double r6189598 = 0.6666666666666666;
double r6189599 = r6189594 * r6189594;
double r6189600 = r6189599 * r6189594;
double r6189601 = 1.0;
double r6189602 = 21.0;
double r6189603 = 7.0;
double r6189604 = pow(r6189594, r6189603);
double r6189605 = r6189602 / r6189604;
double r6189606 = r6189601 / r6189605;
double r6189607 = fma(r6189598, r6189600, r6189606);
double r6189608 = fma(r6189597, r6189594, r6189607);
double r6189609 = fma(r6189592, r6189596, r6189608);
double r6189610 = atan2(1.0, 0.0);
double r6189611 = r6189601 / r6189610;
double r6189612 = sqrt(r6189611);
double r6189613 = r6189609 * r6189612;
double r6189614 = fabs(r6189613);
return r6189614;
}



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.1
Simplified0.1
rmApplied clear-num0.2
Final simplification0.2
herbie shell --seed 2019164 +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)))))))