\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(\left(\left(a \cdot a\right) \cdot \left(\sqrt[3]{1 + a} \cdot \sqrt[3]{1 + a}\right)\right) \cdot \sqrt[3]{1 + a} + \left(b \cdot b\right) \cdot \left(1 - 3 \cdot a\right)\right)\right) - 1double f(double a, double b) {
double r233914 = a;
double r233915 = r233914 * r233914;
double r233916 = b;
double r233917 = r233916 * r233916;
double r233918 = r233915 + r233917;
double r233919 = 2.0;
double r233920 = pow(r233918, r233919);
double r233921 = 4.0;
double r233922 = 1.0;
double r233923 = r233922 + r233914;
double r233924 = r233915 * r233923;
double r233925 = 3.0;
double r233926 = r233925 * r233914;
double r233927 = r233922 - r233926;
double r233928 = r233917 * r233927;
double r233929 = r233924 + r233928;
double r233930 = r233921 * r233929;
double r233931 = r233920 + r233930;
double r233932 = r233931 - r233922;
return r233932;
}
double f(double a, double b) {
double r233933 = a;
double r233934 = r233933 * r233933;
double r233935 = b;
double r233936 = r233935 * r233935;
double r233937 = r233934 + r233936;
double r233938 = 2.0;
double r233939 = pow(r233937, r233938);
double r233940 = 4.0;
double r233941 = 1.0;
double r233942 = r233941 + r233933;
double r233943 = cbrt(r233942);
double r233944 = r233943 * r233943;
double r233945 = r233934 * r233944;
double r233946 = r233945 * r233943;
double r233947 = 3.0;
double r233948 = r233947 * r233933;
double r233949 = r233941 - r233948;
double r233950 = r233936 * r233949;
double r233951 = r233946 + r233950;
double r233952 = r233940 * r233951;
double r233953 = r233939 + r233952;
double r233954 = r233953 - r233941;
return r233954;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied add-cube-cbrt0.2
Applied associate-*r*0.2
Final simplification0.2
herbie shell --seed 2020036
(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))