\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(1 - 3 \cdot a\right)\right)\right) - 1\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(a \cdot \left(a \cdot \left(1 + a\right)\right) + \left(\sqrt[3]{\left(b \cdot b\right) \cdot \left(1 - 3 \cdot a\right)} \cdot \sqrt[3]{\left(b \cdot b\right) \cdot \left(1 - 3 \cdot a\right)}\right) \cdot \sqrt[3]{\left(b \cdot b\right) \cdot \left(1 - 3 \cdot a\right)}\right)\right) - 1double f(double a, double b) {
double r277774 = a;
double r277775 = r277774 * r277774;
double r277776 = b;
double r277777 = r277776 * r277776;
double r277778 = r277775 + r277777;
double r277779 = 2.0;
double r277780 = pow(r277778, r277779);
double r277781 = 4.0;
double r277782 = 1.0;
double r277783 = r277782 + r277774;
double r277784 = r277775 * r277783;
double r277785 = 3.0;
double r277786 = r277785 * r277774;
double r277787 = r277782 - r277786;
double r277788 = r277777 * r277787;
double r277789 = r277784 + r277788;
double r277790 = r277781 * r277789;
double r277791 = r277780 + r277790;
double r277792 = r277791 - r277782;
return r277792;
}
double f(double a, double b) {
double r277793 = a;
double r277794 = r277793 * r277793;
double r277795 = b;
double r277796 = r277795 * r277795;
double r277797 = r277794 + r277796;
double r277798 = 2.0;
double r277799 = pow(r277797, r277798);
double r277800 = 4.0;
double r277801 = 1.0;
double r277802 = r277801 + r277793;
double r277803 = r277793 * r277802;
double r277804 = r277793 * r277803;
double r277805 = 3.0;
double r277806 = r277805 * r277793;
double r277807 = r277801 - r277806;
double r277808 = r277796 * r277807;
double r277809 = cbrt(r277808);
double r277810 = r277809 * r277809;
double r277811 = r277810 * r277809;
double r277812 = r277804 + r277811;
double r277813 = r277800 * r277812;
double r277814 = r277799 + r277813;
double r277815 = r277814 - r277801;
return r277815;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied associate-*l*0.2
rmApplied add-cube-cbrt0.2
Final simplification0.2
herbie shell --seed 2019347 +o rules:numerics
(FPCore (a b)
:name "Bouland and Aaronson, Equation (25)"
:precision binary64
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (+ 1 a)) (* (* b b) (- 1 (* 3 a)))))) 1))