Average Error: 0.2 → 0.2
Time: 32.2s
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|\left(\left(\left(\left|x\right| \cdot \left(\left|x\right| \cdot \left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(\left(\left|x\right| \cdot \left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) \cdot \frac{1}{5} + \left(\left(\sqrt[3]{2} \cdot \sqrt[3]{2}\right) \cdot \left(\frac{\sqrt[3]{2}}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \left|x\right| \cdot 2\right)\right)\right) \cdot \frac{1}{\sqrt{\pi}}\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|\left(\left(\left(\left|x\right| \cdot \left(\left|x\right| \cdot \left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right)\right) \cdot \left|x\right|\right) \cdot \frac{1}{21} + \left(\left(\left|x\right| \cdot \left(\left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) \cdot \frac{1}{5} + \left(\left(\sqrt[3]{2} \cdot \sqrt[3]{2}\right) \cdot \left(\frac{\sqrt[3]{2}}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\right)\right) + \left|x\right| \cdot 2\right)\right)\right) \cdot \frac{1}{\sqrt{\pi}}\right|
double f(double x) {
        double r5800545 = 1.0;
        double r5800546 = atan2(1.0, 0.0);
        double r5800547 = sqrt(r5800546);
        double r5800548 = r5800545 / r5800547;
        double r5800549 = 2.0;
        double r5800550 = x;
        double r5800551 = fabs(r5800550);
        double r5800552 = r5800549 * r5800551;
        double r5800553 = 3.0;
        double r5800554 = r5800549 / r5800553;
        double r5800555 = r5800551 * r5800551;
        double r5800556 = r5800555 * r5800551;
        double r5800557 = r5800554 * r5800556;
        double r5800558 = r5800552 + r5800557;
        double r5800559 = 5.0;
        double r5800560 = r5800545 / r5800559;
        double r5800561 = r5800556 * r5800551;
        double r5800562 = r5800561 * r5800551;
        double r5800563 = r5800560 * r5800562;
        double r5800564 = r5800558 + r5800563;
        double r5800565 = 21.0;
        double r5800566 = r5800545 / r5800565;
        double r5800567 = r5800562 * r5800551;
        double r5800568 = r5800567 * r5800551;
        double r5800569 = r5800566 * r5800568;
        double r5800570 = r5800564 + r5800569;
        double r5800571 = r5800548 * r5800570;
        double r5800572 = fabs(r5800571);
        return r5800572;
}

double f(double x) {
        double r5800573 = x;
        double r5800574 = fabs(r5800573);
        double r5800575 = r5800574 * r5800574;
        double r5800576 = r5800575 * r5800574;
        double r5800577 = r5800576 * r5800574;
        double r5800578 = r5800574 * r5800577;
        double r5800579 = r5800574 * r5800578;
        double r5800580 = r5800579 * r5800574;
        double r5800581 = 1.0;
        double r5800582 = 21.0;
        double r5800583 = r5800581 / r5800582;
        double r5800584 = r5800580 * r5800583;
        double r5800585 = 5.0;
        double r5800586 = r5800581 / r5800585;
        double r5800587 = r5800578 * r5800586;
        double r5800588 = 2.0;
        double r5800589 = cbrt(r5800588);
        double r5800590 = r5800589 * r5800589;
        double r5800591 = 3.0;
        double r5800592 = r5800589 / r5800591;
        double r5800593 = r5800592 * r5800576;
        double r5800594 = r5800590 * r5800593;
        double r5800595 = r5800574 * r5800588;
        double r5800596 = r5800594 + r5800595;
        double r5800597 = r5800587 + r5800596;
        double r5800598 = r5800584 + r5800597;
        double r5800599 = atan2(1.0, 0.0);
        double r5800600 = sqrt(r5800599);
        double r5800601 = r5800581 / r5800600;
        double r5800602 = r5800598 * r5800601;
        double r5800603 = fabs(r5800602);
        return r5800603;
}

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 *-un-lft-identity0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{2}{\color{blue}{1 \cdot 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|\]
  4. Applied add-cube-cbrt0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \frac{\color{blue}{\left(\sqrt[3]{2} \cdot \sqrt[3]{2}\right) \cdot \sqrt[3]{2}}}{1 \cdot 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|\]
  5. Applied times-frac0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \color{blue}{\left(\frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1} \cdot \frac{\sqrt[3]{2}}{3}\right)} \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|\]
  6. Applied associate-*l*0.2

    \[\leadsto \left|\frac{1}{\sqrt{\pi}} \cdot \left(\left(\left(2 \cdot \left|x\right| + \color{blue}{\frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1} \cdot \left(\frac{\sqrt[3]{2}}{3} \cdot \left(\left(\left|x\right| \cdot \left|x\right|\right) \cdot \left|x\right|\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|\]
  7. Final simplification0.2

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

Reproduce

herbie shell --seed 2019192 
(FPCore (x)
  :name "Jmat.Real.erfi, branch x less than or equal to 0.5"
  (fabs (* (/ 1.0 (sqrt PI)) (+ (+ (+ (* 2.0 (fabs x)) (* (/ 2.0 3.0) (* (* (fabs x) (fabs x)) (fabs x)))) (* (/ 1.0 5.0) (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)))) (* (/ 1.0 21.0) (* (* (* (* (* (* (fabs x) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)) (fabs x)))))))