\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -5.00500656176984215351659893827263540922 \cdot 10^{132}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 1.054528764146387149688914666009662801656 \cdot 10^{-247}:\\
\;\;\;\;\frac{c}{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}\\
\mathbf{elif}\;b_2 \le 1.02738286211209785784187544728837722875 \cdot 10^{63}:\\
\;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - 2 \cdot \frac{b_2}{a}\\
\end{array}double f(double a, double b_2, double c) {
double r13769 = b_2;
double r13770 = -r13769;
double r13771 = r13769 * r13769;
double r13772 = a;
double r13773 = c;
double r13774 = r13772 * r13773;
double r13775 = r13771 - r13774;
double r13776 = sqrt(r13775);
double r13777 = r13770 - r13776;
double r13778 = r13777 / r13772;
return r13778;
}
double f(double a, double b_2, double c) {
double r13779 = b_2;
double r13780 = -5.005006561769842e+132;
bool r13781 = r13779 <= r13780;
double r13782 = -0.5;
double r13783 = c;
double r13784 = r13783 / r13779;
double r13785 = r13782 * r13784;
double r13786 = 1.0545287641463871e-247;
bool r13787 = r13779 <= r13786;
double r13788 = -r13779;
double r13789 = r13779 * r13779;
double r13790 = a;
double r13791 = r13790 * r13783;
double r13792 = r13789 - r13791;
double r13793 = sqrt(r13792);
double r13794 = r13788 + r13793;
double r13795 = r13783 / r13794;
double r13796 = 1.0273828621120979e+63;
bool r13797 = r13779 <= r13796;
double r13798 = 1.0;
double r13799 = r13788 - r13793;
double r13800 = r13790 / r13799;
double r13801 = r13798 / r13800;
double r13802 = 0.5;
double r13803 = r13802 * r13784;
double r13804 = 2.0;
double r13805 = r13779 / r13790;
double r13806 = r13804 * r13805;
double r13807 = r13803 - r13806;
double r13808 = r13797 ? r13801 : r13807;
double r13809 = r13787 ? r13795 : r13808;
double r13810 = r13781 ? r13785 : r13809;
return r13810;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -5.005006561769842e+132Initial program 61.7
Taylor expanded around -inf 1.7
if -5.005006561769842e+132 < b_2 < 1.0545287641463871e-247Initial program 31.9
rmApplied clear-num31.9
rmApplied flip--32.0
Applied associate-/r/32.0
Applied associate-/r*32.0
Simplified14.6
Taylor expanded around 0 9.2
if 1.0545287641463871e-247 < b_2 < 1.0273828621120979e+63Initial program 8.1
rmApplied clear-num8.3
if 1.0273828621120979e+63 < b_2 Initial program 39.8
Taylor expanded around inf 5.4
Final simplification6.8
herbie shell --seed 2020001
(FPCore (a b_2 c)
:name "quad2m (problem 3.2.1, negative)"
:precision binary64
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))