\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}{1 + t}, 2 - \frac{2}{1 + t}, 1\right)}{\mathsf{fma}\left(2 - \frac{2}{1 + t}, 2 - \frac{2}{1 + t}, 2\right)}double f(double t) {
double r1485793 = 1.0;
double r1485794 = 2.0;
double r1485795 = t;
double r1485796 = r1485794 / r1485795;
double r1485797 = r1485793 / r1485795;
double r1485798 = r1485793 + r1485797;
double r1485799 = r1485796 / r1485798;
double r1485800 = r1485794 - r1485799;
double r1485801 = r1485800 * r1485800;
double r1485802 = r1485793 + r1485801;
double r1485803 = r1485794 + r1485801;
double r1485804 = r1485802 / r1485803;
return r1485804;
}
double f(double t) {
double r1485805 = 2.0;
double r1485806 = 1.0;
double r1485807 = t;
double r1485808 = r1485806 + r1485807;
double r1485809 = r1485805 / r1485808;
double r1485810 = r1485805 - r1485809;
double r1485811 = fma(r1485810, r1485810, r1485806);
double r1485812 = fma(r1485810, r1485810, r1485805);
double r1485813 = r1485811 / r1485812;
return r1485813;
}



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