\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 r803613 = a;
double r803614 = r803613 * r803613;
double r803615 = b;
double r803616 = r803615 * r803615;
double r803617 = r803614 - r803616;
double r803618 = r803617 / r803614;
double r803619 = fabs(r803618);
double r803620 = sqrt(r803619);
return r803620;
}
double f(double a, double b) {
double r803621 = 1.0;
double r803622 = b;
double r803623 = a;
double r803624 = r803622 / r803623;
double r803625 = r803624 * r803624;
double r803626 = r803621 - r803625;
double r803627 = fabs(r803626);
double r803628 = sqrt(r803627);
return r803628;
}



Bits error versus a



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