\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 r770980 = 1.0;
double r770981 = 2.0;
double r770982 = t;
double r770983 = r770981 / r770982;
double r770984 = r770980 / r770982;
double r770985 = r770980 + r770984;
double r770986 = r770983 / r770985;
double r770987 = r770981 - r770986;
double r770988 = r770987 * r770987;
double r770989 = r770980 + r770988;
double r770990 = r770981 + r770988;
double r770991 = r770989 / r770990;
return r770991;
}
double f(double t) {
double r770992 = 1.0;
double r770993 = 2.0;
double r770994 = t;
double r770995 = r770992 + r770994;
double r770996 = r770993 / r770995;
double r770997 = r770993 - r770996;
double r770998 = r770997 * r770997;
double r770999 = r770992 + r770998;
double r771000 = r770993 + r770998;
double r771001 = r770999 / r771000;
return r771001;
}



Bits error versus t
Results
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019152
(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))))))))