\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 r1377725 = 1.0;
double r1377726 = 2.0;
double r1377727 = t;
double r1377728 = r1377726 / r1377727;
double r1377729 = r1377725 / r1377727;
double r1377730 = r1377725 + r1377729;
double r1377731 = r1377728 / r1377730;
double r1377732 = r1377726 - r1377731;
double r1377733 = r1377732 * r1377732;
double r1377734 = r1377725 + r1377733;
double r1377735 = r1377726 + r1377733;
double r1377736 = r1377734 / r1377735;
return r1377736;
}
double f(double t) {
double r1377737 = 2.0;
double r1377738 = 1.0;
double r1377739 = t;
double r1377740 = r1377738 + r1377739;
double r1377741 = r1377737 / r1377740;
double r1377742 = r1377737 - r1377741;
double r1377743 = fma(r1377742, r1377742, r1377738);
double r1377744 = fma(r1377742, r1377742, r1377737);
double r1377745 = r1377743 / r1377744;
return r1377745;
}



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