\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -1.02458994604675516 \cdot 10^{154}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\mathbf{elif}\;b_2 \le -1.9151734797750612 \cdot 10^{-228}:\\
\;\;\;\;\frac{c}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}\\
\mathbf{elif}\;b_2 \le 9.3479963141541371 \cdot 10^{42}:\\
\;\;\;\;\frac{\left(-b_2\right) - \sqrt{{b_2}^{2} - a \cdot c}}{a}\\
\mathbf{else}:\\
\;\;\;\;-2 \cdot \frac{b_2}{a}\\
\end{array}double f(double a, double b_2, double c) {
double r17172 = b_2;
double r17173 = -r17172;
double r17174 = r17172 * r17172;
double r17175 = a;
double r17176 = c;
double r17177 = r17175 * r17176;
double r17178 = r17174 - r17177;
double r17179 = sqrt(r17178);
double r17180 = r17173 - r17179;
double r17181 = r17180 / r17175;
return r17181;
}
double f(double a, double b_2, double c) {
double r17182 = b_2;
double r17183 = -1.0245899460467552e+154;
bool r17184 = r17182 <= r17183;
double r17185 = -0.5;
double r17186 = c;
double r17187 = r17186 / r17182;
double r17188 = r17185 * r17187;
double r17189 = -1.9151734797750612e-228;
bool r17190 = r17182 <= r17189;
double r17191 = r17182 * r17182;
double r17192 = a;
double r17193 = r17192 * r17186;
double r17194 = r17191 - r17193;
double r17195 = sqrt(r17194);
double r17196 = r17195 - r17182;
double r17197 = r17186 / r17196;
double r17198 = 9.347996314154137e+42;
bool r17199 = r17182 <= r17198;
double r17200 = -r17182;
double r17201 = 2.0;
double r17202 = pow(r17182, r17201);
double r17203 = r17202 - r17193;
double r17204 = sqrt(r17203);
double r17205 = r17200 - r17204;
double r17206 = r17205 / r17192;
double r17207 = -2.0;
double r17208 = r17182 / r17192;
double r17209 = r17207 * r17208;
double r17210 = r17199 ? r17206 : r17209;
double r17211 = r17190 ? r17197 : r17210;
double r17212 = r17184 ? r17188 : r17211;
return r17212;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -1.0245899460467552e+154Initial program 64.0
Taylor expanded around -inf 1.3
if -1.0245899460467552e+154 < b_2 < -1.9151734797750612e-228Initial program 37.3
rmApplied flip--37.3
Simplified15.7
Simplified15.7
rmApplied div-inv15.7
rmApplied *-un-lft-identity15.7
Applied associate-*l*15.7
Simplified13.6
Taylor expanded around 0 6.9
if -1.9151734797750612e-228 < b_2 < 9.347996314154137e+42Initial program 10.7
Taylor expanded around 0 10.7
if 9.347996314154137e+42 < b_2 Initial program 37.1
rmApplied flip--61.4
Simplified60.8
Simplified60.8
Taylor expanded around 0 5.9
Final simplification6.8
herbie shell --seed 2020043
(FPCore (a b_2 c)
:name "quad2m (problem 3.2.1, negative)"
:precision binary64
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))