\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 r2711431 = a;
double r2711432 = r2711431 * r2711431;
double r2711433 = b;
double r2711434 = r2711433 * r2711433;
double r2711435 = r2711432 - r2711434;
double r2711436 = r2711435 / r2711432;
double r2711437 = fabs(r2711436);
double r2711438 = sqrt(r2711437);
return r2711438;
}
double f(double a, double b) {
double r2711439 = 1.0;
double r2711440 = b;
double r2711441 = a;
double r2711442 = r2711440 / r2711441;
double r2711443 = r2711442 * r2711442;
double r2711444 = r2711439 - r2711443;
double r2711445 = fabs(r2711444);
double r2711446 = sqrt(r2711445);
return r2711446;
}



Bits error versus a



Bits error versus b
Results
Initial program 31.2
Simplified8.3
Final simplification8.3
herbie shell --seed 2019172 +o rules:numerics
(FPCore (a b)
:name "Eccentricity of an ellipse"
:pre (<= 0.0 b a 1.0)
(sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))