\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\mathsf{fma}\left(\left(\mathsf{fma}\left(a, a, \left(b \cdot b\right)\right)\right), \left(\mathsf{fma}\left(a, a, \left(b \cdot b\right)\right)\right), \left(\mathsf{fma}\left(\left(b \cdot b\right), 4, -1\right)\right)\right)double f(double a, double b) {
double r54464272 = a;
double r54464273 = r54464272 * r54464272;
double r54464274 = b;
double r54464275 = r54464274 * r54464274;
double r54464276 = r54464273 + r54464275;
double r54464277 = 2.0;
double r54464278 = pow(r54464276, r54464277);
double r54464279 = 4.0;
double r54464280 = r54464279 * r54464275;
double r54464281 = r54464278 + r54464280;
double r54464282 = 1.0;
double r54464283 = r54464281 - r54464282;
return r54464283;
}
double f(double a, double b) {
double r54464284 = a;
double r54464285 = b;
double r54464286 = r54464285 * r54464285;
double r54464287 = fma(r54464284, r54464284, r54464286);
double r54464288 = 4.0;
double r54464289 = -1.0;
double r54464290 = fma(r54464286, r54464288, r54464289);
double r54464291 = fma(r54464287, r54464287, r54464290);
return r54464291;
}



Bits error versus a



Bits error versus b
Initial program 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019120 +o rules:numerics
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1))