\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\left(\left(\left({a}^{4} + e^{\log \left(\left(a \cdot b\right) \cdot \left(2 \cdot \left(a \cdot b\right)\right)\right)}\right) + {b}^{4}\right) + 4 \cdot \left(b \cdot b\right)\right) - 1double f(double a, double b) {
double r8130276 = a;
double r8130277 = r8130276 * r8130276;
double r8130278 = b;
double r8130279 = r8130278 * r8130278;
double r8130280 = r8130277 + r8130279;
double r8130281 = 2.0;
double r8130282 = pow(r8130280, r8130281);
double r8130283 = 4.0;
double r8130284 = r8130283 * r8130279;
double r8130285 = r8130282 + r8130284;
double r8130286 = 1.0;
double r8130287 = r8130285 - r8130286;
return r8130287;
}
double f(double a, double b) {
double r8130288 = a;
double r8130289 = 4.0;
double r8130290 = pow(r8130288, r8130289);
double r8130291 = b;
double r8130292 = r8130288 * r8130291;
double r8130293 = 2.0;
double r8130294 = r8130293 * r8130292;
double r8130295 = r8130292 * r8130294;
double r8130296 = log(r8130295);
double r8130297 = exp(r8130296);
double r8130298 = r8130290 + r8130297;
double r8130299 = pow(r8130291, r8130289);
double r8130300 = r8130298 + r8130299;
double r8130301 = r8130291 * r8130291;
double r8130302 = r8130289 * r8130301;
double r8130303 = r8130300 + r8130302;
double r8130304 = 1.0;
double r8130305 = r8130303 - r8130304;
return r8130305;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
Simplified0.2
Taylor expanded around 0 0.0
Simplified0.0
rmApplied add-exp-log22.2
Applied add-exp-log22.3
Applied add-exp-log22.3
Applied prod-exp22.3
Applied prod-exp22.3
Simplified0.0
Final simplification0.0
herbie shell --seed 2019134
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1))