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|}\log \left(e^{{\left(e^{\sqrt[3]{\log \left(\mathsf{fma}\left(\sqrt{1}, \sqrt{1}, \left(-\frac{1}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}\right) \cdot \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), -0.284496735999999972\right), 0.25482959199999999\right)\right)\right)} \cdot \sqrt[3]{\log \left(\mathsf{fma}\left(\sqrt{1}, \sqrt{1}, \left(-\frac{1}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}\right) \cdot \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), -0.284496735999999972\right), 0.25482959199999999\right)\right)\right)}}\right)}^{\left(\sqrt[3]{\log \left(\mathsf{fma}\left(\sqrt{1}, \sqrt{1}, \left(-\frac{1}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot \frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}\right) \cdot \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.32759110000000002 \cdot \left|x\right|}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), -0.284496735999999972\right), 0.25482959199999999\right)\right)\right)}\right)}}\right)double f(double x) {
double r206225 = 1.0;
double r206226 = 0.3275911;
double r206227 = x;
double r206228 = fabs(r206227);
double r206229 = r206226 * r206228;
double r206230 = r206225 + r206229;
double r206231 = r206225 / r206230;
double r206232 = 0.254829592;
double r206233 = -0.284496736;
double r206234 = 1.421413741;
double r206235 = -1.453152027;
double r206236 = 1.061405429;
double r206237 = r206231 * r206236;
double r206238 = r206235 + r206237;
double r206239 = r206231 * r206238;
double r206240 = r206234 + r206239;
double r206241 = r206231 * r206240;
double r206242 = r206233 + r206241;
double r206243 = r206231 * r206242;
double r206244 = r206232 + r206243;
double r206245 = r206231 * r206244;
double r206246 = r206228 * r206228;
double r206247 = -r206246;
double r206248 = exp(r206247);
double r206249 = r206245 * r206248;
double r206250 = r206225 - r206249;
return r206250;
}
double f(double x) {
double r206251 = 1.0;
double r206252 = sqrt(r206251);
double r206253 = 1.0;
double r206254 = x;
double r206255 = fabs(r206254);
double r206256 = 2.0;
double r206257 = pow(r206255, r206256);
double r206258 = exp(r206257);
double r206259 = r206253 / r206258;
double r206260 = 0.3275911;
double r206261 = r206260 * r206255;
double r206262 = r206251 + r206261;
double r206263 = r206251 / r206262;
double r206264 = r206259 * r206263;
double r206265 = -r206264;
double r206266 = 1.061405429;
double r206267 = -1.453152027;
double r206268 = fma(r206263, r206266, r206267);
double r206269 = 1.421413741;
double r206270 = fma(r206263, r206268, r206269);
double r206271 = -0.284496736;
double r206272 = fma(r206263, r206270, r206271);
double r206273 = 0.254829592;
double r206274 = fma(r206263, r206272, r206273);
double r206275 = r206265 * r206274;
double r206276 = fma(r206252, r206252, r206275);
double r206277 = log(r206276);
double r206278 = cbrt(r206277);
double r206279 = r206278 * r206278;
double r206280 = exp(r206279);
double r206281 = pow(r206280, r206278);
double r206282 = exp(r206281);
double r206283 = log(r206282);
return r206283;
}



Bits error versus x
Initial program 13.9
rmApplied add-sqr-sqrt13.9
Applied fma-neg13.9
Simplified13.9
rmApplied add-exp-log13.9
rmApplied add-cube-cbrt13.9
Applied exp-prod13.9
rmApplied add-log-exp13.9
Final simplification13.9
herbie shell --seed 2020020 +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)))))))