\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(a \cdot a\right) \cdot \left(1 + a\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 r241941 = a;
double r241942 = r241941 * r241941;
double r241943 = b;
double r241944 = r241943 * r241943;
double r241945 = r241942 + r241944;
double r241946 = 2.0;
double r241947 = pow(r241945, r241946);
double r241948 = 4.0;
double r241949 = 1.0;
double r241950 = r241949 + r241941;
double r241951 = r241942 * r241950;
double r241952 = 3.0;
double r241953 = r241952 * r241941;
double r241954 = r241949 - r241953;
double r241955 = r241944 * r241954;
double r241956 = r241951 + r241955;
double r241957 = r241948 * r241956;
double r241958 = r241947 + r241957;
double r241959 = r241958 - r241949;
return r241959;
}
double f(double a, double b) {
double r241960 = a;
double r241961 = r241960 * r241960;
double r241962 = b;
double r241963 = r241962 * r241962;
double r241964 = r241961 + r241963;
double r241965 = 2.0;
double r241966 = pow(r241964, r241965);
double r241967 = 4.0;
double r241968 = 1.0;
double r241969 = r241968 + r241960;
double r241970 = r241961 * r241969;
double r241971 = 3.0;
double r241972 = r241971 * r241960;
double r241973 = r241968 - r241972;
double r241974 = r241963 * r241973;
double r241975 = cbrt(r241974);
double r241976 = r241975 * r241975;
double r241977 = r241976 * r241975;
double r241978 = r241970 + r241977;
double r241979 = r241967 * r241978;
double r241980 = r241966 + r241979;
double r241981 = r241980 - r241968;
return r241981;
}



Bits error versus a



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