\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(b \cdot b\right)\right) - 1\left(\left(b \cdot b\right) \cdot 4 + {\left(a \cdot a + b \cdot b\right)}^{2}\right) - 1double f(double a, double b) {
double r6443981 = a;
double r6443982 = r6443981 * r6443981;
double r6443983 = b;
double r6443984 = r6443983 * r6443983;
double r6443985 = r6443982 + r6443984;
double r6443986 = 2.0;
double r6443987 = pow(r6443985, r6443986);
double r6443988 = 4.0;
double r6443989 = r6443988 * r6443984;
double r6443990 = r6443987 + r6443989;
double r6443991 = 1.0;
double r6443992 = r6443990 - r6443991;
return r6443992;
}
double f(double a, double b) {
double r6443993 = b;
double r6443994 = r6443993 * r6443993;
double r6443995 = 4.0;
double r6443996 = r6443994 * r6443995;
double r6443997 = a;
double r6443998 = r6443997 * r6443997;
double r6443999 = r6443998 + r6443994;
double r6444000 = 2.0;
double r6444001 = pow(r6443999, r6444000);
double r6444002 = r6443996 + r6444001;
double r6444003 = 1.0;
double r6444004 = r6444002 - r6444003;
return r6444004;
}



Bits error versus a



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