\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}\;\alpha \le 1.63499858321530814 \cdot 10^{217}:\\
\;\;\;\;\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{1}{\frac{\frac{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}{\sqrt{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}}}{\frac{\sqrt{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}}{\left(\alpha + \beta\right) + 2 \cdot i}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{0}{\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}\\
\end{array}double f(double alpha, double beta, double i) {
double r107054 = i;
double r107055 = alpha;
double r107056 = beta;
double r107057 = r107055 + r107056;
double r107058 = r107057 + r107054;
double r107059 = r107054 * r107058;
double r107060 = r107056 * r107055;
double r107061 = r107060 + r107059;
double r107062 = r107059 * r107061;
double r107063 = 2.0;
double r107064 = r107063 * r107054;
double r107065 = r107057 + r107064;
double r107066 = r107065 * r107065;
double r107067 = r107062 / r107066;
double r107068 = 1.0;
double r107069 = r107066 - r107068;
double r107070 = r107067 / r107069;
return r107070;
}
double f(double alpha, double beta, double i) {
double r107071 = alpha;
double r107072 = 1.6349985832153081e+217;
bool r107073 = r107071 <= r107072;
double r107074 = i;
double r107075 = beta;
double r107076 = r107071 + r107075;
double r107077 = r107076 + r107074;
double r107078 = r107074 * r107077;
double r107079 = 2.0;
double r107080 = r107079 * r107074;
double r107081 = r107076 + r107080;
double r107082 = r107078 / r107081;
double r107083 = 1.0;
double r107084 = sqrt(r107083);
double r107085 = r107081 + r107084;
double r107086 = r107082 / r107085;
double r107087 = 1.0;
double r107088 = r107081 - r107084;
double r107089 = r107075 * r107071;
double r107090 = r107089 + r107078;
double r107091 = sqrt(r107090);
double r107092 = r107088 / r107091;
double r107093 = r107091 / r107081;
double r107094 = r107092 / r107093;
double r107095 = r107087 / r107094;
double r107096 = r107086 * r107095;
double r107097 = 0.0;
double r107098 = r107081 * r107081;
double r107099 = r107097 / r107098;
double r107100 = r107098 - r107083;
double r107101 = r107099 / r107100;
double r107102 = r107073 ? r107096 : r107101;
return r107102;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 1.6349985832153081e+217Initial program 53.2
rmApplied add-sqr-sqrt53.2
Applied difference-of-squares53.2
Applied times-frac38.2
Applied times-frac35.9
rmApplied clear-num35.9
rmApplied *-un-lft-identity35.9
Applied add-sqr-sqrt35.9
Applied times-frac35.9
Applied associate-/r*35.9
Simplified35.9
if 1.6349985832153081e+217 < alpha Initial program 64.0
Taylor expanded around 0 42.7
Final simplification36.6
herbie shell --seed 2020035
(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)))