\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]{a \cdot a + b \cdot b} \cdot \sqrt[3]{a \cdot a + b \cdot b}\right)}^{2} \cdot {\left(\sqrt[3]{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 r357229 = a;
double r357230 = r357229 * r357229;
double r357231 = b;
double r357232 = r357231 * r357231;
double r357233 = r357230 + r357232;
double r357234 = 2.0;
double r357235 = pow(r357233, r357234);
double r357236 = 4.0;
double r357237 = 1.0;
double r357238 = r357237 - r357229;
double r357239 = r357230 * r357238;
double r357240 = 3.0;
double r357241 = r357240 + r357229;
double r357242 = r357232 * r357241;
double r357243 = r357239 + r357242;
double r357244 = r357236 * r357243;
double r357245 = r357235 + r357244;
double r357246 = r357245 - r357237;
return r357246;
}
double f(double a, double b) {
double r357247 = a;
double r357248 = r357247 * r357247;
double r357249 = b;
double r357250 = r357249 * r357249;
double r357251 = r357248 + r357250;
double r357252 = cbrt(r357251);
double r357253 = r357252 * r357252;
double r357254 = 2.0;
double r357255 = pow(r357253, r357254);
double r357256 = pow(r357252, r357254);
double r357257 = r357255 * r357256;
double r357258 = 4.0;
double r357259 = 1.0;
double r357260 = r357259 - r357247;
double r357261 = r357248 * r357260;
double r357262 = 3.0;
double r357263 = r357262 + r357247;
double r357264 = r357250 * r357263;
double r357265 = r357261 + r357264;
double r357266 = r357258 * r357265;
double r357267 = r357257 + r357266;
double r357268 = r357267 - r357259;
return r357268;
}



Bits error versus a



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