\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 r111802 = a;
double r111803 = r111802 * r111802;
double r111804 = b;
double r111805 = r111804 * r111804;
double r111806 = r111803 + r111805;
double r111807 = 2.0;
double r111808 = pow(r111806, r111807);
double r111809 = 4.0;
double r111810 = r111809 * r111805;
double r111811 = r111808 + r111810;
double r111812 = 1.0;
double r111813 = r111811 - r111812;
return r111813;
}
double f(double a, double b) {
double r111814 = a;
double r111815 = r111814 * r111814;
double r111816 = b;
double r111817 = r111816 * r111816;
double r111818 = r111815 + r111817;
double r111819 = 2.0;
double r111820 = pow(r111818, r111819);
double r111821 = 4.0;
double r111822 = r111821 * r111817;
double r111823 = r111820 + r111822;
double r111824 = 1.0;
double r111825 = r111823 - r111824;
return r111825;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
Final simplification0.2
herbie shell --seed 2019195
(FPCore (a b)
:name "Bouland and Aaronson, Equation (26)"
(- (+ (pow (+ (* a a) (* b b)) 2.0) (* 4.0 (* b b))) 1.0))