\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{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right)}{2 + \left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right)}double f(double t) {
double r2088335 = 1.0;
double r2088336 = 2.0;
double r2088337 = t;
double r2088338 = r2088336 / r2088337;
double r2088339 = r2088335 / r2088337;
double r2088340 = r2088335 + r2088339;
double r2088341 = r2088338 / r2088340;
double r2088342 = r2088336 - r2088341;
double r2088343 = r2088342 * r2088342;
double r2088344 = r2088335 + r2088343;
double r2088345 = r2088336 + r2088343;
double r2088346 = r2088344 / r2088345;
return r2088346;
}
double f(double t) {
double r2088347 = 1.0;
double r2088348 = 2.0;
double r2088349 = t;
double r2088350 = r2088347 + r2088349;
double r2088351 = r2088348 / r2088350;
double r2088352 = r2088348 - r2088351;
double r2088353 = r2088352 * r2088352;
double r2088354 = r2088347 + r2088353;
double r2088355 = r2088348 + r2088353;
double r2088356 = r2088354 / r2088355;
return r2088356;
}



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