\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}
\sqrt{\left|\log \left(e^{\mathsf{fma}\left(b, \frac{\frac{b}{a}}{a}, -1\right)}\right)\right|}
(FPCore (a b) :precision binary64 (sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))
(FPCore (a b) :precision binary64 (sqrt (fabs (log (exp (fma b (/ (/ b a) a) -1.0))))))
double code(double a, double b) {
return sqrt(fabs(((a * a) - (b * b)) / (a * a)));
}
double code(double a, double b) {
return sqrt(fabs(log(exp(fma(b, ((b / a) / a), -1.0)))));
}



Bits error versus a



Bits error versus b
Initial program 14.2
Simplified14.2
Applied associate-/r*_binary640.0
Applied add-log-exp_binary640.0
Final simplification0.0
herbie shell --seed 2022077
(FPCore (a b)
:name "Eccentricity of an ellipse"
:precision binary64
:pre (and (and (<= 0.0 b) (<= b a)) (<= a 1.0))
(sqrt (fabs (/ (- (* a a) (* b b)) (* a a)))))