\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 r1579010 = 1.0;
double r1579011 = 2.0;
double r1579012 = t;
double r1579013 = r1579011 / r1579012;
double r1579014 = r1579010 / r1579012;
double r1579015 = r1579010 + r1579014;
double r1579016 = r1579013 / r1579015;
double r1579017 = r1579011 - r1579016;
double r1579018 = r1579017 * r1579017;
double r1579019 = r1579010 + r1579018;
double r1579020 = r1579011 + r1579018;
double r1579021 = r1579019 / r1579020;
return r1579021;
}
double f(double t) {
double r1579022 = 1.0;
double r1579023 = 2.0;
double r1579024 = t;
double r1579025 = r1579022 + r1579024;
double r1579026 = r1579023 / r1579025;
double r1579027 = r1579023 - r1579026;
double r1579028 = r1579027 * r1579027;
double r1579029 = r1579022 + r1579028;
double r1579030 = r1579023 + r1579028;
double r1579031 = r1579029 / r1579030;
return r1579031;
}



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