\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 r12999909 = a;
double r12999910 = r12999909 * r12999909;
double r12999911 = b;
double r12999912 = r12999911 * r12999911;
double r12999913 = r12999910 - r12999912;
double r12999914 = r12999913 / r12999910;
double r12999915 = fabs(r12999914);
double r12999916 = sqrt(r12999915);
return r12999916;
}
double f(double a, double b) {
double r12999917 = 1.0;
double r12999918 = b;
double r12999919 = a;
double r12999920 = r12999918 / r12999919;
double r12999921 = r12999920 * r12999920;
double r12999922 = r12999917 - r12999921;
double r12999923 = fabs(r12999922);
double r12999924 = sqrt(r12999923);
return r12999924;
}



Bits error versus a



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