\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{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right)}{2 + \left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right)}double f(double t) {
double r1741841 = 1.0;
double r1741842 = 2.0;
double r1741843 = t;
double r1741844 = r1741842 / r1741843;
double r1741845 = r1741841 / r1741843;
double r1741846 = r1741841 + r1741845;
double r1741847 = r1741844 / r1741846;
double r1741848 = r1741842 - r1741847;
double r1741849 = r1741848 * r1741848;
double r1741850 = r1741841 + r1741849;
double r1741851 = r1741842 + r1741849;
double r1741852 = r1741850 / r1741851;
return r1741852;
}
double f(double t) {
double r1741853 = 1.0;
double r1741854 = 2.0;
double r1741855 = t;
double r1741856 = r1741853 + r1741855;
double r1741857 = r1741854 / r1741856;
double r1741858 = r1741854 - r1741857;
double r1741859 = r1741858 * r1741858;
double r1741860 = r1741853 + r1741859;
double r1741861 = r1741854 + r1741859;
double r1741862 = r1741860 / r1741861;
return r1741862;
}



Bits error versus t
Results
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019142
(FPCore (t)
:name "Kahan p13 Example 2"
(/ (+ 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))))))))