\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -1.763315479739403460017265344144602342789 \cdot 10^{89}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le -1.085000278636624341855070450537604684134 \cdot 10^{-297}:\\
\;\;\;\;\frac{c}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}\\
\mathbf{elif}\;b_2 \le 3.355858625783055094237525774982320834143 \cdot 10^{101}:\\
\;\;\;\;\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - \frac{b_2}{a} \cdot 2\\
\end{array}double f(double a, double b_2, double c) {
double r2548239 = b_2;
double r2548240 = -r2548239;
double r2548241 = r2548239 * r2548239;
double r2548242 = a;
double r2548243 = c;
double r2548244 = r2548242 * r2548243;
double r2548245 = r2548241 - r2548244;
double r2548246 = sqrt(r2548245);
double r2548247 = r2548240 - r2548246;
double r2548248 = r2548247 / r2548242;
return r2548248;
}
double f(double a, double b_2, double c) {
double r2548249 = b_2;
double r2548250 = -1.7633154797394035e+89;
bool r2548251 = r2548249 <= r2548250;
double r2548252 = -0.5;
double r2548253 = c;
double r2548254 = r2548253 / r2548249;
double r2548255 = r2548252 * r2548254;
double r2548256 = -1.0850002786366243e-297;
bool r2548257 = r2548249 <= r2548256;
double r2548258 = r2548249 * r2548249;
double r2548259 = a;
double r2548260 = r2548259 * r2548253;
double r2548261 = r2548258 - r2548260;
double r2548262 = sqrt(r2548261);
double r2548263 = r2548262 - r2548249;
double r2548264 = r2548253 / r2548263;
double r2548265 = 3.355858625783055e+101;
bool r2548266 = r2548249 <= r2548265;
double r2548267 = -r2548249;
double r2548268 = r2548267 - r2548262;
double r2548269 = r2548268 / r2548259;
double r2548270 = 0.5;
double r2548271 = r2548270 * r2548254;
double r2548272 = r2548249 / r2548259;
double r2548273 = 2.0;
double r2548274 = r2548272 * r2548273;
double r2548275 = r2548271 - r2548274;
double r2548276 = r2548266 ? r2548269 : r2548275;
double r2548277 = r2548257 ? r2548264 : r2548276;
double r2548278 = r2548251 ? r2548255 : r2548277;
return r2548278;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -1.7633154797394035e+89Initial program 59.1
Taylor expanded around -inf 2.7
if -1.7633154797394035e+89 < b_2 < -1.0850002786366243e-297Initial program 32.0
rmApplied flip--32.0
Simplified16.4
Simplified16.4
rmApplied *-un-lft-identity16.4
Applied *-un-lft-identity16.4
Applied *-un-lft-identity16.4
Applied times-frac16.4
Applied times-frac16.4
Simplified16.4
Simplified15.7
Taylor expanded around 0 8.3
if -1.0850002786366243e-297 < b_2 < 3.355858625783055e+101Initial program 9.5
if 3.355858625783055e+101 < b_2 Initial program 46.6
Taylor expanded around inf 4.5
Final simplification6.6
herbie shell --seed 2019172
(FPCore (a b_2 c)
:name "NMSE problem 3.2.1"
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))