\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\sqrt{\left|1 - \left|\frac{b}{a}\right| \cdot \left|\frac{b}{a}\right|\right|}double f(double a, double b) {
double r50563 = a;
double r50564 = r50563 * r50563;
double r50565 = b;
double r50566 = r50565 * r50565;
double r50567 = r50564 - r50566;
double r50568 = r50567 / r50564;
double r50569 = fabs(r50568);
double r50570 = sqrt(r50569);
return r50570;
}
double f(double a, double b) {
double r50571 = 1.0;
double r50572 = b;
double r50573 = a;
double r50574 = r50572 / r50573;
double r50575 = fabs(r50574);
double r50576 = r50575 * r50575;
double r50577 = r50571 - r50576;
double r50578 = fabs(r50577);
double r50579 = sqrt(r50578);
return r50579;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.6
Simplified14.6
rmApplied add-sqr-sqrt14.6
Simplified14.5
Simplified0.0
Final simplification0.0
herbie shell --seed 2019235 +o rules:numerics
(FPCore (a b)
:name "Eccentricity of an ellipse"
:precision binary64
:pre (<= 0.0 b a 1)
(sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))