\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -1.8774910265390396 \cdot 10^{-73}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 2.5703497435733685 \cdot 10^{+102}:\\
\;\;\;\;\left(\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}\right) \cdot \frac{1}{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 r330744 = b_2;
double r330745 = -r330744;
double r330746 = r330744 * r330744;
double r330747 = a;
double r330748 = c;
double r330749 = r330747 * r330748;
double r330750 = r330746 - r330749;
double r330751 = sqrt(r330750);
double r330752 = r330745 - r330751;
double r330753 = r330752 / r330747;
return r330753;
}
double f(double a, double b_2, double c) {
double r330754 = b_2;
double r330755 = -1.8774910265390396e-73;
bool r330756 = r330754 <= r330755;
double r330757 = -0.5;
double r330758 = c;
double r330759 = r330758 / r330754;
double r330760 = r330757 * r330759;
double r330761 = 2.5703497435733685e+102;
bool r330762 = r330754 <= r330761;
double r330763 = -r330754;
double r330764 = r330754 * r330754;
double r330765 = a;
double r330766 = r330765 * r330758;
double r330767 = r330764 - r330766;
double r330768 = sqrt(r330767);
double r330769 = r330763 - r330768;
double r330770 = 1.0;
double r330771 = r330770 / r330765;
double r330772 = r330769 * r330771;
double r330773 = r330754 / r330765;
double r330774 = -2.0;
double r330775 = 0.5;
double r330776 = r330754 / r330758;
double r330777 = r330775 / r330776;
double r330778 = fma(r330773, r330774, r330777);
double r330779 = r330762 ? r330772 : r330778;
double r330780 = r330756 ? r330760 : r330779;
return r330780;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
if b_2 < -1.8774910265390396e-73Initial program 52.5
Taylor expanded around -inf 8.6
if -1.8774910265390396e-73 < b_2 < 2.5703497435733685e+102Initial program 13.1
rmApplied div-inv13.2
if 2.5703497435733685e+102 < b_2 Initial program 43.9
Taylor expanded around inf 2.9
Simplified2.9
Final simplification9.9
herbie shell --seed 2019153 +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))