\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(\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(1 - 3 \cdot a\right)\right)\right) - 1double f(double a, double b) {
double r201243 = a;
double r201244 = r201243 * r201243;
double r201245 = b;
double r201246 = r201245 * r201245;
double r201247 = r201244 + r201246;
double r201248 = 2.0;
double r201249 = pow(r201247, r201248);
double r201250 = 4.0;
double r201251 = 1.0;
double r201252 = r201251 + r201243;
double r201253 = r201244 * r201252;
double r201254 = 3.0;
double r201255 = r201254 * r201243;
double r201256 = r201251 - r201255;
double r201257 = r201246 * r201256;
double r201258 = r201253 + r201257;
double r201259 = r201250 * r201258;
double r201260 = r201249 + r201259;
double r201261 = r201260 - r201251;
return r201261;
}
double f(double a, double b) {
double r201262 = a;
double r201263 = r201262 * r201262;
double r201264 = b;
double r201265 = r201264 * r201264;
double r201266 = r201263 + r201265;
double r201267 = cbrt(r201266);
double r201268 = r201267 * r201267;
double r201269 = 2.0;
double r201270 = pow(r201268, r201269);
double r201271 = pow(r201267, r201269);
double r201272 = r201270 * r201271;
double r201273 = 4.0;
double r201274 = 1.0;
double r201275 = r201274 + r201262;
double r201276 = r201263 * r201275;
double r201277 = 3.0;
double r201278 = r201277 * r201262;
double r201279 = r201274 - r201278;
double r201280 = r201265 * r201279;
double r201281 = r201276 + r201280;
double r201282 = r201273 * r201281;
double r201283 = r201272 + r201282;
double r201284 = r201283 - r201274;
return r201284;
}



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 2020001
(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))