\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(\left(2 \cdot \left|x\right| + \left(\sqrt[3]{\frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)} \cdot \sqrt[3]{\frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)}\right) \cdot \sqrt[3]{\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|x\right|\right)}^{3} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|double f(double x) {
double r145710 = 1.0;
double r145711 = atan2(1.0, 0.0);
double r145712 = sqrt(r145711);
double r145713 = r145710 / r145712;
double r145714 = 2.0;
double r145715 = x;
double r145716 = fabs(r145715);
double r145717 = r145714 * r145716;
double r145718 = 3.0;
double r145719 = r145714 / r145718;
double r145720 = r145716 * r145716;
double r145721 = r145720 * r145716;
double r145722 = r145719 * r145721;
double r145723 = r145717 + r145722;
double r145724 = 5.0;
double r145725 = r145710 / r145724;
double r145726 = r145721 * r145716;
double r145727 = r145726 * r145716;
double r145728 = r145725 * r145727;
double r145729 = r145723 + r145728;
double r145730 = 21.0;
double r145731 = r145710 / r145730;
double r145732 = r145727 * r145716;
double r145733 = r145732 * r145716;
double r145734 = r145731 * r145733;
double r145735 = r145729 + r145734;
double r145736 = r145713 * r145735;
double r145737 = fabs(r145736);
return r145737;
}
double f(double x) {
double r145738 = 1.0;
double r145739 = atan2(1.0, 0.0);
double r145740 = sqrt(r145739);
double r145741 = r145738 / r145740;
double r145742 = 2.0;
double r145743 = x;
double r145744 = fabs(r145743);
double r145745 = r145742 * r145744;
double r145746 = 3.0;
double r145747 = r145742 / r145746;
double r145748 = r145744 * r145744;
double r145749 = r145748 * r145744;
double r145750 = r145747 * r145749;
double r145751 = cbrt(r145750);
double r145752 = r145751 * r145751;
double r145753 = r145752 * r145751;
double r145754 = r145745 + r145753;
double r145755 = 5.0;
double r145756 = r145738 / r145755;
double r145757 = r145749 * r145744;
double r145758 = r145757 * r145744;
double r145759 = r145756 * r145758;
double r145760 = r145754 + r145759;
double r145761 = 21.0;
double r145762 = r145738 / r145761;
double r145763 = 3.0;
double r145764 = pow(r145744, r145763);
double r145765 = r145764 * r145744;
double r145766 = r145765 * r145744;
double r145767 = r145766 * r145744;
double r145768 = r145767 * r145744;
double r145769 = r145762 * r145768;
double r145770 = r145760 + r145769;
double r145771 = r145741 * r145770;
double r145772 = fabs(r145771);
return r145772;
}



Bits error versus x
Results
Initial program 0.2
rmApplied pow10.2
Applied pow10.2
Applied pow10.2
Applied pow-prod-up0.2
Applied pow-prod-up0.2
Simplified0.2
rmApplied add-cube-cbrt0.2
Final simplification0.2
herbie shell --seed 2019298
(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)))))))