\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -5.5038627888747993 \cdot 10^{151}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 1.10735029247724072 \cdot 10^{-236}:\\
\;\;\;\;1 \cdot \left(\frac{1}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2} \cdot c\right)\\
\mathbf{elif}\;b_2 \le 5.43153376685683538 \cdot 10^{106}:\\
\;\;\;\;\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 r22676 = b_2;
double r22677 = -r22676;
double r22678 = r22676 * r22676;
double r22679 = a;
double r22680 = c;
double r22681 = r22679 * r22680;
double r22682 = r22678 - r22681;
double r22683 = sqrt(r22682);
double r22684 = r22677 - r22683;
double r22685 = r22684 / r22679;
return r22685;
}
double f(double a, double b_2, double c) {
double r22686 = b_2;
double r22687 = -5.503862788874799e+151;
bool r22688 = r22686 <= r22687;
double r22689 = -0.5;
double r22690 = c;
double r22691 = r22690 / r22686;
double r22692 = r22689 * r22691;
double r22693 = 1.1073502924772407e-236;
bool r22694 = r22686 <= r22693;
double r22695 = 1.0;
double r22696 = r22686 * r22686;
double r22697 = a;
double r22698 = r22697 * r22690;
double r22699 = r22696 - r22698;
double r22700 = sqrt(r22699);
double r22701 = r22700 - r22686;
double r22702 = r22695 / r22701;
double r22703 = r22702 * r22690;
double r22704 = r22695 * r22703;
double r22705 = 5.431533766856835e+106;
bool r22706 = r22686 <= r22705;
double r22707 = -r22686;
double r22708 = r22707 - r22700;
double r22709 = r22697 / r22708;
double r22710 = r22695 / r22709;
double r22711 = 0.5;
double r22712 = r22711 * r22691;
double r22713 = 2.0;
double r22714 = r22686 / r22697;
double r22715 = r22713 * r22714;
double r22716 = r22712 - r22715;
double r22717 = r22706 ? r22710 : r22716;
double r22718 = r22694 ? r22704 : r22717;
double r22719 = r22688 ? r22692 : r22718;
return r22719;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -5.503862788874799e+151Initial program 63.7
Taylor expanded around -inf 1.5
if -5.503862788874799e+151 < b_2 < 1.1073502924772407e-236Initial program 32.5
rmApplied flip--32.6
Simplified16.2
Simplified16.2
rmApplied *-un-lft-identity16.2
Applied associate-/r*16.2
Simplified14.2
rmApplied div-inv14.2
Applied *-un-lft-identity14.2
Applied times-frac16.2
Applied associate-/l*14.9
Simplified8.8
rmApplied *-un-lft-identity8.8
Applied add-sqr-sqrt8.8
Applied times-frac8.8
Applied *-un-lft-identity8.8
Applied add-sqr-sqrt8.8
Applied times-frac8.8
Applied times-frac8.8
Simplified8.8
Simplified8.8
if 1.1073502924772407e-236 < b_2 < 5.431533766856835e+106Initial program 8.6
rmApplied clear-num8.7
if 5.431533766856835e+106 < b_2 Initial program 50.0
Taylor expanded around inf 3.8
Final simplification6.7
herbie shell --seed 2020062
(FPCore (a b_2 c)
:name "quad2m (problem 3.2.1, negative)"
:precision binary64
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))