\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -1.532647813487865 \cdot 10^{52}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le -1.571246895950166 \cdot 10^{-147}:\\
\;\;\;\;\frac{\frac{a \cdot c}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{a}\\
\mathbf{elif}\;b_2 \le 6.63703793523525319 \cdot 10^{98}:\\
\;\;\;\;\frac{-b_2}{a} - \frac{\sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\
\mathbf{else}:\\
\;\;\;\;\frac{-b_2}{a} - \left(\frac{b_2}{a} - \frac{1}{2} \cdot \frac{c}{b_2}\right)\\
\end{array}double f(double a, double b_2, double c) {
double r61693 = b_2;
double r61694 = -r61693;
double r61695 = r61693 * r61693;
double r61696 = a;
double r61697 = c;
double r61698 = r61696 * r61697;
double r61699 = r61695 - r61698;
double r61700 = sqrt(r61699);
double r61701 = r61694 - r61700;
double r61702 = r61701 / r61696;
return r61702;
}
double f(double a, double b_2, double c) {
double r61703 = b_2;
double r61704 = -1.532647813487865e+52;
bool r61705 = r61703 <= r61704;
double r61706 = -0.5;
double r61707 = c;
double r61708 = r61707 / r61703;
double r61709 = r61706 * r61708;
double r61710 = -1.571246895950166e-147;
bool r61711 = r61703 <= r61710;
double r61712 = a;
double r61713 = r61712 * r61707;
double r61714 = r61703 * r61703;
double r61715 = r61714 - r61713;
double r61716 = sqrt(r61715);
double r61717 = r61716 - r61703;
double r61718 = r61713 / r61717;
double r61719 = r61718 / r61712;
double r61720 = 6.637037935235253e+98;
bool r61721 = r61703 <= r61720;
double r61722 = -r61703;
double r61723 = r61722 / r61712;
double r61724 = r61716 / r61712;
double r61725 = r61723 - r61724;
double r61726 = r61703 / r61712;
double r61727 = 0.5;
double r61728 = r61727 * r61708;
double r61729 = r61726 - r61728;
double r61730 = r61723 - r61729;
double r61731 = r61721 ? r61725 : r61730;
double r61732 = r61711 ? r61719 : r61731;
double r61733 = r61705 ? r61709 : r61732;
return r61733;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -1.532647813487865e+52Initial program 57.3
Taylor expanded around -inf 3.6
if -1.532647813487865e+52 < b_2 < -1.571246895950166e-147Initial program 37.3
rmApplied flip--37.3
Simplified16.9
Simplified16.9
if -1.571246895950166e-147 < b_2 < 6.637037935235253e+98Initial program 11.7
rmApplied div-sub11.7
if 6.637037935235253e+98 < b_2 Initial program 47.8
rmApplied div-sub47.8
Taylor expanded around inf 3.7
Final simplification9.0
herbie shell --seed 2019195
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))