\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -2.569494919068124572690421335939486791404 \cdot 10^{-64}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 2.8653816703769607550753035783606354728 \cdot 10^{117}:\\
\;\;\;\;\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\
\mathbf{else}:\\
\;\;\;\;\frac{b_2}{a} \cdot -2\\
\end{array}double f(double a, double b_2, double c) {
double r3175141 = b_2;
double r3175142 = -r3175141;
double r3175143 = r3175141 * r3175141;
double r3175144 = a;
double r3175145 = c;
double r3175146 = r3175144 * r3175145;
double r3175147 = r3175143 - r3175146;
double r3175148 = sqrt(r3175147);
double r3175149 = r3175142 - r3175148;
double r3175150 = r3175149 / r3175144;
return r3175150;
}
double f(double a, double b_2, double c) {
double r3175151 = b_2;
double r3175152 = -2.5694949190681246e-64;
bool r3175153 = r3175151 <= r3175152;
double r3175154 = -0.5;
double r3175155 = c;
double r3175156 = r3175155 / r3175151;
double r3175157 = r3175154 * r3175156;
double r3175158 = 2.865381670376961e+117;
bool r3175159 = r3175151 <= r3175158;
double r3175160 = -r3175151;
double r3175161 = r3175151 * r3175151;
double r3175162 = a;
double r3175163 = r3175162 * r3175155;
double r3175164 = r3175161 - r3175163;
double r3175165 = sqrt(r3175164);
double r3175166 = r3175160 - r3175165;
double r3175167 = r3175166 / r3175162;
double r3175168 = r3175151 / r3175162;
double r3175169 = -2.0;
double r3175170 = r3175168 * r3175169;
double r3175171 = r3175159 ? r3175167 : r3175170;
double r3175172 = r3175153 ? r3175157 : r3175171;
return r3175172;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -2.5694949190681246e-64Initial program 53.1
Taylor expanded around -inf 9.1
if -2.5694949190681246e-64 < b_2 < 2.865381670376961e+117Initial program 13.1
rmApplied div-inv13.2
rmApplied un-div-inv13.1
if 2.865381670376961e+117 < b_2 Initial program 52.0
rmApplied clear-num52.1
Taylor expanded around 0 3.1
Final simplification10.2
herbie shell --seed 2019169 +o rules:numerics
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))