\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\left({a}^{4} + \left({b}^{4} + 2 \cdot \left({a}^{2} \cdot {b}^{2}\right)\right)\right) - 1double f(double a, double b) {
double r250719 = a;
double r250720 = r250719 * r250719;
double r250721 = b;
double r250722 = r250721 * r250721;
double r250723 = r250720 + r250722;
double r250724 = 2.0;
double r250725 = pow(r250723, r250724);
double r250726 = 4.0;
double r250727 = r250726 * r250722;
double r250728 = r250725 + r250727;
double r250729 = 1.0;
double r250730 = r250728 - r250729;
return r250730;
}
double f(double a, double b) {
double r250731 = a;
double r250732 = 4.0;
double r250733 = pow(r250731, r250732);
double r250734 = b;
double r250735 = pow(r250734, r250732);
double r250736 = 2.0;
double r250737 = pow(r250731, r250736);
double r250738 = pow(r250734, r250736);
double r250739 = r250737 * r250738;
double r250740 = r250736 * r250739;
double r250741 = r250735 + r250740;
double r250742 = r250733 + r250741;
double r250743 = 1.0;
double r250744 = r250742 - r250743;
return r250744;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
Taylor expanded around inf 1.0
Final simplification1.0
herbie shell --seed 2019294
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
:precision binary64
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1))