\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 r4963059 = a;
double r4963060 = r4963059 * r4963059;
double r4963061 = b;
double r4963062 = r4963061 * r4963061;
double r4963063 = r4963060 - r4963062;
double r4963064 = r4963063 / r4963060;
double r4963065 = fabs(r4963064);
double r4963066 = sqrt(r4963065);
return r4963066;
}
double f(double a, double b) {
double r4963067 = 1.0;
double r4963068 = b;
double r4963069 = a;
double r4963070 = r4963068 / r4963069;
double r4963071 = r4963070 * r4963070;
double r4963072 = r4963067 - r4963071;
double r4963073 = fabs(r4963072);
double r4963074 = sqrt(r4963073);
return r4963074;
}



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)))))