\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1double f(double a, double b) {
double r201830 = a;
double r201831 = r201830 * r201830;
double r201832 = b;
double r201833 = r201832 * r201832;
double r201834 = r201831 + r201833;
double r201835 = 2.0;
double r201836 = pow(r201834, r201835);
double r201837 = 4.0;
double r201838 = r201837 * r201833;
double r201839 = r201836 + r201838;
double r201840 = 1.0;
double r201841 = r201839 - r201840;
return r201841;
}
double f(double a, double b) {
double r201842 = a;
double r201843 = r201842 * r201842;
double r201844 = b;
double r201845 = r201844 * r201844;
double r201846 = r201843 + r201845;
double r201847 = 2.0;
double r201848 = pow(r201846, r201847);
double r201849 = 4.0;
double r201850 = r201849 * r201845;
double r201851 = r201848 + r201850;
double r201852 = 1.0;
double r201853 = r201851 - r201852;
return r201853;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
Final simplification0.2
herbie shell --seed 2019298
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
:precision binary64
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1))