Average Error: 13.8 → 10.6
Time: 14.7s
Precision: 64
\[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|}\]
\[e^{\log \left(\frac{1 \cdot 1 - \frac{\frac{1 \cdot \left(\frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot 1\right)}{{\left(\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)\right)}^{2}}}{\frac{e^{{\left(\left|x\right|\right)}^{2}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}, 1\right)}\right)}\]
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|}
e^{\log \left(\frac{1 \cdot 1 - \frac{\frac{1 \cdot \left(\frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot 1\right)}{{\left(\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)\right)}^{2}}}{\frac{e^{{\left(\left|x\right|\right)}^{2}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}, 1\right)}\right)}
double f(double x) {
        double r234256 = 1.0;
        double r234257 = 0.3275911;
        double r234258 = x;
        double r234259 = fabs(r234258);
        double r234260 = r234257 * r234259;
        double r234261 = r234256 + r234260;
        double r234262 = r234256 / r234261;
        double r234263 = 0.254829592;
        double r234264 = -0.284496736;
        double r234265 = 1.421413741;
        double r234266 = -1.453152027;
        double r234267 = 1.061405429;
        double r234268 = r234262 * r234267;
        double r234269 = r234266 + r234268;
        double r234270 = r234262 * r234269;
        double r234271 = r234265 + r234270;
        double r234272 = r234262 * r234271;
        double r234273 = r234264 + r234272;
        double r234274 = r234262 * r234273;
        double r234275 = r234263 + r234274;
        double r234276 = r234262 * r234275;
        double r234277 = r234259 * r234259;
        double r234278 = -r234277;
        double r234279 = exp(r234278);
        double r234280 = r234276 * r234279;
        double r234281 = r234256 - r234280;
        return r234281;
}

double f(double x) {
        double r234282 = 1.0;
        double r234283 = r234282 * r234282;
        double r234284 = x;
        double r234285 = fabs(r234284);
        double r234286 = 0.3275911;
        double r234287 = fma(r234285, r234286, r234282);
        double r234288 = r234282 / r234287;
        double r234289 = 1.061405429;
        double r234290 = -1.453152027;
        double r234291 = fma(r234288, r234289, r234290);
        double r234292 = 1.421413741;
        double r234293 = fma(r234288, r234291, r234292);
        double r234294 = -0.284496736;
        double r234295 = fma(r234293, r234288, r234294);
        double r234296 = 0.254829592;
        double r234297 = fma(r234288, r234295, r234296);
        double r234298 = 2.0;
        double r234299 = pow(r234285, r234298);
        double r234300 = exp(r234299);
        double r234301 = r234297 / r234300;
        double r234302 = r234301 * r234282;
        double r234303 = r234282 * r234302;
        double r234304 = pow(r234287, r234298);
        double r234305 = r234303 / r234304;
        double r234306 = r234300 / r234297;
        double r234307 = r234305 / r234306;
        double r234308 = r234283 - r234307;
        double r234309 = fma(r234288, r234301, r234282);
        double r234310 = r234308 / r234309;
        double r234311 = log(r234310);
        double r234312 = exp(r234311);
        return r234312;
}

Error

Bits error versus x

Derivation

  1. Initial program 13.8

    \[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|}\]
  2. Simplified13.7

    \[\leadsto \color{blue}{1 - \frac{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)} \cdot \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{\left|x\right| \cdot \left|x\right|}}}\]
  3. Using strategy rm
  4. Applied add-exp-log13.7

    \[\leadsto \color{blue}{e^{\log \left(1 - \frac{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)} \cdot \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{\left|x\right| \cdot \left|x\right|}}\right)}}\]
  5. Simplified13.7

    \[\leadsto e^{\color{blue}{\log \left(1 - \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)} \cdot \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}\right)}}\]
  6. Using strategy rm
  7. Applied flip--13.7

    \[\leadsto e^{\log \color{blue}{\left(\frac{1 \cdot 1 - \left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)} \cdot \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}\right) \cdot \left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)} \cdot \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}\right)}{1 + \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)} \cdot \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}}\right)}}\]
  8. Simplified10.6

    \[\leadsto e^{\log \left(\frac{\color{blue}{1 \cdot 1 - \frac{\frac{1 \cdot \left(\frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot 1\right)}{{\left(\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)\right)}^{2}}}{\frac{e^{{\left(\left|x\right|\right)}^{2}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}}}}{1 + \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)} \cdot \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}}\right)}\]
  9. Simplified10.6

    \[\leadsto e^{\log \left(\frac{1 \cdot 1 - \frac{\frac{1 \cdot \left(\frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot 1\right)}{{\left(\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)\right)}^{2}}}{\frac{e^{{\left(\left|x\right|\right)}^{2}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}}}{\color{blue}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}, 1\right)}}\right)}\]
  10. Final simplification10.6

    \[\leadsto e^{\log \left(\frac{1 \cdot 1 - \frac{\frac{1 \cdot \left(\frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}} \cdot 1\right)}{{\left(\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)\right)}^{2}}}{\frac{e^{{\left(\left|x\right|\right)}^{2}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}}}{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \frac{\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, \mathsf{fma}\left(\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, 1.0614054289999999, -1.45315202700000001\right), 1.42141374100000006\right), \frac{1}{\mathsf{fma}\left(\left|x\right|, 0.32759110000000002, 1\right)}, -0.284496735999999972\right), 0.25482959199999999\right)}{e^{{\left(\left|x\right|\right)}^{2}}}, 1\right)}\right)}\]

Reproduce

herbie shell --seed 2020047 +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)))))))