Average Error: 0.2 → 0.2
Time: 8.5s
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({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(\sqrt[3]{\left(b \cdot b\right) \cdot \left(3 + a\right)} \cdot \sqrt[3]{\left(b \cdot b\right) \cdot \left(3 + a\right)}\right) \cdot \sqrt[3]{\left(b \cdot b\right) \cdot \left(3 + a\right)}\right)\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({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(\sqrt[3]{\left(b \cdot b\right) \cdot \left(3 + a\right)} \cdot \sqrt[3]{\left(b \cdot b\right) \cdot \left(3 + a\right)}\right) \cdot \sqrt[3]{\left(b \cdot b\right) \cdot \left(3 + a\right)}\right)\right) - 1
double f(double a, double b) {
        double r282070 = a;
        double r282071 = r282070 * r282070;
        double r282072 = b;
        double r282073 = r282072 * r282072;
        double r282074 = r282071 + r282073;
        double r282075 = 2.0;
        double r282076 = pow(r282074, r282075);
        double r282077 = 4.0;
        double r282078 = 1.0;
        double r282079 = r282078 - r282070;
        double r282080 = r282071 * r282079;
        double r282081 = 3.0;
        double r282082 = r282081 + r282070;
        double r282083 = r282073 * r282082;
        double r282084 = r282080 + r282083;
        double r282085 = r282077 * r282084;
        double r282086 = r282076 + r282085;
        double r282087 = r282086 - r282078;
        return r282087;
}

double f(double a, double b) {
        double r282088 = a;
        double r282089 = r282088 * r282088;
        double r282090 = b;
        double r282091 = r282090 * r282090;
        double r282092 = r282089 + r282091;
        double r282093 = 2.0;
        double r282094 = pow(r282092, r282093);
        double r282095 = 4.0;
        double r282096 = 1.0;
        double r282097 = r282096 - r282088;
        double r282098 = r282089 * r282097;
        double r282099 = 3.0;
        double r282100 = r282099 + r282088;
        double r282101 = r282091 * r282100;
        double r282102 = cbrt(r282101);
        double r282103 = r282102 * r282102;
        double r282104 = r282103 * r282102;
        double r282105 = r282098 + r282104;
        double r282106 = r282095 * r282105;
        double r282107 = r282094 + r282106;
        double r282108 = r282107 - r282096;
        return r282108;
}

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.2

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

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

Reproduce

herbie shell --seed 2020035 
(FPCore (a b)
  :name "Bouland and Aaronson, Equation (24)"
  :precision binary64
  (- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1))