1 - \left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(0.25482959199999999 + \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(-0.284496735999999972 + \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(1.42141374100000006 + \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(-1.45315202700000001 + \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot 1.0614054289999999\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}{\left(e^{\sqrt[3]{\log \left(1 - \left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(0.25482959199999999 + \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(-0.284496735999999972 + \log \left(e^{\frac{1}{0.32759110000000002 \cdot \left|x\right| + 1}}\right) \cdot \left(1.42141374100000006 + \left(\frac{-1.45315202700000001 \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)} + \frac{\frac{1.0614054289999999 \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)} \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)}\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}\right)} \cdot \sqrt[3]{\log \left(1 - \left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(0.25482959199999999 + \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(-0.284496735999999972 + \log \left(e^{\frac{1}{0.32759110000000002 \cdot \left|x\right| + 1}}\right) \cdot \left(1.42141374100000006 + \left(\frac{-1.45315202700000001 \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)} + \frac{\frac{1.0614054289999999 \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)} \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)}\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}\right)}}\right)}^{\left(\sqrt[3]{\log \left(1 - \left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(0.25482959199999999 + \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|} \cdot \left(-0.284496735999999972 + \log \left(e^{\frac{1}{0.32759110000000002 \cdot \left|x\right| + 1}}\right) \cdot \left(1.42141374100000006 + \left(\frac{-1.45315202700000001 \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)} + \frac{\frac{1.0614054289999999 \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)} \cdot 1}{\mathsf{fma}\left(0.32759110000000002, \left|x\right|, 1\right)}\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}\right)}\right)}double f(double x) {
double r206881 = 1.0;
double r206882 = 0.3275911;
double r206883 = x;
double r206884 = fabs(r206883);
double r206885 = r206882 * r206884;
double r206886 = r206881 + r206885;
double r206887 = r206881 / r206886;
double r206888 = 0.254829592;
double r206889 = -0.284496736;
double r206890 = 1.421413741;
double r206891 = -1.453152027;
double r206892 = 1.061405429;
double r206893 = r206887 * r206892;
double r206894 = r206891 + r206893;
double r206895 = r206887 * r206894;
double r206896 = r206890 + r206895;
double r206897 = r206887 * r206896;
double r206898 = r206889 + r206897;
double r206899 = r206887 * r206898;
double r206900 = r206888 + r206899;
double r206901 = r206887 * r206900;
double r206902 = r206884 * r206884;
double r206903 = -r206902;
double r206904 = exp(r206903);
double r206905 = r206901 * r206904;
double r206906 = r206881 - r206905;
return r206906;
}
double f(double x) {
double r206907 = 1.0;
double r206908 = 0.3275911;
double r206909 = x;
double r206910 = fabs(r206909);
double r206911 = r206908 * r206910;
double r206912 = r206907 + r206911;
double r206913 = r206907 / r206912;
double r206914 = 0.254829592;
double r206915 = -0.284496736;
double r206916 = r206911 + r206907;
double r206917 = r206907 / r206916;
double r206918 = exp(r206917);
double r206919 = log(r206918);
double r206920 = 1.421413741;
double r206921 = -1.453152027;
double r206922 = r206921 * r206907;
double r206923 = fma(r206908, r206910, r206907);
double r206924 = r206922 / r206923;
double r206925 = 1.061405429;
double r206926 = r206925 * r206907;
double r206927 = r206926 / r206923;
double r206928 = r206927 * r206907;
double r206929 = r206928 / r206923;
double r206930 = r206924 + r206929;
double r206931 = r206920 + r206930;
double r206932 = r206919 * r206931;
double r206933 = r206915 + r206932;
double r206934 = r206913 * r206933;
double r206935 = r206914 + r206934;
double r206936 = r206913 * r206935;
double r206937 = r206910 * r206910;
double r206938 = -r206937;
double r206939 = exp(r206938);
double r206940 = r206936 * r206939;
double r206941 = r206907 - r206940;
double r206942 = log(r206941);
double r206943 = cbrt(r206942);
double r206944 = r206943 * r206943;
double r206945 = exp(r206944);
double r206946 = pow(r206945, r206943);
return r206946;
}



Bits error versus x
Initial program 14.0
rmApplied distribute-lft-in14.0
Simplified14.0
Simplified14.0
rmApplied add-exp-log14.0
rmApplied add-log-exp14.0
Simplified14.0
rmApplied add-cube-cbrt14.0
Applied exp-prod14.0
Final simplification14.0
herbie shell --seed 2020035 +o rules:numerics
(FPCore (x)
:name "Jmat.Real.erf"
:precision binary64
(- 1 (* (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1 (+ 1 (* 0.3275911 (fabs x)))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x)))))))