\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 r1933369 = 1.0;
double r1933370 = 2.0;
double r1933371 = t;
double r1933372 = r1933370 / r1933371;
double r1933373 = r1933369 / r1933371;
double r1933374 = r1933369 + r1933373;
double r1933375 = r1933372 / r1933374;
double r1933376 = r1933370 - r1933375;
double r1933377 = r1933376 * r1933376;
double r1933378 = r1933369 + r1933377;
double r1933379 = r1933370 + r1933377;
double r1933380 = r1933378 / r1933379;
return r1933380;
}
double f(double t) {
double r1933381 = 1.0;
double r1933382 = 2.0;
double r1933383 = t;
double r1933384 = r1933382 / r1933383;
double r1933385 = r1933381 / r1933383;
double r1933386 = r1933381 + r1933385;
double r1933387 = r1933384 / r1933386;
double r1933388 = r1933382 - r1933387;
double r1933389 = r1933388 * r1933388;
double r1933390 = r1933381 + r1933389;
double r1933391 = r1933382 + r1933389;
double r1933392 = r1933390 / r1933391;
return r1933392;
}



Bits error versus t
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019179 +o rules:numerics
(FPCore (t)
:name "Kahan p13 Example 2"
(/ (+ 1.0 (* (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))) (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))))) (+ 2.0 (* (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))) (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t))))))))