\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 9.97332166790088 \cdot 10^{+32}:\\
\;\;\;\;\frac{\frac{1}{\left(\beta + \alpha\right) + 2.0} \cdot \beta - \mathsf{fma}\left(\frac{\alpha}{\left(\beta + \alpha\right) \cdot \left(\beta + \alpha\right) - 2.0 \cdot 2.0}, \left(\beta + \alpha\right) - 2.0, -1.0\right)}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2.0} - \left(\left(\frac{4.0}{\alpha \cdot \alpha} - \frac{2.0}{\alpha}\right) - \frac{8.0}{\alpha \cdot \left(\alpha \cdot \alpha\right)}\right)}{2.0}\\
\end{array}double f(double alpha, double beta) {
double r2394730 = beta;
double r2394731 = alpha;
double r2394732 = r2394730 - r2394731;
double r2394733 = r2394731 + r2394730;
double r2394734 = 2.0;
double r2394735 = r2394733 + r2394734;
double r2394736 = r2394732 / r2394735;
double r2394737 = 1.0;
double r2394738 = r2394736 + r2394737;
double r2394739 = r2394738 / r2394734;
return r2394739;
}
double f(double alpha, double beta) {
double r2394740 = alpha;
double r2394741 = 9.97332166790088e+32;
bool r2394742 = r2394740 <= r2394741;
double r2394743 = 1.0;
double r2394744 = beta;
double r2394745 = r2394744 + r2394740;
double r2394746 = 2.0;
double r2394747 = r2394745 + r2394746;
double r2394748 = r2394743 / r2394747;
double r2394749 = r2394748 * r2394744;
double r2394750 = r2394745 * r2394745;
double r2394751 = r2394746 * r2394746;
double r2394752 = r2394750 - r2394751;
double r2394753 = r2394740 / r2394752;
double r2394754 = r2394745 - r2394746;
double r2394755 = 1.0;
double r2394756 = -r2394755;
double r2394757 = fma(r2394753, r2394754, r2394756);
double r2394758 = r2394749 - r2394757;
double r2394759 = r2394758 / r2394746;
double r2394760 = r2394744 / r2394747;
double r2394761 = 4.0;
double r2394762 = r2394740 * r2394740;
double r2394763 = r2394761 / r2394762;
double r2394764 = r2394746 / r2394740;
double r2394765 = r2394763 - r2394764;
double r2394766 = 8.0;
double r2394767 = r2394740 * r2394762;
double r2394768 = r2394766 / r2394767;
double r2394769 = r2394765 - r2394768;
double r2394770 = r2394760 - r2394769;
double r2394771 = r2394770 / r2394746;
double r2394772 = r2394742 ? r2394759 : r2394771;
return r2394772;
}



Bits error versus alpha



Bits error versus beta
if alpha < 9.97332166790088e+32Initial program 1.4
rmApplied div-sub1.4
Applied associate-+l-1.4
rmApplied div-inv1.4
rmApplied flip-+1.4
Applied associate-/r/1.4
Applied fma-neg1.4
if 9.97332166790088e+32 < alpha Initial program 51.2
rmApplied div-sub51.1
Applied associate-+l-49.5
Taylor expanded around -inf 18.0
Simplified18.0
Final simplification6.4
herbie shell --seed 2019138 +o rules:numerics
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:pre (and (> alpha -1) (> beta -1))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))