\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}\sqrt{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}} \cdot \frac{\sqrt{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}double f(double alpha, double beta) {
double r3550625 = alpha;
double r3550626 = beta;
double r3550627 = r3550625 + r3550626;
double r3550628 = r3550626 * r3550625;
double r3550629 = r3550627 + r3550628;
double r3550630 = 1.0;
double r3550631 = r3550629 + r3550630;
double r3550632 = 2.0;
double r3550633 = 1.0;
double r3550634 = r3550632 * r3550633;
double r3550635 = r3550627 + r3550634;
double r3550636 = r3550631 / r3550635;
double r3550637 = r3550636 / r3550635;
double r3550638 = r3550635 + r3550630;
double r3550639 = r3550637 / r3550638;
return r3550639;
}
double f(double alpha, double beta) {
double r3550640 = 1.0;
double r3550641 = alpha;
double r3550642 = beta;
double r3550643 = r3550641 * r3550642;
double r3550644 = r3550642 + r3550641;
double r3550645 = r3550643 + r3550644;
double r3550646 = r3550640 + r3550645;
double r3550647 = 2.0;
double r3550648 = r3550647 + r3550644;
double r3550649 = r3550646 / r3550648;
double r3550650 = r3550649 / r3550648;
double r3550651 = sqrt(r3550650);
double r3550652 = r3550648 + r3550640;
double r3550653 = r3550651 / r3550652;
double r3550654 = r3550651 * r3550653;
return r3550654;
}



Bits error versus alpha



Bits error versus beta
Results
Initial program 3.4
rmApplied *-un-lft-identity3.4
Applied add-sqr-sqrt3.5
Applied times-frac3.5
Final simplification3.5
herbie shell --seed 2019163
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:pre (and (> alpha -1) (> beta -1))
(/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)))