\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 r51875 = 1.0;
double r51876 = 2.0;
double r51877 = t;
double r51878 = r51876 / r51877;
double r51879 = r51875 / r51877;
double r51880 = r51875 + r51879;
double r51881 = r51878 / r51880;
double r51882 = r51876 - r51881;
double r51883 = r51882 * r51882;
double r51884 = r51875 + r51883;
double r51885 = r51876 + r51883;
double r51886 = r51884 / r51885;
return r51886;
}
double f(double t) {
double r51887 = 1.0;
double r51888 = 2.0;
double r51889 = t;
double r51890 = r51888 / r51889;
double r51891 = r51887 / r51889;
double r51892 = r51887 + r51891;
double r51893 = r51890 / r51892;
double r51894 = r51888 - r51893;
double r51895 = r51894 * r51894;
double r51896 = r51887 + r51895;
double r51897 = r51888 + r51895;
double r51898 = r51896 / r51897;
return r51898;
}



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