\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\sqrt{\left|\frac{a + b}{a} \cdot \frac{1 - {\left(\frac{b}{a}\right)}^{3}}{\frac{b}{a} \cdot \left(\frac{b}{a} + 1\right) + 1}\right|}double f(double a, double b) {
double r57173 = a;
double r57174 = r57173 * r57173;
double r57175 = b;
double r57176 = r57175 * r57175;
double r57177 = r57174 - r57176;
double r57178 = r57177 / r57174;
double r57179 = fabs(r57178);
double r57180 = sqrt(r57179);
return r57180;
}
double f(double a, double b) {
double r57181 = a;
double r57182 = b;
double r57183 = r57181 + r57182;
double r57184 = r57183 / r57181;
double r57185 = 1.0;
double r57186 = r57182 / r57181;
double r57187 = 3.0;
double r57188 = pow(r57186, r57187);
double r57189 = r57185 - r57188;
double r57190 = r57186 + r57185;
double r57191 = r57186 * r57190;
double r57192 = r57191 + r57185;
double r57193 = r57189 / r57192;
double r57194 = r57184 * r57193;
double r57195 = fabs(r57194);
double r57196 = sqrt(r57195);
return r57196;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.4
rmApplied difference-of-squares14.4
Applied times-frac0.0
rmApplied add-cbrt-cube27.3
Applied add-cbrt-cube26.7
Applied cbrt-undiv26.7
Simplified0.0
rmApplied flip3--0.0
Applied cube-div0.0
Applied cbrt-div0.0
Simplified0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020083
(FPCore (a b)
:name "Eccentricity of an ellipse"
:precision binary64
:pre (<= 0.0 b a 1)
(sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))