\frac{1 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}\frac{1 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}double f(double t) {
double r57764 = 1.0;
double r57765 = 2.0;
double r57766 = t;
double r57767 = r57765 / r57766;
double r57768 = r57764 / r57766;
double r57769 = r57764 + r57768;
double r57770 = r57767 / r57769;
double r57771 = r57765 - r57770;
double r57772 = r57771 * r57771;
double r57773 = r57764 + r57772;
double r57774 = r57765 + r57772;
double r57775 = r57773 / r57774;
return r57775;
}
double f(double t) {
double r57776 = 1.0;
double r57777 = 2.0;
double r57778 = t;
double r57779 = r57777 / r57778;
double r57780 = r57776 / r57778;
double r57781 = r57776 + r57780;
double r57782 = r57779 / r57781;
double r57783 = r57777 - r57782;
double r57784 = r57783 * r57783;
double r57785 = r57776 + r57784;
double r57786 = r57777 + r57784;
double r57787 = r57785 / r57786;
return r57787;
}



Bits error versus t
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2020059
(FPCore (t)
:name "Kahan p13 Example 2"
:precision binary64
(/ (+ 1 (* (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))) (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))))) (+ 2 (* (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))) (- 2 (/ (/ 2 t) (+ 1 (/ 1 t))))))))