\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -3.2092322739463293 \cdot 10^{-86}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 2.891777552454845 \cdot 10^{+74}:\\
\;\;\;\;-\frac{\sqrt{b_2 \cdot b_2 - a \cdot c} + b_2}{a}\\
\mathbf{else}:\\
\;\;\;\;\frac{\mathsf{fma}\left(-2, b_2, \left(\frac{a}{\frac{b_2}{c}} \cdot \frac{1}{2}\right)\right)}{a}\\
\end{array}double f(double a, double b_2, double c) {
double r1987193 = b_2;
double r1987194 = -r1987193;
double r1987195 = r1987193 * r1987193;
double r1987196 = a;
double r1987197 = c;
double r1987198 = r1987196 * r1987197;
double r1987199 = r1987195 - r1987198;
double r1987200 = sqrt(r1987199);
double r1987201 = r1987194 - r1987200;
double r1987202 = r1987201 / r1987196;
return r1987202;
}
double f(double a, double b_2, double c) {
double r1987203 = b_2;
double r1987204 = -3.2092322739463293e-86;
bool r1987205 = r1987203 <= r1987204;
double r1987206 = -0.5;
double r1987207 = c;
double r1987208 = r1987207 / r1987203;
double r1987209 = r1987206 * r1987208;
double r1987210 = 2.891777552454845e+74;
bool r1987211 = r1987203 <= r1987210;
double r1987212 = r1987203 * r1987203;
double r1987213 = a;
double r1987214 = r1987213 * r1987207;
double r1987215 = r1987212 - r1987214;
double r1987216 = sqrt(r1987215);
double r1987217 = r1987216 + r1987203;
double r1987218 = r1987217 / r1987213;
double r1987219 = -r1987218;
double r1987220 = -2.0;
double r1987221 = r1987203 / r1987207;
double r1987222 = r1987213 / r1987221;
double r1987223 = 0.5;
double r1987224 = r1987222 * r1987223;
double r1987225 = fma(r1987220, r1987203, r1987224);
double r1987226 = r1987225 / r1987213;
double r1987227 = r1987211 ? r1987219 : r1987226;
double r1987228 = r1987205 ? r1987209 : r1987227;
return r1987228;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
if b_2 < -3.2092322739463293e-86Initial program 52.3
Taylor expanded around -inf 9.4
if -3.2092322739463293e-86 < b_2 < 2.891777552454845e+74Initial program 13.1
rmApplied add-sqr-sqrt13.1
Applied sqrt-prod13.3
rmApplied neg-sub013.3
Applied associate--l-13.3
Simplified13.1
if 2.891777552454845e+74 < b_2 Initial program 38.9
rmApplied add-sqr-sqrt38.9
Applied sqrt-prod39.0
Taylor expanded around inf 10.1
Simplified4.3
Final simplification10.0
herbie shell --seed 2019130 +o rules:numerics
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))