\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}\begin{array}{l}
\mathbf{if}\;\beta \le 5.188945744706776056846709445192721671049 \cdot 10^{218}:\\
\;\;\;\;\sqrt[3]{\left(\left(\frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)} \cdot \frac{\mathsf{fma}\left(0.25, \beta + \alpha, i \cdot 0.5\right)}{\left(\left(\beta + \alpha\right) + i \cdot 2\right) - \sqrt{1}}\right) \cdot \left(\frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)} \cdot \frac{\mathsf{fma}\left(0.25, \beta + \alpha, i \cdot 0.5\right)}{\left(\left(\beta + \alpha\right) + i \cdot 2\right) - \sqrt{1}}\right)\right) \cdot \left(\frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)} \cdot \frac{\mathsf{fma}\left(0.25, \beta + \alpha, i \cdot 0.5\right)}{\left(\left(\beta + \alpha\right) + i \cdot 2\right) - \sqrt{1}}\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{i}{\left(\left(\beta + \alpha\right) + i \cdot 2\right) - \sqrt{1}} \cdot \frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)}\\
\end{array}double f(double alpha, double beta, double i) {
double r4280208 = i;
double r4280209 = alpha;
double r4280210 = beta;
double r4280211 = r4280209 + r4280210;
double r4280212 = r4280211 + r4280208;
double r4280213 = r4280208 * r4280212;
double r4280214 = r4280210 * r4280209;
double r4280215 = r4280214 + r4280213;
double r4280216 = r4280213 * r4280215;
double r4280217 = 2.0;
double r4280218 = r4280217 * r4280208;
double r4280219 = r4280211 + r4280218;
double r4280220 = r4280219 * r4280219;
double r4280221 = r4280216 / r4280220;
double r4280222 = 1.0;
double r4280223 = r4280220 - r4280222;
double r4280224 = r4280221 / r4280223;
return r4280224;
}
double f(double alpha, double beta, double i) {
double r4280225 = beta;
double r4280226 = 5.188945744706776e+218;
bool r4280227 = r4280225 <= r4280226;
double r4280228 = i;
double r4280229 = alpha;
double r4280230 = r4280225 + r4280229;
double r4280231 = 2.0;
double r4280232 = r4280228 * r4280231;
double r4280233 = r4280230 + r4280232;
double r4280234 = r4280228 + r4280230;
double r4280235 = r4280233 / r4280234;
double r4280236 = r4280228 / r4280235;
double r4280237 = 1.0;
double r4280238 = sqrt(r4280237);
double r4280239 = r4280238 + r4280233;
double r4280240 = r4280236 / r4280239;
double r4280241 = 0.25;
double r4280242 = 0.5;
double r4280243 = r4280228 * r4280242;
double r4280244 = fma(r4280241, r4280230, r4280243);
double r4280245 = r4280233 - r4280238;
double r4280246 = r4280244 / r4280245;
double r4280247 = r4280240 * r4280246;
double r4280248 = r4280247 * r4280247;
double r4280249 = r4280248 * r4280247;
double r4280250 = cbrt(r4280249);
double r4280251 = r4280228 / r4280245;
double r4280252 = r4280251 * r4280240;
double r4280253 = r4280227 ? r4280250 : r4280252;
return r4280253;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if beta < 5.188945744706776e+218Initial program 53.7
rmApplied add-sqr-sqrt53.7
Applied difference-of-squares53.7
Applied times-frac38.6
Applied times-frac36.2
rmApplied associate-/l*36.2
Taylor expanded around 0 14.4
Simplified14.4
rmApplied add-cbrt-cube12.7
if 5.188945744706776e+218 < beta Initial program 64.0
rmApplied add-sqr-sqrt64.0
Applied difference-of-squares64.0
Applied times-frac58.1
Applied times-frac57.7
rmApplied associate-/l*57.7
Taylor expanded around inf 13.8
Final simplification12.8
herbie shell --seed 2019171 +o rules:numerics
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:pre (and (> alpha -1.0) (> beta -1.0) (> i 1.0))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i)))) (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0)))