\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\sqrt{\left|1 - \sqrt[3]{{\left(\log \left(e^{\frac{\frac{b}{a} \cdot b}{a}}\right)\right)}^{3}}\right|}double f(double a, double b) {
double r68071 = a;
double r68072 = r68071 * r68071;
double r68073 = b;
double r68074 = r68073 * r68073;
double r68075 = r68072 - r68074;
double r68076 = r68075 / r68072;
double r68077 = fabs(r68076);
double r68078 = sqrt(r68077);
return r68078;
}
double f(double a, double b) {
double r68079 = 1.0;
double r68080 = b;
double r68081 = a;
double r68082 = r68080 / r68081;
double r68083 = r68082 * r68080;
double r68084 = r68083 / r68081;
double r68085 = exp(r68084);
double r68086 = log(r68085);
double r68087 = 3.0;
double r68088 = pow(r68086, r68087);
double r68089 = cbrt(r68088);
double r68090 = r68079 - r68089;
double r68091 = fabs(r68090);
double r68092 = sqrt(r68091);
return r68092;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.3
Simplified14.3
rmApplied add-cbrt-cube26.8
Applied add-cbrt-cube26.8
Applied cbrt-unprod43.4
Applied add-cbrt-cube43.4
Applied add-cbrt-cube43.4
Applied cbrt-unprod43.4
Applied cbrt-undiv43.4
Simplified0.0
rmApplied add-log-exp0.0
Final simplification0.0
herbie shell --seed 2020046 +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)))))