\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -5.7874989996849275 \cdot 10^{-40}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 1.7665622931893247 \cdot 10^{+83}:\\
\;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - c \cdot a}}}\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\frac{b_2}{a}, -2, \frac{\frac{1}{2}}{\frac{b_2}{c}}\right)\\
\end{array}double f(double a, double b_2, double c) {
double r477346 = b_2;
double r477347 = -r477346;
double r477348 = r477346 * r477346;
double r477349 = a;
double r477350 = c;
double r477351 = r477349 * r477350;
double r477352 = r477348 - r477351;
double r477353 = sqrt(r477352);
double r477354 = r477347 - r477353;
double r477355 = r477354 / r477349;
return r477355;
}
double f(double a, double b_2, double c) {
double r477356 = b_2;
double r477357 = -5.7874989996849275e-40;
bool r477358 = r477356 <= r477357;
double r477359 = -0.5;
double r477360 = c;
double r477361 = r477360 / r477356;
double r477362 = r477359 * r477361;
double r477363 = 1.7665622931893247e+83;
bool r477364 = r477356 <= r477363;
double r477365 = 1.0;
double r477366 = a;
double r477367 = -r477356;
double r477368 = r477356 * r477356;
double r477369 = r477360 * r477366;
double r477370 = r477368 - r477369;
double r477371 = sqrt(r477370);
double r477372 = r477367 - r477371;
double r477373 = r477366 / r477372;
double r477374 = r477365 / r477373;
double r477375 = r477356 / r477366;
double r477376 = -2.0;
double r477377 = 0.5;
double r477378 = r477356 / r477360;
double r477379 = r477377 / r477378;
double r477380 = fma(r477375, r477376, r477379);
double r477381 = r477364 ? r477374 : r477380;
double r477382 = r477358 ? r477362 : r477381;
return r477382;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
if b_2 < -5.7874989996849275e-40Initial program 53.7
Taylor expanded around -inf 7.3
if -5.7874989996849275e-40 < b_2 < 1.7665622931893247e+83Initial program 13.8
rmApplied clear-num13.9
if 1.7665622931893247e+83 < b_2 Initial program 42.5
Taylor expanded around inf 3.8
Simplified3.8
Final simplification9.8
herbie shell --seed 2019156 +o rules:numerics
(FPCore (a b_2 c)
:name "quad2m (problem 3.2.1, negative)"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))