Average Error: 13.9 → 13.7
Time: 58.9s
Precision: binary64
\[1 - \left(\frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(0.254829592 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(-0.284496736 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(1.421413741 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(-1.453152027 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot 1.061405429\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|} \]
\[\begin{array}{l} t_0 := e^{x \cdot x}\\ t_1 := \sqrt[3]{\mathsf{log1p}\left(\frac{-0.254829592 - \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, x, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right) \cdot t_0}\right)}\\ t_2 := \mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)\\ {\left(e^{t_1 \cdot t_1}\right)}^{\left(\sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{-1.453152027 + \frac{1.061405429}{t_2}}{t_2}}{t_2}}{t_2}}\right)}{t_0 \cdot t_2}}\right)}\right)} \end{array} \]
1 - \left(\frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(0.254829592 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(-0.284496736 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(1.421413741 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(-1.453152027 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot 1.061405429\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}
\begin{array}{l}
t_0 := e^{x \cdot x}\\
t_1 := \sqrt[3]{\mathsf{log1p}\left(\frac{-0.254829592 - \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, x, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right) \cdot t_0}\right)}\\
t_2 := \mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)\\
{\left(e^{t_1 \cdot t_1}\right)}^{\left(\sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{-1.453152027 + \frac{1.061405429}{t_2}}{t_2}}{t_2}}{t_2}}\right)}{t_0 \cdot t_2}}\right)}\right)}
\end{array}
(FPCore (x)
 :precision binary64
 (-
  1.0
  (*
   (*
    (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))
    (+
     0.254829592
     (*
      (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))
      (+
       -0.284496736
       (*
        (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))
        (+
         1.421413741
         (*
          (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x))))
          (+
           -1.453152027
           (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429)))))))))
   (exp (- (* (fabs x) (fabs x)))))))
(FPCore (x)
 :precision binary64
 (let* ((t_0 (exp (* x x)))
        (t_1
         (cbrt
          (log1p
           (/
            (-
             -0.254829592
             (/
              (+
               -0.284496736
               (/
                (+
                 1.421413741
                 (/
                  (+ (/ 1.061405429 (fma 0.3275911 x 1.0)) -1.453152027)
                  (fma 0.3275911 x 1.0)))
                (fma 0.3275911 x 1.0)))
              (fma 0.3275911 x 1.0)))
            (* (fma 0.3275911 x 1.0) t_0)))))
        (t_2 (fma 0.3275911 (fabs x) 1.0)))
   (pow
    (exp (* t_1 t_1))
    (cbrt
     (log
      (log
       (exp
        (-
         1.0
         (/
          (log
           (exp
            (+
             0.254829592
             (/
              (+
               -0.284496736
               (/
                (+ 1.421413741 (/ (+ -1.453152027 (/ 1.061405429 t_2)) t_2))
                t_2))
              t_2))))
          (* t_0 t_2))))))))))
double code(double x) {
	return 1.0 - (((1.0 / (1.0 + (0.3275911 * fabs(x)))) * (0.254829592 + ((1.0 / (1.0 + (0.3275911 * fabs(x)))) * (-0.284496736 + ((1.0 / (1.0 + (0.3275911 * fabs(x)))) * (1.421413741 + ((1.0 / (1.0 + (0.3275911 * fabs(x)))) * (-1.453152027 + ((1.0 / (1.0 + (0.3275911 * fabs(x)))) * 1.061405429))))))))) * exp(-(fabs(x) * fabs(x))));
}
double code(double x) {
	double t_0 = exp(x * x);
	double t_1 = cbrt(log1p((-0.254829592 - ((-0.284496736 + ((1.421413741 + (((1.061405429 / fma(0.3275911, x, 1.0)) + -1.453152027) / fma(0.3275911, x, 1.0))) / fma(0.3275911, x, 1.0))) / fma(0.3275911, x, 1.0))) / (fma(0.3275911, x, 1.0) * t_0)));
	double t_2 = fma(0.3275911, fabs(x), 1.0);
	return pow(exp(t_1 * t_1), cbrt(log(log(exp(1.0 - (log(exp(0.254829592 + ((-0.284496736 + ((1.421413741 + ((-1.453152027 + (1.061405429 / t_2)) / t_2)) / t_2)) / t_2))) / (t_0 * t_2)))))));
}

