\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}\;i \le 4.82276421781825579 \cdot 10^{120}:\\
\;\;\;\;\sqrt{\frac{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \frac{\frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}} \cdot \sqrt{\frac{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \frac{\frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{i}{1}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}}} \cdot \left(\frac{\frac{\left(\alpha + \beta\right) + i}{\left(\alpha + \beta\right) + 2 \cdot i}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}}} \cdot \frac{0.25 \cdot \alpha + \left(0.5 \cdot i + 0.25 \cdot \beta\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}\right)\\
\end{array}double f(double alpha, double beta, double i) {
double r147211 = i;
double r147212 = alpha;
double r147213 = beta;
double r147214 = r147212 + r147213;
double r147215 = r147214 + r147211;
double r147216 = r147211 * r147215;
double r147217 = r147213 * r147212;
double r147218 = r147217 + r147216;
double r147219 = r147216 * r147218;
double r147220 = 2.0;
double r147221 = r147220 * r147211;
double r147222 = r147214 + r147221;
double r147223 = r147222 * r147222;
double r147224 = r147219 / r147223;
double r147225 = 1.0;
double r147226 = r147223 - r147225;
double r147227 = r147224 / r147226;
return r147227;
}
double f(double alpha, double beta, double i) {
double r147228 = i;
double r147229 = 4.822764217818256e+120;
bool r147230 = r147228 <= r147229;
double r147231 = alpha;
double r147232 = beta;
double r147233 = r147231 + r147232;
double r147234 = r147233 + r147228;
double r147235 = r147228 * r147234;
double r147236 = 2.0;
double r147237 = r147236 * r147228;
double r147238 = r147233 + r147237;
double r147239 = r147235 / r147238;
double r147240 = 1.0;
double r147241 = sqrt(r147240);
double r147242 = r147238 + r147241;
double r147243 = r147239 / r147242;
double r147244 = r147232 * r147231;
double r147245 = r147244 + r147235;
double r147246 = r147245 / r147238;
double r147247 = r147238 - r147241;
double r147248 = r147246 / r147247;
double r147249 = r147243 * r147248;
double r147250 = sqrt(r147249);
double r147251 = r147250 * r147250;
double r147252 = 1.0;
double r147253 = r147228 / r147252;
double r147254 = sqrt(r147242);
double r147255 = r147253 / r147254;
double r147256 = r147234 / r147238;
double r147257 = r147256 / r147254;
double r147258 = 0.25;
double r147259 = r147258 * r147231;
double r147260 = 0.5;
double r147261 = r147260 * r147228;
double r147262 = r147258 * r147232;
double r147263 = r147261 + r147262;
double r147264 = r147259 + r147263;
double r147265 = r147264 / r147247;
double r147266 = r147257 * r147265;
double r147267 = r147255 * r147266;
double r147268 = r147230 ? r147251 : r147267;
return r147268;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if i < 4.822764217818256e+120Initial program 38.5
rmApplied add-sqr-sqrt38.5
Applied difference-of-squares38.5
Applied times-frac14.5
Applied times-frac9.4
rmApplied add-sqr-sqrt9.4
if 4.822764217818256e+120 < i Initial program 64.0
rmApplied add-sqr-sqrt64.0
Applied difference-of-squares64.0
Applied times-frac56.1
Applied times-frac55.8
rmApplied add-sqr-sqrt55.8
Applied *-un-lft-identity55.8
Applied times-frac55.8
Applied times-frac55.8
Applied associate-*l*55.8
Taylor expanded around 0 12.2
Final simplification11.1
herbie shell --seed 2020060
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:precision binary64
:pre (and (> alpha -1) (> beta -1) (> i 1))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1)))