\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -6.90131991727783 \cdot 10^{-39}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 4.012768074517757 \cdot 10^{+87}:\\
\;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - c \cdot a}}}\\
\mathbf{else}:\\
\;\;\;\;-2 \cdot \frac{b_2}{a}\\
\end{array}double f(double a, double b_2, double c) {
double r1908988 = b_2;
double r1908989 = -r1908988;
double r1908990 = r1908988 * r1908988;
double r1908991 = a;
double r1908992 = c;
double r1908993 = r1908991 * r1908992;
double r1908994 = r1908990 - r1908993;
double r1908995 = sqrt(r1908994);
double r1908996 = r1908989 - r1908995;
double r1908997 = r1908996 / r1908991;
return r1908997;
}
double f(double a, double b_2, double c) {
double r1908998 = b_2;
double r1908999 = -6.90131991727783e-39;
bool r1909000 = r1908998 <= r1908999;
double r1909001 = -0.5;
double r1909002 = c;
double r1909003 = r1909002 / r1908998;
double r1909004 = r1909001 * r1909003;
double r1909005 = 4.012768074517757e+87;
bool r1909006 = r1908998 <= r1909005;
double r1909007 = 1.0;
double r1909008 = a;
double r1909009 = -r1908998;
double r1909010 = r1908998 * r1908998;
double r1909011 = r1909002 * r1909008;
double r1909012 = r1909010 - r1909011;
double r1909013 = sqrt(r1909012);
double r1909014 = r1909009 - r1909013;
double r1909015 = r1909008 / r1909014;
double r1909016 = r1909007 / r1909015;
double r1909017 = -2.0;
double r1909018 = r1908998 / r1909008;
double r1909019 = r1909017 * r1909018;
double r1909020 = r1909006 ? r1909016 : r1909019;
double r1909021 = r1909000 ? r1909004 : r1909020;
return r1909021;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -6.90131991727783e-39Initial program 53.0
rmApplied div-sub53.7
Taylor expanded around -inf 7.9
if -6.90131991727783e-39 < b_2 < 4.012768074517757e+87Initial program 13.2
rmApplied clear-num13.3
if 4.012768074517757e+87 < b_2 Initial program 41.3
rmApplied clear-num41.4
Taylor expanded around 0 3.3
Final simplification9.6
herbie shell --seed 2019132
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))