\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 r80109 = b_2;
double r80110 = -r80109;
double r80111 = r80109 * r80109;
double r80112 = a;
double r80113 = c;
double r80114 = r80112 * r80113;
double r80115 = r80111 - r80114;
double r80116 = sqrt(r80115);
double r80117 = r80110 - r80116;
double r80118 = r80117 / r80112;
return r80118;
}
double f(double a, double b_2, double c) {
double r80119 = b_2;
double r80120 = -1.0245899460467552e+154;
bool r80121 = r80119 <= r80120;
double r80122 = -0.5;
double r80123 = c;
double r80124 = r80123 / r80119;
double r80125 = r80122 * r80124;
double r80126 = -1.9151734797750612e-228;
bool r80127 = r80119 <= r80126;
double r80128 = r80119 * r80119;
double r80129 = a;
double r80130 = r80129 * r80123;
double r80131 = r80128 - r80130;
double r80132 = sqrt(r80131);
double r80133 = r80132 - r80119;
double r80134 = r80123 / r80133;
double r80135 = 9.347996314154137e+42;
bool r80136 = r80119 <= r80135;
double r80137 = -r80119;
double r80138 = 2.0;
double r80139 = pow(r80119, r80138);
double r80140 = r80139 - r80130;
double r80141 = sqrt(r80140);
double r80142 = r80137 - r80141;
double r80143 = r80142 / r80129;
double r80144 = -2.0;
double r80145 = r80119 / r80129;
double r80146 = r80144 * r80145;
double r80147 = r80136 ? r80143 : r80146;
double r80148 = r80127 ? r80134 : r80147;
double r80149 = r80121 ? r80125 : r80148;
return r80149;
}



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 *-un-lft-identity15.7
Applied times-frac15.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 "NMSE problem 3.2.1"
:precision binary64
(/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))