\sqrt{\left|\frac{a \cdot a - b \cdot b}{a \cdot a}\right|}\sqrt{\left|\frac{\sqrt{a - b \cdot \frac{b}{a}}}{\sqrt{a}} \cdot \frac{\sqrt{a - b \cdot \frac{b}{a}}}{\sqrt{a}}\right|}double f(double a, double b) {
double r59643 = a;
double r59644 = r59643 * r59643;
double r59645 = b;
double r59646 = r59645 * r59645;
double r59647 = r59644 - r59646;
double r59648 = r59647 / r59644;
double r59649 = fabs(r59648);
double r59650 = sqrt(r59649);
return r59650;
}
double f(double a, double b) {
double r59651 = a;
double r59652 = b;
double r59653 = r59652 / r59651;
double r59654 = r59652 * r59653;
double r59655 = r59651 - r59654;
double r59656 = sqrt(r59655);
double r59657 = sqrt(r59651);
double r59658 = r59656 / r59657;
double r59659 = r59658 * r59658;
double r59660 = fabs(r59659);
double r59661 = sqrt(r59660);
return r59661;
}



Bits error versus a



Bits error versus b
Results
Initial program 14.6
rmApplied associate-/r*14.9
Simplified0.0
rmApplied add-sqr-sqrt0.3
Applied add-sqr-sqrt0.0
Applied times-frac0.0
Final simplification0.0
herbie shell --seed 2019304 +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)))))