Average Error: 0.2 → 0.5
Time: 24.2s
Precision: 64
\[\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1\]
\[\left(4 \cdot \left(\left(3 + a\right) \cdot \left(b \cdot b\right) + \left(a \cdot a\right) \cdot \left(1 - a\right)\right) + \left(\sqrt[3]{\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \left(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right)} \cdot \left(\sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}}\right)\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right) - 1\]
\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1
\left(4 \cdot \left(\left(3 + a\right) \cdot \left(b \cdot b\right) + \left(a \cdot a\right) \cdot \left(1 - a\right)\right) + \left(\sqrt[3]{\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \left(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right)} \cdot \left(\sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}}\right)\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right) - 1
double f(double a, double b) {
        double r12133674 = a;
        double r12133675 = r12133674 * r12133674;
        double r12133676 = b;
        double r12133677 = r12133676 * r12133676;
        double r12133678 = r12133675 + r12133677;
        double r12133679 = 2.0;
        double r12133680 = pow(r12133678, r12133679);
        double r12133681 = 4.0;
        double r12133682 = 1.0;
        double r12133683 = r12133682 - r12133674;
        double r12133684 = r12133675 * r12133683;
        double r12133685 = 3.0;
        double r12133686 = r12133685 + r12133674;
        double r12133687 = r12133677 * r12133686;
        double r12133688 = r12133684 + r12133687;
        double r12133689 = r12133681 * r12133688;
        double r12133690 = r12133680 + r12133689;
        double r12133691 = r12133690 - r12133682;
        return r12133691;
}

double f(double a, double b) {
        double r12133692 = 4.0;
        double r12133693 = 3.0;
        double r12133694 = a;
        double r12133695 = r12133693 + r12133694;
        double r12133696 = b;
        double r12133697 = r12133696 * r12133696;
        double r12133698 = r12133695 * r12133697;
        double r12133699 = r12133694 * r12133694;
        double r12133700 = 1.0;
        double r12133701 = r12133700 - r12133694;
        double r12133702 = r12133699 * r12133701;
        double r12133703 = r12133698 + r12133702;
        double r12133704 = r12133692 * r12133703;
        double r12133705 = r12133699 + r12133697;
        double r12133706 = 2.0;
        double r12133707 = pow(r12133705, r12133706);
        double r12133708 = cbrt(r12133707);
        double r12133709 = r12133708 * r12133708;
        double r12133710 = r12133708 * r12133709;
        double r12133711 = cbrt(r12133710);
        double r12133712 = sqrt(r12133707);
        double r12133713 = cbrt(r12133712);
        double r12133714 = r12133713 * r12133713;
        double r12133715 = r12133711 * r12133714;
        double r12133716 = r12133715 * r12133708;
        double r12133717 = r12133704 + r12133716;
        double r12133718 = r12133717 - r12133700;
        return r12133718;
}

Error

Bits error versus a

Bits error versus b

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

    \[\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1\]
  2. Using strategy rm
  3. Applied add-cube-cbrt0.5

    \[\leadsto \left(\color{blue}{\left(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1\]
  4. Using strategy rm
  5. Applied add-sqr-sqrt0.5

    \[\leadsto \left(\left(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{\color{blue}{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}}}\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1\]
  6. Applied cbrt-prod0.5

    \[\leadsto \left(\left(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \color{blue}{\left(\sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}}\right)}\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1\]
  7. Using strategy rm
  8. Applied add-cbrt-cube0.5

    \[\leadsto \left(\left(\color{blue}{\sqrt[3]{\left(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}}} \cdot \left(\sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}}\right)\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1\]
  9. Final simplification0.5

    \[\leadsto \left(4 \cdot \left(\left(3 + a\right) \cdot \left(b \cdot b\right) + \left(a \cdot a\right) \cdot \left(1 - a\right)\right) + \left(\sqrt[3]{\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \left(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right)} \cdot \left(\sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}} \cdot \sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2}}}\right)\right) \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right) - 1\]

Reproduce

herbie shell --seed 2019174 
(FPCore (a b)
  :name "Bouland and Aaronson, Equation (24)"
  (- (+ (pow (+ (* a a) (* b b)) 2.0) (* 4.0 (+ (* (* a a) (- 1.0 a)) (* (* b b) (+ 3.0 a))))) 1.0))