\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 r48265 = 1.0;
double r48266 = 2.0;
double r48267 = t;
double r48268 = r48266 / r48267;
double r48269 = r48265 / r48267;
double r48270 = r48265 + r48269;
double r48271 = r48268 / r48270;
double r48272 = r48266 - r48271;
double r48273 = r48272 * r48272;
double r48274 = r48265 + r48273;
double r48275 = r48266 + r48273;
double r48276 = r48274 / r48275;
return r48276;
}
double f(double t) {
double r48277 = 1.0;
double r48278 = 2.0;
double r48279 = t;
double r48280 = r48278 / r48279;
double r48281 = r48277 / r48279;
double r48282 = r48277 + r48281;
double r48283 = r48280 / r48282;
double r48284 = r48278 - r48283;
double r48285 = r48284 * r48284;
double r48286 = r48277 + r48285;
double r48287 = r48278 + r48285;
double r48288 = r48286 / r48287;
return r48288;
}



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