\frac{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\begin{array}{l}
\mathbf{if}\;b_2 \le -8.593339349284273934392489776701937282956 \cdot 10^{151}:\\
\;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - 2 \cdot \frac{b_2}{a}\\
\mathbf{elif}\;b_2 \le -1.310125818367260256329730829931519203575 \cdot 10^{-294}:\\
\;\;\;\;\frac{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\
\mathbf{elif}\;b_2 \le 1.076384822638075226373023800566186486206 \cdot 10^{126}:\\
\;\;\;\;\frac{1}{\frac{1 \cdot \left(\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}\right)}{c}}\\
\mathbf{else}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\
\end{array}double f(double a, double b_2, double c) {
double r27948 = b_2;
double r27949 = -r27948;
double r27950 = r27948 * r27948;
double r27951 = a;
double r27952 = c;
double r27953 = r27951 * r27952;
double r27954 = r27950 - r27953;
double r27955 = sqrt(r27954);
double r27956 = r27949 + r27955;
double r27957 = r27956 / r27951;
return r27957;
}
double f(double a, double b_2, double c) {
double r27958 = b_2;
double r27959 = -8.593339349284274e+151;
bool r27960 = r27958 <= r27959;
double r27961 = 0.5;
double r27962 = c;
double r27963 = r27962 / r27958;
double r27964 = r27961 * r27963;
double r27965 = 2.0;
double r27966 = a;
double r27967 = r27958 / r27966;
double r27968 = r27965 * r27967;
double r27969 = r27964 - r27968;
double r27970 = -1.3101258183672603e-294;
bool r27971 = r27958 <= r27970;
double r27972 = -r27958;
double r27973 = r27958 * r27958;
double r27974 = r27966 * r27962;
double r27975 = r27973 - r27974;
double r27976 = sqrt(r27975);
double r27977 = r27972 + r27976;
double r27978 = r27977 / r27966;
double r27979 = 1.0763848226380752e+126;
bool r27980 = r27958 <= r27979;
double r27981 = 1.0;
double r27982 = r27972 - r27976;
double r27983 = r27981 * r27982;
double r27984 = r27983 / r27962;
double r27985 = r27981 / r27984;
double r27986 = -0.5;
double r27987 = r27986 * r27963;
double r27988 = r27980 ? r27985 : r27987;
double r27989 = r27971 ? r27978 : r27988;
double r27990 = r27960 ? r27969 : r27989;
return r27990;
}



Bits error versus a



Bits error versus b_2



Bits error versus c
Results
if b_2 < -8.593339349284274e+151Initial program 63.2
Taylor expanded around -inf 2.2
if -8.593339349284274e+151 < b_2 < -1.3101258183672603e-294Initial program 7.9
if -1.3101258183672603e-294 < b_2 < 1.0763848226380752e+126Initial program 33.4
rmApplied flip-+33.4
Simplified16.3
rmApplied *-un-lft-identity16.3
Applied *-un-lft-identity16.3
Applied times-frac16.3
Simplified16.3
Simplified14.4
rmApplied clear-num14.4
Simplified8.9
if 1.0763848226380752e+126 < b_2 Initial program 60.9
Taylor expanded around inf 1.8
Final simplification6.2
herbie shell --seed 2019318
(FPCore (a b_2 c)
:name "quad2p (problem 3.2.1, positive)"
:precision binary64
(/ (+ (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))