\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 878066079060307.9:\\
\;\;\;\;\frac{\mathsf{fma}\left(\left(\beta - \alpha\right), \left(\frac{1}{2.0 + \left(\beta + \alpha\right)}\right), 1.0\right)}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{2.0 + \left(\beta + \alpha\right)} - \mathsf{fma}\left(\left(\frac{-1}{\alpha}\right), 2.0, \left(\mathsf{fma}\left(\left(\frac{8.0}{\alpha \cdot \alpha}\right), \left(\frac{-1}{\alpha}\right), \left(\frac{4.0}{\alpha \cdot \alpha}\right)\right)\right)\right)}{2.0}\\
\end{array}double f(double alpha, double beta) {
double r24986748 = beta;
double r24986749 = alpha;
double r24986750 = r24986748 - r24986749;
double r24986751 = r24986749 + r24986748;
double r24986752 = 2.0;
double r24986753 = r24986751 + r24986752;
double r24986754 = r24986750 / r24986753;
double r24986755 = 1.0;
double r24986756 = r24986754 + r24986755;
double r24986757 = r24986756 / r24986752;
return r24986757;
}
double f(double alpha, double beta) {
double r24986758 = alpha;
double r24986759 = 878066079060307.9;
bool r24986760 = r24986758 <= r24986759;
double r24986761 = beta;
double r24986762 = r24986761 - r24986758;
double r24986763 = 1.0;
double r24986764 = 2.0;
double r24986765 = r24986761 + r24986758;
double r24986766 = r24986764 + r24986765;
double r24986767 = r24986763 / r24986766;
double r24986768 = 1.0;
double r24986769 = fma(r24986762, r24986767, r24986768);
double r24986770 = r24986769 / r24986764;
double r24986771 = r24986761 / r24986766;
double r24986772 = -1.0;
double r24986773 = r24986772 / r24986758;
double r24986774 = 8.0;
double r24986775 = r24986758 * r24986758;
double r24986776 = r24986774 / r24986775;
double r24986777 = 4.0;
double r24986778 = r24986777 / r24986775;
double r24986779 = fma(r24986776, r24986773, r24986778);
double r24986780 = fma(r24986773, r24986764, r24986779);
double r24986781 = r24986771 - r24986780;
double r24986782 = r24986781 / r24986764;
double r24986783 = r24986760 ? r24986770 : r24986782;
return r24986783;
}



Bits error versus alpha



Bits error versus beta
if alpha < 878066079060307.9Initial program 0.3
rmApplied div-inv0.3
Applied fma-def0.3
if 878066079060307.9 < alpha Initial program 51.0
rmApplied div-sub50.9
Applied associate-+l-49.3
Taylor expanded around -inf 18.0
Simplified18.0
Final simplification6.1
herbie shell --seed 2019125 +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))