\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 r52304 = 1.0;
double r52305 = 2.0;
double r52306 = t;
double r52307 = r52305 / r52306;
double r52308 = r52304 / r52306;
double r52309 = r52304 + r52308;
double r52310 = r52307 / r52309;
double r52311 = r52305 - r52310;
double r52312 = r52311 * r52311;
double r52313 = r52304 + r52312;
double r52314 = r52305 + r52312;
double r52315 = r52313 / r52314;
return r52315;
}
double f(double t) {
double r52316 = 1.0;
double r52317 = 2.0;
double r52318 = t;
double r52319 = r52317 / r52318;
double r52320 = r52316 / r52318;
double r52321 = r52316 + r52320;
double r52322 = r52319 / r52321;
double r52323 = r52317 - r52322;
double r52324 = r52323 * r52323;
double r52325 = r52316 + r52324;
double r52326 = r52317 + r52324;
double r52327 = r52325 / r52326;
return r52327;
}



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