\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 r806478 = 1.0;
double r806479 = 2.0;
double r806480 = t;
double r806481 = r806479 / r806480;
double r806482 = r806478 / r806480;
double r806483 = r806478 + r806482;
double r806484 = r806481 / r806483;
double r806485 = r806479 - r806484;
double r806486 = r806485 * r806485;
double r806487 = r806478 + r806486;
double r806488 = r806479 + r806486;
double r806489 = r806487 / r806488;
return r806489;
}
double f(double t) {
double r806490 = 1.0;
double r806491 = 2.0;
double r806492 = t;
double r806493 = r806491 / r806492;
double r806494 = r806490 / r806492;
double r806495 = r806490 + r806494;
double r806496 = r806493 / r806495;
double r806497 = r806491 - r806496;
double r806498 = r806497 * r806497;
double r806499 = r806490 + r806498;
double r806500 = r806491 + r806498;
double r806501 = r806499 / r806500;
return r806501;
}



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