Average Error: 0.2 → 0.3
Time: 29.0s
Precision: 64
\[\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\]
\[\left(\left|\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)}\right| \cdot \sqrt{\sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)}} \cdot \sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)}}}\right) \cdot \sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)} - 1\]
\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1
\left(\left|\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)}\right| \cdot \sqrt{\sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)}} \cdot \sqrt[3]{\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)}}}\right) \cdot \sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)} - 1
double f(double a, double b) {
        double r12380065 = a;
        double r12380066 = r12380065 * r12380065;
        double r12380067 = b;
        double r12380068 = r12380067 * r12380067;
        double r12380069 = r12380066 + r12380068;
        double r12380070 = 2.0;
        double r12380071 = pow(r12380069, r12380070);
        double r12380072 = 4.0;
        double r12380073 = r12380072 * r12380068;
        double r12380074 = r12380071 + r12380073;
        double r12380075 = 1.0;
        double r12380076 = r12380074 - r12380075;
        return r12380076;
}

double f(double a, double b) {
        double r12380077 = a;
        double r12380078 = r12380077 * r12380077;
        double r12380079 = b;
        double r12380080 = r12380079 * r12380079;
        double r12380081 = r12380078 + r12380080;
        double r12380082 = 2.0;
        double r12380083 = pow(r12380081, r12380082);
        double r12380084 = 4.0;
        double r12380085 = r12380084 * r12380080;
        double r12380086 = r12380083 + r12380085;
        double r12380087 = cbrt(r12380086);
        double r12380088 = fabs(r12380087);
        double r12380089 = sqrt(r12380086);
        double r12380090 = cbrt(r12380089);
        double r12380091 = r12380090 * r12380090;
        double r12380092 = sqrt(r12380091);
        double r12380093 = r12380088 * r12380092;
        double r12380094 = r12380093 * r12380089;
        double r12380095 = 1.0;
        double r12380096 = r12380094 - r12380095;
        return r12380096;
}

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(b \cdot b\right)\right) - 1\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt0.2

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

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

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

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

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

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

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

Reproduce

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