\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(\sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}} \cdot \sqrt[3]{{\left(a \cdot a + b \cdot b\right)}^{2}}\right) \cdot \sqrt[3]{{\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) - 1double f(double a, double b) {
double r200844 = a;
double r200845 = r200844 * r200844;
double r200846 = b;
double r200847 = r200846 * r200846;
double r200848 = r200845 + r200847;
double r200849 = 2.0;
double r200850 = pow(r200848, r200849);
double r200851 = 4.0;
double r200852 = 1.0;
double r200853 = r200852 - r200844;
double r200854 = r200845 * r200853;
double r200855 = 3.0;
double r200856 = r200855 + r200844;
double r200857 = r200847 * r200856;
double r200858 = r200854 + r200857;
double r200859 = r200851 * r200858;
double r200860 = r200850 + r200859;
double r200861 = r200860 - r200852;
return r200861;
}
double f(double a, double b) {
double r200862 = a;
double r200863 = r200862 * r200862;
double r200864 = b;
double r200865 = r200864 * r200864;
double r200866 = r200863 + r200865;
double r200867 = 2.0;
double r200868 = pow(r200866, r200867);
double r200869 = cbrt(r200868);
double r200870 = r200869 * r200869;
double r200871 = r200870 * r200869;
double r200872 = 4.0;
double r200873 = 1.0;
double r200874 = r200873 - r200862;
double r200875 = r200863 * r200874;
double r200876 = 3.0;
double r200877 = r200876 + r200862;
double r200878 = r200865 * r200877;
double r200879 = r200875 + r200878;
double r200880 = r200872 * r200879;
double r200881 = r200871 + r200880;
double r200882 = r200881 - r200873;
return r200882;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied add-cube-cbrt0.5
Final simplification0.5
herbie shell --seed 2020062
(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))