\left({\left(a \cdot a + b \cdot b\right)}^{2} + 4 \cdot \left(\left(a \cdot a\right) \cdot \left(1 - a\right) + \left(b \cdot b\right) \cdot \left(3 + a\right)\right)\right) - 1\sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + \left(\left(a + 3\right) \cdot \left(b \cdot b\right) + \left(a \cdot a\right) \cdot \left(1 - a\right)\right) \cdot 4} \cdot \sqrt{{\left(a \cdot a + b \cdot b\right)}^{2} + \left(\left(a + 3\right) \cdot \left(b \cdot b\right) + \left(a \cdot a\right) \cdot \left(1 - a\right)\right) \cdot 4} - 1double f(double a, double b) {
double r80036961 = a;
double r80036962 = r80036961 * r80036961;
double r80036963 = b;
double r80036964 = r80036963 * r80036963;
double r80036965 = r80036962 + r80036964;
double r80036966 = 2.0;
double r80036967 = pow(r80036965, r80036966);
double r80036968 = 4.0;
double r80036969 = 1.0;
double r80036970 = r80036969 - r80036961;
double r80036971 = r80036962 * r80036970;
double r80036972 = 3.0;
double r80036973 = r80036972 + r80036961;
double r80036974 = r80036964 * r80036973;
double r80036975 = r80036971 + r80036974;
double r80036976 = r80036968 * r80036975;
double r80036977 = r80036967 + r80036976;
double r80036978 = r80036977 - r80036969;
return r80036978;
}
double f(double a, double b) {
double r80036979 = a;
double r80036980 = r80036979 * r80036979;
double r80036981 = b;
double r80036982 = r80036981 * r80036981;
double r80036983 = r80036980 + r80036982;
double r80036984 = 2.0;
double r80036985 = pow(r80036983, r80036984);
double r80036986 = 3.0;
double r80036987 = r80036979 + r80036986;
double r80036988 = r80036987 * r80036982;
double r80036989 = 1.0;
double r80036990 = r80036989 - r80036979;
double r80036991 = r80036980 * r80036990;
double r80036992 = r80036988 + r80036991;
double r80036993 = 4.0;
double r80036994 = r80036992 * r80036993;
double r80036995 = r80036985 + r80036994;
double r80036996 = sqrt(r80036995);
double r80036997 = r80036996 * r80036996;
double r80036998 = r80036997 - r80036989;
return r80036998;
}



Bits error versus a



Bits error versus b
Results
Initial program 0.2
rmApplied add-sqr-sqrt0.2
Final simplification0.2
herbie shell --seed 2019107
(FPCore (a b)
:name "Bouland and Aaronson, Equation (24)"
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (+ (* (* a a) (- 1 a)) (* (* b b) (+ 3 a))))) 1))