\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -2.581291473695029702690078079656779261192 \cdot 10^{58}:\\
\;\;\;\;\frac{\frac{-1}{2} \cdot c}{b_2}\\
\mathbf{elif}\;b_2 \le -4.749476137934256724197446467547353552613 \cdot 10^{-147}:\\
\;\;\;\;\frac{\left(a \cdot c + \left(b_2 \cdot b_2 - b_2 \cdot b_2\right)\right) \cdot \frac{1}{a}}{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}\\
\mathbf{elif}\;b_2 \le 6.382246919184671949353170697340125221139 \cdot 10^{97}:\\
\;\;\;\;\frac{-b_2}{a} - \frac{\sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{2}}{\frac{b_2}{c}} + \frac{-2 \cdot b_2}{a}\\
\end{array}double f(double a, double b_2, double c) {
double r69944 = b_2;
double r69945 = -r69944;
double r69946 = r69944 * r69944;
double r69947 = a;
double r69948 = c;
double r69949 = r69947 * r69948;
double r69950 = r69946 - r69949;
double r69951 = sqrt(r69950);
double r69952 = r69945 - r69951;
double r69953 = r69952 / r69947;
return r69953;
}
double f(double a, double b_2, double c) {
double r69954 = b_2;
double r69955 = -2.5812914736950297e+58;
bool r69956 = r69954 <= r69955;
double r69957 = -0.5;
double r69958 = c;
double r69959 = r69957 * r69958;
double r69960 = r69959 / r69954;
double r69961 = -4.749476137934257e-147;
bool r69962 = r69954 <= r69961;
double r69963 = a;
double r69964 = r69963 * r69958;
double r69965 = r69954 * r69954;
double r69966 = r69965 - r69965;
double r69967 = r69964 + r69966;
double r69968 = 1.0;
double r69969 = r69968 / r69963;
double r69970 = r69967 * r69969;
double r69971 = -r69954;
double r69972 = r69965 - r69964;
double r69973 = sqrt(r69972);
double r69974 = r69971 + r69973;
double r69975 = r69970 / r69974;
double r69976 = 6.382246919184672e+97;
bool r69977 = r69954 <= r69976;
double r69978 = r69971 / r69963;
double r69979 = r69973 / r69963;
double r69980 = r69978 - r69979;
double r69981 = 0.5;
double r69982 = r69954 / r69958;
double r69983 = r69981 / r69982;
double r69984 = -2.0;
double r69985 = r69984 * r69954;
double r69986 = r69985 / r69963;
double r69987 = r69983 + r69986;
double r69988 = r69977 ? r69980 : r69987;
double r69989 = r69962 ? r69975 : r69988;
double r69990 = r69956 ? r69960 : r69989;
return r69990;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -2.5812914736950297e+58Initial program 57.5
rmApplied div-sub58.6
Taylor expanded around -inf 3.4
Simplified3.4
if -2.5812914736950297e+58 < b_2 < -4.749476137934257e-147Initial program 37.7
rmApplied clear-num37.7
rmApplied flip--37.7
Applied associate-/r/37.8
Applied associate-/r*37.7
Simplified16.6
if -4.749476137934257e-147 < b_2 < 6.382246919184672e+97Initial program 11.8
rmApplied div-sub11.8
if 6.382246919184672e+97 < b_2 Initial program 47.4
Taylor expanded around inf 3.7
Simplified3.9
Final simplification9.0
herbie shell --seed 2019195
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))