\frac{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -2.37749702272254886 \cdot 10^{101}:\\
\;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - 2 \cdot \frac{b_2}{a}\\
\mathbf{elif}\;b_2 \le 1.9238883452280037 \cdot 10^{-130}:\\
\;\;\;\;\frac{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\
\mathbf{elif}\;b_2 \le 4.01993084419163312 \cdot 10^{109}:\\
\;\;\;\;\frac{\frac{0 + a \cdot c}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}}{a}\\
\mathbf{else}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\end{array}double f(double a, double b_2, double c) {
double r14159 = b_2;
double r14160 = -r14159;
double r14161 = r14159 * r14159;
double r14162 = a;
double r14163 = c;
double r14164 = r14162 * r14163;
double r14165 = r14161 - r14164;
double r14166 = sqrt(r14165);
double r14167 = r14160 + r14166;
double r14168 = r14167 / r14162;
return r14168;
}
double f(double a, double b_2, double c) {
double r14169 = b_2;
double r14170 = -2.377497022722549e+101;
bool r14171 = r14169 <= r14170;
double r14172 = 0.5;
double r14173 = c;
double r14174 = r14173 / r14169;
double r14175 = r14172 * r14174;
double r14176 = 2.0;
double r14177 = a;
double r14178 = r14169 / r14177;
double r14179 = r14176 * r14178;
double r14180 = r14175 - r14179;
double r14181 = 1.9238883452280037e-130;
bool r14182 = r14169 <= r14181;
double r14183 = -r14169;
double r14184 = r14169 * r14169;
double r14185 = r14177 * r14173;
double r14186 = r14184 - r14185;
double r14187 = sqrt(r14186);
double r14188 = r14183 + r14187;
double r14189 = r14188 / r14177;
double r14190 = 4.019930844191633e+109;
bool r14191 = r14169 <= r14190;
double r14192 = 0.0;
double r14193 = r14192 + r14185;
double r14194 = r14183 - r14187;
double r14195 = r14193 / r14194;
double r14196 = r14195 / r14177;
double r14197 = -0.5;
double r14198 = r14197 * r14174;
double r14199 = r14191 ? r14196 : r14198;
double r14200 = r14182 ? r14189 : r14199;
double r14201 = r14171 ? r14180 : r14200;
return r14201;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -2.377497022722549e+101Initial program 47.1
Taylor expanded around -inf 3.6
if -2.377497022722549e+101 < b_2 < 1.9238883452280037e-130Initial program 11.9
if 1.9238883452280037e-130 < b_2 < 4.019930844191633e+109Initial program 40.3
rmApplied flip-+40.3
Simplified15.5
if 4.019930844191633e+109 < b_2 Initial program 59.9
Taylor expanded around inf 2.4
Final simplification9.2
herbie shell --seed 2020060
(FPCore (a b_2 c)
:name "quad2p (problem 3.2.1, positive)"
:precision binary64
(/ (+ (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))