\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 1.184990857703664873136478242559920523798 \cdot 10^{196}:\\
\;\;\;\;\frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right) + \alpha \cdot \beta}{\left(\beta + \alpha\right) + 2 \cdot i} \cdot \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)}}{\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 r5783149 = i;
double r5783150 = alpha;
double r5783151 = beta;
double r5783152 = r5783150 + r5783151;
double r5783153 = r5783152 + r5783149;
double r5783154 = r5783149 * r5783153;
double r5783155 = r5783151 * r5783150;
double r5783156 = r5783155 + r5783154;
double r5783157 = r5783154 * r5783156;
double r5783158 = 2.0;
double r5783159 = r5783158 * r5783149;
double r5783160 = r5783152 + r5783159;
double r5783161 = r5783160 * r5783160;
double r5783162 = r5783157 / r5783161;
double r5783163 = 1.0;
double r5783164 = r5783161 - r5783163;
double r5783165 = r5783162 / r5783164;
return r5783165;
}
double f(double alpha, double beta, double i) {
double r5783166 = beta;
double r5783167 = 1.1849908577036649e+196;
bool r5783168 = r5783166 <= r5783167;
double r5783169 = i;
double r5783170 = alpha;
double r5783171 = r5783166 + r5783170;
double r5783172 = r5783169 + r5783171;
double r5783173 = r5783169 * r5783172;
double r5783174 = r5783170 * r5783166;
double r5783175 = r5783173 + r5783174;
double r5783176 = 2.0;
double r5783177 = r5783176 * r5783169;
double r5783178 = r5783171 + r5783177;
double r5783179 = r5783175 / r5783178;
double r5783180 = r5783173 / r5783178;
double r5783181 = 1.0;
double r5783182 = sqrt(r5783181);
double r5783183 = r5783182 + r5783178;
double r5783184 = r5783180 / r5783183;
double r5783185 = r5783179 * r5783184;
double r5783186 = r5783178 - r5783182;
double r5783187 = r5783185 / r5783186;
double r5783188 = 0.0;
double r5783189 = r5783168 ? r5783187 : r5783188;
return r5783189;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 1.1849908577036649e+196Initial program 52.5
rmApplied add-sqr-sqrt52.5
Applied difference-of-squares52.5
Applied times-frac38.1
Applied times-frac35.7
rmApplied associate-*r/35.7
if 1.1849908577036649e+196 < beta Initial program 64.0
Taylor expanded around inf 45.2
Final simplification36.8
herbie shell --seed 2019169
(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)))