\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 r39602 = 1.0;
double r39603 = 2.0;
double r39604 = t;
double r39605 = r39603 / r39604;
double r39606 = r39602 / r39604;
double r39607 = r39602 + r39606;
double r39608 = r39605 / r39607;
double r39609 = r39603 - r39608;
double r39610 = r39609 * r39609;
double r39611 = r39602 + r39610;
double r39612 = r39603 + r39610;
double r39613 = r39611 / r39612;
return r39613;
}
double f(double t) {
double r39614 = 1.0;
double r39615 = 2.0;
double r39616 = t;
double r39617 = r39615 / r39616;
double r39618 = r39614 / r39616;
double r39619 = r39614 + r39618;
double r39620 = r39617 / r39619;
double r39621 = r39615 - r39620;
double r39622 = r39621 * r39621;
double r39623 = r39614 + r39622;
double r39624 = r39615 + r39622;
double r39625 = r39623 / r39624;
return r39625;
}



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