\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\begin{array}{l}
\mathbf{if}\;\alpha \le 1.49557542553151027 \cdot 10^{178}:\\
\;\;\;\;\frac{\frac{-\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{-\left(\left(\alpha + \beta\right) + 2 \cdot 1\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\\
\mathbf{else}:\\
\;\;\;\;\frac{0.25 \cdot \alpha + \left(0.5 + 0.25 \cdot \beta\right)}{\left(\alpha + \beta\right) \cdot \left(\alpha + \beta\right) - \left(2 \cdot 1\right) \cdot \left(2 \cdot 1\right)} \cdot \frac{\left(\alpha + \beta\right) - 2 \cdot 1}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\\
\end{array}double f(double alpha, double beta) {
double r126103 = alpha;
double r126104 = beta;
double r126105 = r126103 + r126104;
double r126106 = r126104 * r126103;
double r126107 = r126105 + r126106;
double r126108 = 1.0;
double r126109 = r126107 + r126108;
double r126110 = 2.0;
double r126111 = r126110 * r126108;
double r126112 = r126105 + r126111;
double r126113 = r126109 / r126112;
double r126114 = r126113 / r126112;
double r126115 = r126112 + r126108;
double r126116 = r126114 / r126115;
return r126116;
}
double f(double alpha, double beta) {
double r126117 = alpha;
double r126118 = 1.4955754255315103e+178;
bool r126119 = r126117 <= r126118;
double r126120 = beta;
double r126121 = r126117 + r126120;
double r126122 = r126120 * r126117;
double r126123 = r126121 + r126122;
double r126124 = 1.0;
double r126125 = r126123 + r126124;
double r126126 = 2.0;
double r126127 = r126126 * r126124;
double r126128 = r126121 + r126127;
double r126129 = r126125 / r126128;
double r126130 = -r126129;
double r126131 = -r126128;
double r126132 = r126130 / r126131;
double r126133 = r126128 + r126124;
double r126134 = r126132 / r126133;
double r126135 = 0.25;
double r126136 = r126135 * r126117;
double r126137 = 0.5;
double r126138 = r126135 * r126120;
double r126139 = r126137 + r126138;
double r126140 = r126136 + r126139;
double r126141 = r126121 * r126121;
double r126142 = r126127 * r126127;
double r126143 = r126141 - r126142;
double r126144 = r126140 / r126143;
double r126145 = r126121 - r126127;
double r126146 = r126145 / r126133;
double r126147 = r126144 * r126146;
double r126148 = r126119 ? r126134 : r126147;
return r126148;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1.4955754255315103e+178Initial program 1.5
rmApplied frac-2neg1.5
if 1.4955754255315103e+178 < alpha Initial program 16.9
rmApplied *-un-lft-identity16.9
Applied flip-+17.5
Applied associate-/r/17.5
Applied times-frac17.5
Simplified17.5
Taylor expanded around 0 7.2
Final simplification2.3
herbie shell --seed 2020049
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:precision binary64
:pre (and (> alpha -1) (> beta -1))
(/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1)))