\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 4.524890541013963810292220327990753487478 \cdot 10^{196}:\\
\;\;\;\;\frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right)}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right) + \alpha \cdot \beta}{\left(\beta + \alpha\right) + 2 \cdot i}}{\left(\left(\beta + \alpha\right) + 2 \cdot i\right) - \sqrt{1}}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r4028224 = i;
double r4028225 = alpha;
double r4028226 = beta;
double r4028227 = r4028225 + r4028226;
double r4028228 = r4028227 + r4028224;
double r4028229 = r4028224 * r4028228;
double r4028230 = r4028226 * r4028225;
double r4028231 = r4028230 + r4028229;
double r4028232 = r4028229 * r4028231;
double r4028233 = 2.0;
double r4028234 = r4028233 * r4028224;
double r4028235 = r4028227 + r4028234;
double r4028236 = r4028235 * r4028235;
double r4028237 = r4028232 / r4028236;
double r4028238 = 1.0;
double r4028239 = r4028236 - r4028238;
double r4028240 = r4028237 / r4028239;
return r4028240;
}
double f(double alpha, double beta, double i) {
double r4028241 = beta;
double r4028242 = 4.524890541013964e+196;
bool r4028243 = r4028241 <= r4028242;
double r4028244 = i;
double r4028245 = alpha;
double r4028246 = r4028241 + r4028245;
double r4028247 = r4028244 + r4028246;
double r4028248 = r4028244 * r4028247;
double r4028249 = 2.0;
double r4028250 = r4028249 * r4028244;
double r4028251 = r4028246 + r4028250;
double r4028252 = r4028248 / r4028251;
double r4028253 = 1.0;
double r4028254 = sqrt(r4028253);
double r4028255 = r4028254 + r4028251;
double r4028256 = r4028252 / r4028255;
double r4028257 = r4028245 * r4028241;
double r4028258 = r4028248 + r4028257;
double r4028259 = r4028258 / r4028251;
double r4028260 = r4028251 - r4028254;
double r4028261 = r4028259 / r4028260;
double r4028262 = r4028256 * r4028261;
double r4028263 = 0.0;
double r4028264 = r4028243 ? r4028262 : r4028263;
return r4028264;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 4.524890541013964e+196Initial program 53.0
rmApplied add-sqr-sqrt53.0
Applied difference-of-squares53.0
Applied times-frac37.6
Applied times-frac35.6
if 4.524890541013964e+196 < beta Initial program 64.0
Taylor expanded around inf 43.6
Final simplification36.6
herbie shell --seed 2019172 +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)))