Average Error: 0.2 → 0.2
Time: 4.7s
Precision: 64
\[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
\[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right| \cdot \left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}} \cdot \sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}}\right) \cdot \sqrt{\left|x\right|}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|
\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right| \cdot \left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}} \cdot \sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}}\right) \cdot \sqrt{\left|x\right|}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|
double f(double x) {
        double r137987 = 1.0;
        double r137988 = atan2(1.0, 0.0);
        double r137989 = sqrt(r137988);
        double r137990 = r137987 / r137989;
        double r137991 = 2.0;
        double r137992 = x;
        double r137993 = fabs(r137992);
        double r137994 = r137991 * r137993;
        double r137995 = 3.0;
        double r137996 = r137991 / r137995;
        double r137997 = r137993 * r137993;
        double r137998 = r137997 * r137993;
        double r137999 = r137996 * r137998;
        double r138000 = r137994 + r137999;
        double r138001 = 5.0;
        double r138002 = r137987 / r138001;
        double r138003 = r137998 * r137993;
        double r138004 = r138003 * r137993;
        double r138005 = r138002 * r138004;
        double r138006 = r138000 + r138005;
        double r138007 = 21.0;
        double r138008 = r137987 / r138007;
        double r138009 = r138004 * r137993;
        double r138010 = r138009 * r137993;
        double r138011 = r138008 * r138010;
        double r138012 = r138006 + r138011;
        double r138013 = r137990 * r138012;
        double r138014 = fabs(r138013);
        return r138014;
}

double f(double x) {
        double r138015 = 1.0;
        double r138016 = atan2(1.0, 0.0);
        double r138017 = sqrt(r138016);
        double r138018 = r138015 / r138017;
        double r138019 = 2.0;
        double r138020 = x;
        double r138021 = fabs(r138020);
        double r138022 = r138019 * r138021;
        double r138023 = 3.0;
        double r138024 = r138019 / r138023;
        double r138025 = r138021 * r138021;
        double r138026 = r138025 * r138021;
        double r138027 = r138024 * r138026;
        double r138028 = r138022 + r138027;
        double r138029 = 5.0;
        double r138030 = r138015 / r138029;
        double r138031 = 1.5;
        double r138032 = pow(r138021, r138031);
        double r138033 = fabs(r138032);
        double r138034 = r138033 * r138033;
        double r138035 = r138034 * r138021;
        double r138036 = r138035 * r138021;
        double r138037 = r138030 * r138036;
        double r138038 = r138028 + r138037;
        double r138039 = 21.0;
        double r138040 = r138015 / r138039;
        double r138041 = sqrt(r138021);
        double r138042 = r138025 * r138041;
        double r138043 = sqrt(r138042);
        double r138044 = r138043 * r138043;
        double r138045 = r138044 * r138041;
        double r138046 = r138045 * r138021;
        double r138047 = r138046 * r138021;
        double r138048 = r138047 * r138021;
        double r138049 = r138048 * r138021;
        double r138050 = r138040 * r138049;
        double r138051 = r138038 + r138050;
        double r138052 = r138018 * r138051;
        double r138053 = fabs(r138052);
        return r138053;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

    \[\left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\color{blue}{\left(\sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|} \cdot \sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|}\right)} \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  4. Simplified0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\color{blue}{\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|} \cdot \sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  5. Simplified0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right| \cdot \color{blue}{\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  6. Using strategy rm
  7. Applied add-sqr-sqrt0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right| \cdot \left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \color{blue}{\left(\sqrt{\left|x\right|} \cdot \sqrt{\left|x\right|}\right)}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  8. Applied associate-*r*0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right| \cdot \left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\color{blue}{\left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}\right) \cdot \sqrt{\left|x\right|}\right)} \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  9. Using strategy rm
  10. Applied add-sqr-sqrt0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right| \cdot \left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\color{blue}{\left(\sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}} \cdot \sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}}\right)} \cdot \sqrt{\left|x\right|}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]
  11. Final simplification0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{5} \cdot \left(\left(\left(\left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right| \cdot \left|{\left(\left|x\right|\right)}^{\frac{3}{2}}\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \frac{1}{21} \cdot \left(\left(\left(\left(\left(\left(\sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}} \cdot \sqrt{\left(\left|x\right| \cdot \left|x\right|\right) \cdot \sqrt{\left|x\right|}}\right) \cdot \sqrt{\left|x\right|}\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right|\]

Reproduce

herbie shell --seed 2019352 
(FPCore (x)
  :name "Jmat.Real.erfi, branch x less than or equal to 0.5"
  :precision binary64
  (fabs (* (/ 1 (sqrt PI)) (+ (+ (+ (* 2 (fabs x)) (* (/ 2 3) (* (* (fabs x) (fabs x)) (fabs x)))) (* (/ 1 5) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1 21) (* (* (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)))))))