Error

Bits error versus x

Derivation

  1. Initial program 13.9

    \[1 - \left(\frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(0.254829592 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(-0.284496736 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(1.421413741 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot \left(-1.453152027 + \frac{1}{1 + 0.3275911 \cdot \left|x\right|} \cdot 1.061405429\right)\right)\right)\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|} \]
  2. Simplified13.9

    \[\leadsto \color{blue}{1 - \frac{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{-1.453152027 + \frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}} \]
  3. Applied add-log-exp_binary6413.9

    \[\leadsto 1 - \color{blue}{\log \left(e^{\frac{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{-1.453152027 + \frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)} \]
  4. Applied add-log-exp_binary6413.9

    \[\leadsto \color{blue}{\log \left(e^{1}\right)} - \log \left(e^{\frac{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{-1.453152027 + \frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right) \]
  5. Applied diff-log_binary6414.7

    \[\leadsto \color{blue}{\log \left(\frac{e^{1}}{e^{\frac{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{-1.453152027 + \frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}}\right)} \]
  6. Simplified13.9

    \[\leadsto \log \color{blue}{\left(e^{1 - \frac{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)} \]
  7. Applied add-log-exp_binary6413.9

    \[\leadsto \log \left(e^{1 - \frac{0.254829592 + \color{blue}{\log \left(e^{\frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right) \]
  8. Applied add-log-exp_binary6413.9

    \[\leadsto \log \left(e^{1 - \frac{\color{blue}{\log \left(e^{0.254829592}\right)} + \log \left(e^{\frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right) \]
  9. Applied sum-log_binary6413.9

    \[\leadsto \log \left(e^{1 - \frac{\color{blue}{\log \left(e^{0.254829592} \cdot e^{\frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right) \]
  10. Simplified13.9

    \[\leadsto \log \left(e^{1 - \frac{\log \color{blue}{\left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right) \]
  11. Applied add-exp-log_binary6413.9

    \[\leadsto \color{blue}{e^{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)}} \]
  12. Applied add-cube-cbrt_binary6413.9

    \[\leadsto e^{\color{blue}{\left(\sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)} \cdot \sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)}\right) \cdot \sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)}}} \]
  13. Applied exp-prod_binary6413.9

    \[\leadsto \color{blue}{{\left(e^{\sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)} \cdot \sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)}}\right)}^{\left(\sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)}\right)}} \]
  14. Simplified13.7

    \[\leadsto {\color{blue}{\left(e^{\sqrt[3]{\mathsf{log1p}\left(-\frac{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, x, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right) \cdot e^{x \cdot x}}\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(-\frac{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, x, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right) \cdot e^{x \cdot x}}\right)}}\right)}}^{\left(\sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right) \cdot e^{x \cdot x}}}\right)}\right)} \]
  15. Final simplification13.7

    \[\leadsto {\left(e^{\sqrt[3]{\mathsf{log1p}\left(\frac{-0.254829592 - \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, x, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right) \cdot e^{x \cdot x}}\right)} \cdot \sqrt[3]{\mathsf{log1p}\left(\frac{-0.254829592 - \frac{-0.284496736 + \frac{1.421413741 + \frac{\frac{1.061405429}{\mathsf{fma}\left(0.3275911, x, 1\right)} + -1.453152027}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right)}}{\mathsf{fma}\left(0.3275911, x, 1\right) \cdot e^{x \cdot x}}\right)}}\right)}^{\left(\sqrt[3]{\log \log \left(e^{1 - \frac{\log \left(e^{0.254829592 + \frac{-0.284496736 + \frac{1.421413741 + \frac{-1.453152027 + \frac{1.061405429}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}{\mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}{e^{x \cdot x} \cdot \mathsf{fma}\left(0.3275911, \left|x\right|, 1\right)}}\right)}\right)} \]

Reproduce

herbie shell --seed 2021224 
(FPCore (x)
  :name "Jmat.Real.erf"
  :precision binary64
  (- 1.0 (* (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 0.254829592 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -0.284496736 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ 1.421413741 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) (+ -1.453152027 (* (/ 1.0 (+ 1.0 (* 0.3275911 (fabs x)))) 1.061405429))))))))) (exp (- (* (fabs x) (fabs x)))))))