\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(\frac{\left(a \cdot a\right) \cdot \left(1 \cdot 1 - a \cdot a\right)}{1 + a} + \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) - 1double f(double a, double b) {
double r427893 = a;
double r427894 = r427893 * r427893;
double r427895 = b;
double r427896 = r427895 * r427895;
double r427897 = r427894 + r427896;
double r427898 = 2.0;
double r427899 = pow(r427897, r427898);
double r427900 = 4.0;
double r427901 = 1.0;
double r427902 = r427901 - r427893;
double r427903 = r427894 * r427902;
double r427904 = 3.0;
double r427905 = r427904 + r427893;
double r427906 = r427896 * r427905;
double r427907 = r427903 + r427906;
double r427908 = r427900 * r427907;
double r427909 = r427899 + r427908;
double r427910 = r427909 - r427901;
return r427910;
}
double f(double a, double b) {
double r427911 = a;
double r427912 = r427911 * r427911;
double r427913 = b;
double r427914 = r427913 * r427913;
double r427915 = r427912 + r427914;
double r427916 = 2.0;
double r427917 = pow(r427915, r427916);
double r427918 = 4.0;
double r427919 = 1.0;
double r427920 = r427919 * r427919;
double r427921 = r427920 - r427912;
double r427922 = r427912 * r427921;
double r427923 = r427919 + r427911;
double r427924 = r427922 / r427923;
double r427925 = 3.0;
double r427926 = r427925 + r427911;
double r427927 = r427914 * r427926;
double r427928 = cbrt(r427927);
double r427929 = r427928 * r427928;
double r427930 = r427929 * r427928;
double r427931 = r427924 + r427930;
double r427932 = r427918 * r427931;
double r427933 = r427917 + r427932;
double r427934 = r427933 - r427919;
return r427934;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied flip--0.2
Applied associate-*r/0.2
rmApplied add-cube-cbrt0.2
Final simplification0.2
herbie shell --seed 2020047 +o rules:numerics
(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))