\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\frac{\frac{{1.0}^{3} + {\left(\frac{\frac{\beta + \alpha}{\frac{2 \cdot i + \left(\beta + \alpha\right)}{\beta - \alpha}}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}\right)}^{3}}{\left(1.0 \cdot 1.0 - 1.0 \cdot \frac{\frac{\beta + \alpha}{\frac{2 \cdot i + \left(\beta + \alpha\right)}{\beta - \alpha}}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}\right) + \frac{\frac{\beta + \alpha}{\frac{2 \cdot i + \left(\beta + \alpha\right)}{\beta - \alpha}}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)} \cdot \frac{\frac{\beta + \alpha}{\frac{2 \cdot i + \left(\beta + \alpha\right)}{\beta - \alpha}}}{2.0 + \left(2 \cdot i + \left(\beta + \alpha\right)\right)}}}{2.0}double f(double alpha, double beta, double i) {
double r4553663 = alpha;
double r4553664 = beta;
double r4553665 = r4553663 + r4553664;
double r4553666 = r4553664 - r4553663;
double r4553667 = r4553665 * r4553666;
double r4553668 = 2.0;
double r4553669 = i;
double r4553670 = r4553668 * r4553669;
double r4553671 = r4553665 + r4553670;
double r4553672 = r4553667 / r4553671;
double r4553673 = 2.0;
double r4553674 = r4553671 + r4553673;
double r4553675 = r4553672 / r4553674;
double r4553676 = 1.0;
double r4553677 = r4553675 + r4553676;
double r4553678 = r4553677 / r4553673;
return r4553678;
}
double f(double alpha, double beta, double i) {
double r4553679 = 1.0;
double r4553680 = 3.0;
double r4553681 = pow(r4553679, r4553680);
double r4553682 = beta;
double r4553683 = alpha;
double r4553684 = r4553682 + r4553683;
double r4553685 = 2.0;
double r4553686 = i;
double r4553687 = r4553685 * r4553686;
double r4553688 = r4553687 + r4553684;
double r4553689 = r4553682 - r4553683;
double r4553690 = r4553688 / r4553689;
double r4553691 = r4553684 / r4553690;
double r4553692 = 2.0;
double r4553693 = r4553692 + r4553688;
double r4553694 = r4553691 / r4553693;
double r4553695 = pow(r4553694, r4553680);
double r4553696 = r4553681 + r4553695;
double r4553697 = r4553679 * r4553679;
double r4553698 = r4553679 * r4553694;
double r4553699 = r4553697 - r4553698;
double r4553700 = r4553694 * r4553694;
double r4553701 = r4553699 + r4553700;
double r4553702 = r4553696 / r4553701;
double r4553703 = r4553702 / r4553692;
return r4553703;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
Initial program 24.0
rmApplied associate-/l*12.4
rmApplied flip3-+12.4
Final simplification12.4
herbie shell --seed 2019138
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:pre (and (> alpha -1) (> beta -1) (> i 0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))