\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 r2391017 = 1.0;
double r2391018 = 2.0;
double r2391019 = t;
double r2391020 = r2391018 / r2391019;
double r2391021 = r2391017 / r2391019;
double r2391022 = r2391017 + r2391021;
double r2391023 = r2391020 / r2391022;
double r2391024 = r2391018 - r2391023;
double r2391025 = r2391024 * r2391024;
double r2391026 = r2391017 + r2391025;
double r2391027 = r2391018 + r2391025;
double r2391028 = r2391026 / r2391027;
return r2391028;
}
double f(double t) {
double r2391029 = 1.0;
double r2391030 = 2.0;
double r2391031 = t;
double r2391032 = r2391029 + r2391031;
double r2391033 = r2391030 / r2391032;
double r2391034 = r2391030 - r2391033;
double r2391035 = r2391034 * r2391034;
double r2391036 = r2391029 + r2391035;
double r2391037 = r2391030 + r2391035;
double r2391038 = r2391036 / r2391037;
return r2391038;
}



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