\[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|}\]
Test:
Jmat.Real.erf
Bits:
128 bits
Bits error versus x
Time: 41.6 s
Input Error: 13.6
Output Error: 13.6
Log:
Profile: 🕒
\(\log \left(e^{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(\sqrt[3]{-0.284496736 + \left(\frac{\frac{1.061405429}{1 + \left|x\right| \cdot 0.3275911} + -1.453152027}{{\left(1 + \left|x\right| \cdot 0.3275911\right)}^2} + \frac{1.421413741}{1 + \left|x\right| \cdot 0.3275911}\right)}\right)}^3\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}}\right)\)
  1. Started with
    \[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|}\]
    13.6
  2. Using strategy rm
    13.6
  3. Applied add-cube-cbrt to get
    \[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 \color{red}{\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|} \leadsto 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 \color{blue}{{\left(\sqrt[3]{-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)}^3}\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}\]
    13.6
  4. Applied simplify to get
    \[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 {\color{red}{\left(\sqrt[3]{-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)}}^3\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|} \leadsto 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 {\color{blue}{\left(\sqrt[3]{-0.284496736 + \left(\frac{\frac{1.061405429}{1 + \left|x\right| \cdot 0.3275911} + -1.453152027}{{\left(1 + \left|x\right| \cdot 0.3275911\right)}^2} + \frac{1.421413741}{1 + \left|x\right| \cdot 0.3275911}\right)}\right)}}^3\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}\]
    13.6
  5. Using strategy rm
    13.6
  6. Applied add-log-exp to get
    \[\color{red}{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(\sqrt[3]{-0.284496736 + \left(\frac{\frac{1.061405429}{1 + \left|x\right| \cdot 0.3275911} + -1.453152027}{{\left(1 + \left|x\right| \cdot 0.3275911\right)}^2} + \frac{1.421413741}{1 + \left|x\right| \cdot 0.3275911}\right)}\right)}^3\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}} \leadsto \color{blue}{\log \left(e^{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(\sqrt[3]{-0.284496736 + \left(\frac{\frac{1.061405429}{1 + \left|x\right| \cdot 0.3275911} + -1.453152027}{{\left(1 + \left|x\right| \cdot 0.3275911\right)}^2} + \frac{1.421413741}{1 + \left|x\right| \cdot 0.3275911}\right)}\right)}^3\right)\right) \cdot e^{-\left|x\right| \cdot \left|x\right|}}\right)}\]
    13.6

  7. Removed slow pow expressions

Original test:


(lambda ((x default))
  #:name "Jmat.Real.erf"
  (- 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)))))))