\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -1.077239628548905378565124203356585166888 \cdot 10^{154}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le 3.657998399682531790024702628233707002655 \cdot 10^{-302}:\\
\;\;\;\;\frac{c}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}\\
\mathbf{elif}\;b_2 \le 3.361636799726259566012474460441175928147 \cdot 10^{93}:\\
\;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}}\\
\mathbf{else}:\\
\;\;\;\;-2 \cdot \frac{b_2}{a}\\
\end{array}double f(double a, double b_2, double c) {
double r78660 = b_2;
double r78661 = -r78660;
double r78662 = r78660 * r78660;
double r78663 = a;
double r78664 = c;
double r78665 = r78663 * r78664;
double r78666 = r78662 - r78665;
double r78667 = sqrt(r78666);
double r78668 = r78661 - r78667;
double r78669 = r78668 / r78663;
return r78669;
}
double f(double a, double b_2, double c) {
double r78670 = b_2;
double r78671 = -1.0772396285489054e+154;
bool r78672 = r78670 <= r78671;
double r78673 = -0.5;
double r78674 = c;
double r78675 = r78674 / r78670;
double r78676 = r78673 * r78675;
double r78677 = 3.657998399682532e-302;
bool r78678 = r78670 <= r78677;
double r78679 = r78670 * r78670;
double r78680 = a;
double r78681 = r78680 * r78674;
double r78682 = r78679 - r78681;
double r78683 = sqrt(r78682);
double r78684 = r78683 - r78670;
double r78685 = r78674 / r78684;
double r78686 = 3.3616367997262596e+93;
bool r78687 = r78670 <= r78686;
double r78688 = 1.0;
double r78689 = -r78670;
double r78690 = r78689 - r78683;
double r78691 = r78680 / r78690;
double r78692 = r78688 / r78691;
double r78693 = -2.0;
double r78694 = r78670 / r78680;
double r78695 = r78693 * r78694;
double r78696 = r78687 ? r78692 : r78695;
double r78697 = r78678 ? r78685 : r78696;
double r78698 = r78672 ? r78676 : r78697;
return r78698;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -1.0772396285489054e+154Initial program 64.0
Taylor expanded around -inf 1.8
if -1.0772396285489054e+154 < b_2 < 3.657998399682532e-302Initial program 34.6
rmApplied flip--34.7
Simplified15.9
Simplified15.9
rmApplied *-un-lft-identity15.9
Applied times-frac15.1
Applied associate-/l*10.7
Simplified8.1
if 3.657998399682532e-302 < b_2 < 3.3616367997262596e+93Initial program 8.9
rmApplied clear-num9.1
if 3.3616367997262596e+93 < b_2 Initial program 45.2
rmApplied flip--62.9
Simplified62.0
Simplified62.0
Taylor expanded around 0 3.5
Final simplification6.5
herbie shell --seed 2019347
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
:precision binary64
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))