\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{\mathsf{fma}\left(2 - \frac{2}{\mathsf{fma}\left(1, t, 1\right)}, 2 - \frac{2}{\mathsf{fma}\left(1, t, 1\right)}, 1\right)}{\mathsf{fma}\left(2 - \frac{2}{\mathsf{fma}\left(1, t, 1\right)}, 2 - \frac{2}{\mathsf{fma}\left(1, t, 1\right)}, 2\right)}double f(double t) {
double r52892 = 1.0;
double r52893 = 2.0;
double r52894 = t;
double r52895 = r52893 / r52894;
double r52896 = r52892 / r52894;
double r52897 = r52892 + r52896;
double r52898 = r52895 / r52897;
double r52899 = r52893 - r52898;
double r52900 = r52899 * r52899;
double r52901 = r52892 + r52900;
double r52902 = r52893 + r52900;
double r52903 = r52901 / r52902;
return r52903;
}
double f(double t) {
double r52904 = 2.0;
double r52905 = 1.0;
double r52906 = t;
double r52907 = fma(r52905, r52906, r52905);
double r52908 = r52904 / r52907;
double r52909 = r52904 - r52908;
double r52910 = fma(r52909, r52909, r52905);
double r52911 = fma(r52909, r52909, r52904);
double r52912 = r52910 / r52911;
return r52912;
}



Bits error versus t
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019351 +o rules:numerics
(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))))))))