\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}\left(\frac{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}\right) \cdot \frac{1}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}double f(double alpha, double beta, double i) {
double r199857 = i;
double r199858 = alpha;
double r199859 = beta;
double r199860 = r199858 + r199859;
double r199861 = r199860 + r199857;
double r199862 = r199857 * r199861;
double r199863 = r199859 * r199858;
double r199864 = r199863 + r199862;
double r199865 = r199862 * r199864;
double r199866 = 2.0;
double r199867 = r199866 * r199857;
double r199868 = r199860 + r199867;
double r199869 = r199868 * r199868;
double r199870 = r199865 / r199869;
double r199871 = 1.0;
double r199872 = r199869 - r199871;
double r199873 = r199870 / r199872;
return r199873;
}
double f(double alpha, double beta, double i) {
double r199874 = i;
double r199875 = alpha;
double r199876 = beta;
double r199877 = r199875 + r199876;
double r199878 = r199877 + r199874;
double r199879 = r199874 * r199878;
double r199880 = 2.0;
double r199881 = r199880 * r199874;
double r199882 = r199877 + r199881;
double r199883 = r199879 / r199882;
double r199884 = 1.0;
double r199885 = sqrt(r199884);
double r199886 = r199882 + r199885;
double r199887 = r199883 / r199886;
double r199888 = r199876 * r199875;
double r199889 = r199888 + r199879;
double r199890 = r199889 / r199882;
double r199891 = r199887 * r199890;
double r199892 = 1.0;
double r199893 = r199882 - r199885;
double r199894 = r199892 / r199893;
double r199895 = r199891 * r199894;
return r199895;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
Initial program 53.8
rmApplied add-sqr-sqrt53.8
Applied difference-of-squares53.8
Applied times-frac39.5
Applied times-frac37.4
rmApplied div-inv37.5
Applied associate-*r*37.5
Final simplification37.5
herbie shell --seed 2020042
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:precision binary64
:pre (and (> alpha -1) (> beta -1) (> i 1))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1)))