\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -3.035199252453359 \cdot 10^{+123}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le -1.6352743340081327 \cdot 10^{-34}:\\
\;\;\;\;\frac{\frac{a \cdot c + \left(b_2 \cdot b_2 - b_2 \cdot b_2\right)}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{a}\\
\mathbf{elif}\;b_2 \le -1.0029215987945677 \cdot 10^{-54}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le -1.003636336181468 \cdot 10^{-90}:\\
\;\;\;\;\frac{\frac{a \cdot c + \left(b_2 \cdot b_2 - b_2 \cdot b_2\right)}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{a}\\
\mathbf{elif}\;b_2 \le -2.640735663015172 \cdot 10^{-160}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 9.336288915836175 \cdot 10^{+83}:\\
\;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}}\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(-2, \frac{b_2}{a}, \frac{\frac{1}{2}}{\frac{b_2}{c}}\right)\\
\end{array}double f(double a, double b_2, double c) {
double r3349734 = b_2;
double r3349735 = -r3349734;
double r3349736 = r3349734 * r3349734;
double r3349737 = a;
double r3349738 = c;
double r3349739 = r3349737 * r3349738;
double r3349740 = r3349736 - r3349739;
double r3349741 = sqrt(r3349740);
double r3349742 = r3349735 - r3349741;
double r3349743 = r3349742 / r3349737;
return r3349743;
}
double f(double a, double b_2, double c) {
double r3349744 = b_2;
double r3349745 = -3.035199252453359e+123;
bool r3349746 = r3349744 <= r3349745;
double r3349747 = -0.5;
double r3349748 = c;
double r3349749 = r3349748 / r3349744;
double r3349750 = r3349747 * r3349749;
double r3349751 = -1.6352743340081327e-34;
bool r3349752 = r3349744 <= r3349751;
double r3349753 = a;
double r3349754 = r3349753 * r3349748;
double r3349755 = r3349744 * r3349744;
double r3349756 = r3349755 - r3349755;
double r3349757 = r3349754 + r3349756;
double r3349758 = r3349755 - r3349754;
double r3349759 = sqrt(r3349758);
double r3349760 = r3349759 - r3349744;
double r3349761 = r3349757 / r3349760;
double r3349762 = r3349761 / r3349753;
double r3349763 = -1.0029215987945677e-54;
bool r3349764 = r3349744 <= r3349763;
double r3349765 = -1.003636336181468e-90;
bool r3349766 = r3349744 <= r3349765;
double r3349767 = -2.640735663015172e-160;
bool r3349768 = r3349744 <= r3349767;
double r3349769 = 9.336288915836175e+83;
bool r3349770 = r3349744 <= r3349769;
double r3349771 = 1.0;
double r3349772 = -r3349744;
double r3349773 = r3349772 - r3349759;
double r3349774 = r3349753 / r3349773;
double r3349775 = r3349771 / r3349774;
double r3349776 = -2.0;
double r3349777 = r3349744 / r3349753;
double r3349778 = 0.5;
double r3349779 = r3349744 / r3349748;
double r3349780 = r3349778 / r3349779;
double r3349781 = fma(r3349776, r3349777, r3349780);
double r3349782 = r3349770 ? r3349775 : r3349781;
double r3349783 = r3349768 ? r3349750 : r3349782;
double r3349784 = r3349766 ? r3349762 : r3349783;
double r3349785 = r3349764 ? r3349750 : r3349784;
double r3349786 = r3349752 ? r3349762 : r3349785;
double r3349787 = r3349746 ? r3349750 : r3349786;
return r3349787;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
if b_2 < -3.035199252453359e+123 or -1.6352743340081327e-34 < b_2 < -1.0029215987945677e-54 or -1.003636336181468e-90 < b_2 < -2.640735663015172e-160Initial program 52.4
Taylor expanded around -inf 10.4
if -3.035199252453359e+123 < b_2 < -1.6352743340081327e-34 or -1.0029215987945677e-54 < b_2 < -1.003636336181468e-90Initial program 45.0
rmApplied flip--45.1
Simplified15.4
Simplified15.4
if -2.640735663015172e-160 < b_2 < 9.336288915836175e+83Initial program 10.9
rmApplied *-un-lft-identity10.9
Applied associate-/l*11.0
Taylor expanded around -inf 11.0
Simplified11.0
if 9.336288915836175e+83 < b_2 Initial program 42.5
Taylor expanded around inf 4.1
Simplified4.1
Final simplification10.4
herbie shell --seed 2019142 +o rules:numerics
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))