\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 r2815455 = a;
double r2815456 = r2815455 * r2815455;
double r2815457 = b;
double r2815458 = r2815457 * r2815457;
double r2815459 = r2815456 - r2815458;
double r2815460 = r2815459 / r2815456;
double r2815461 = fabs(r2815460);
double r2815462 = sqrt(r2815461);
return r2815462;
}
double f(double a, double b) {
double r2815463 = 1.0;
double r2815464 = b;
double r2815465 = a;
double r2815466 = r2815464 / r2815465;
double r2815467 = r2815466 * r2815466;
double r2815468 = r2815463 - r2815467;
double r2815469 = fabs(r2815468);
double r2815470 = sqrt(r2815469);
return r2815470;
}



Bits error versus a



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