Average Error: 13.8 → 13.8
Time: 6.9s
Precision: 64
\[1 - \left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(0.2548295919999999936678136691625695675611 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(-0.2844967359999999723108032867457950487733 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(1.421413741000000063863240029604639858007 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(-1.453152027000000012790792425221297889948 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot 1.061405428999999900341322245367337018251\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}\]
\[{e}^{\left(\log \left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)\right)}\]
1 - \left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(0.2548295919999999936678136691625695675611 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(-0.2844967359999999723108032867457950487733 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(1.421413741000000063863240029604639858007 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(-1.453152027000000012790792425221297889948 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot 1.061405428999999900341322245367337018251\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}
{e}^{\left(\log \left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)\right)}
double f(double x) {
        double r238855 = 1.0;
        double r238856 = 0.3275911;
        double r238857 = x;
        double r238858 = fabs(r238857);
        double r238859 = r238856 * r238858;
        double r238860 = r238855 + r238859;
        double r238861 = r238855 / r238860;
        double r238862 = 0.254829592;
        double r238863 = -0.284496736;
        double r238864 = 1.421413741;
        double r238865 = -1.453152027;
        double r238866 = 1.061405429;
        double r238867 = r238861 * r238866;
        double r238868 = r238865 + r238867;
        double r238869 = r238861 * r238868;
        double r238870 = r238864 + r238869;
        double r238871 = r238861 * r238870;
        double r238872 = r238863 + r238871;
        double r238873 = r238861 * r238872;
        double r238874 = r238862 + r238873;
        double r238875 = r238861 * r238874;
        double r238876 = r238858 * r238858;
        double r238877 = -r238876;
        double r238878 = exp(r238877);
        double r238879 = r238875 * r238878;
        double r238880 = r238855 - r238879;
        return r238880;
}

double f(double x) {
        double r238881 = exp(1.0);
        double r238882 = 1.0;
        double r238883 = 0.3275911;
        double r238884 = x;
        double r238885 = fabs(r238884);
        double r238886 = r238883 * r238885;
        double r238887 = r238882 + r238886;
        double r238888 = r238882 / r238887;
        double r238889 = fma(r238885, r238883, r238882);
        double r238890 = r238882 / r238889;
        double r238891 = exp(r238890);
        double r238892 = log(r238891);
        double r238893 = 1.061405429;
        double r238894 = -1.453152027;
        double r238895 = fma(r238892, r238893, r238894);
        double r238896 = 1.421413741;
        double r238897 = fma(r238888, r238895, r238896);
        double r238898 = -0.284496736;
        double r238899 = fma(r238888, r238897, r238898);
        double r238900 = 0.254829592;
        double r238901 = fma(r238888, r238899, r238900);
        double r238902 = r238885 * r238885;
        double r238903 = exp(r238902);
        double r238904 = r238901 / r238903;
        double r238905 = -r238882;
        double r238906 = r238905 / r238889;
        double r238907 = fma(r238904, r238906, r238882);
        double r238908 = log(r238907);
        double r238909 = pow(r238881, r238908);
        return r238909;
}

Error

Bits error versus x

Derivation

  1. Initial program 13.8

    \[1 - \left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(0.2548295919999999936678136691625695675611 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(-0.2844967359999999723108032867457950487733 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(1.421413741000000063863240029604639858007 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot \left(-1.453152027000000012790792425221297889948 + \frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|} \cdot 1.061405428999999900341322245367337018251\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}\]
  2. Simplified13.8

    \[\leadsto \color{blue}{\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)}\]
  3. Using strategy rm
  4. Applied add-log-exp13.8

    \[\leadsto \mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\color{blue}{\log \left(e^{\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}}\right)}, 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\]
  5. Simplified13.8

    \[\leadsto \mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \color{blue}{\left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right)}, 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\]
  6. Using strategy rm
  7. Applied add-exp-log13.8

    \[\leadsto \color{blue}{e^{\log \left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)}}\]
  8. Using strategy rm
  9. Applied pow113.8

    \[\leadsto e^{\log \color{blue}{\left({\left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)}^{1}\right)}}\]
  10. Applied log-pow13.8

    \[\leadsto e^{\color{blue}{1 \cdot \log \left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)}}\]
  11. Applied exp-prod13.8

    \[\leadsto \color{blue}{{\left(e^{1}\right)}^{\left(\log \left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)\right)}}\]
  12. Simplified13.8

    \[\leadsto {\color{blue}{e}}^{\left(\log \left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)\right)}\]
  13. Final simplification13.8

    \[\leadsto {e}^{\left(\log \left(\mathsf{fma}\left(\frac{\mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\frac{1}{1 + 0.3275911000000000239396058532292954623699 \cdot \left|x\right|}, \mathsf{fma}\left(\log \left(e^{\frac{1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}}\right), 1.061405428999999900341322245367337018251, -1.453152027000000012790792425221297889948\right), 1.421413741000000063863240029604639858007\right), -0.2844967359999999723108032867457950487733\right), 0.2548295919999999936678136691625695675611\right)}{e^{\left|x\right| \cdot \left|x\right|}}, \frac{-1}{\mathsf{fma}\left(\left|x\right|, 0.3275911000000000239396058532292954623699, 1\right)}, 1\right)\right)\right)}\]

Reproduce

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