\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\sqrt{\left|1 - \frac{b}{a} \cdot \frac{b}{a}\right|}double f(double a, double b) {
double r2349938 = a;
double r2349939 = r2349938 * r2349938;
double r2349940 = b;
double r2349941 = r2349940 * r2349940;
double r2349942 = r2349939 - r2349941;
double r2349943 = r2349942 / r2349939;
double r2349944 = fabs(r2349943);
double r2349945 = sqrt(r2349944);
return r2349945;
}
double f(double a, double b) {
double r2349946 = 1.0;
double r2349947 = b;
double r2349948 = a;
double r2349949 = r2349947 / r2349948;
double r2349950 = r2349949 * r2349949;
double r2349951 = r2349946 - r2349950;
double r2349952 = fabs(r2349951);
double r2349953 = sqrt(r2349952);
return r2349953;
}



Bits error versus a



Bits error versus b
Results
Initial program 29.0
Simplified7.5
Final simplification7.5
herbie shell --seed 2019141 +o rules:numerics
(FPCore (a b)
:name "Eccentricity of an ellipse"
:pre (<= 0 b a 1)
(sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))