\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 r4071806 = a;
double r4071807 = r4071806 * r4071806;
double r4071808 = b;
double r4071809 = r4071808 * r4071808;
double r4071810 = r4071807 - r4071809;
double r4071811 = r4071810 / r4071807;
double r4071812 = fabs(r4071811);
double r4071813 = sqrt(r4071812);
return r4071813;
}
double f(double a, double b) {
double r4071814 = 1.0;
double r4071815 = b;
double r4071816 = a;
double r4071817 = r4071815 / r4071816;
double r4071818 = r4071817 * r4071817;
double r4071819 = r4071814 - r4071818;
double r4071820 = fabs(r4071819);
double r4071821 = sqrt(r4071820);
return r4071821;
}



Bits error versus a



Bits error versus b
Results
Initial program 30.4
Simplified8.1
Final simplification8.1
herbie shell --seed 2019174
(FPCore (a b)
:name "Eccentricity of an ellipse"
:pre (<= 0.0 b a 1.0)
(sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))