\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\left(4 \cdot \left(b \cdot b\right) + \sqrt[3]{{\left(b \cdot b + a \cdot a\right)}^{2}} \cdot \left(\sqrt[3]{{\left(b \cdot b + a \cdot a\right)}^{2}} \cdot \sqrt[3]{{\left(b \cdot b + a \cdot a\right)}^{2}}\right)\right) - 1double f(double a, double b) {
double r144443 = a;
double r144444 = r144443 * r144443;
double r144445 = b;
double r144446 = r144445 * r144445;
double r144447 = r144444 + r144446;
double r144448 = 2.0;
double r144449 = pow(r144447, r144448);
double r144450 = 4.0;
double r144451 = r144450 * r144446;
double r144452 = r144449 + r144451;
double r144453 = 1.0;
double r144454 = r144452 - r144453;
return r144454;
}
double f(double a, double b) {
double r144455 = 4.0;
double r144456 = b;
double r144457 = r144456 * r144456;
double r144458 = r144455 * r144457;
double r144459 = a;
double r144460 = r144459 * r144459;
double r144461 = r144457 + r144460;
double r144462 = 2.0;
double r144463 = pow(r144461, r144462);
double r144464 = cbrt(r144463);
double r144465 = r144464 * r144464;
double r144466 = r144464 * r144465;
double r144467 = r144458 + r144466;
double r144468 = 1.0;
double r144469 = r144467 - r144468;
return r144469;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied add-cube-cbrt0.5
Simplified0.5
Simplified0.5
Final simplification0.5
herbie shell --seed 2019196
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
(- (+ (pow (+ (* a a) (* b b)) 2.0) (* 4.0 (* b b))) 1.0))