\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 r53231 = 1.0;
double r53232 = 2.0;
double r53233 = t;
double r53234 = r53232 / r53233;
double r53235 = r53231 / r53233;
double r53236 = r53231 + r53235;
double r53237 = r53234 / r53236;
double r53238 = r53232 - r53237;
double r53239 = r53238 * r53238;
double r53240 = r53231 + r53239;
double r53241 = r53232 + r53239;
double r53242 = r53240 / r53241;
return r53242;
}
double f(double t) {
double r53243 = 1.0;
double r53244 = 2.0;
double r53245 = t;
double r53246 = r53244 / r53245;
double r53247 = r53243 / r53245;
double r53248 = r53243 + r53247;
double r53249 = r53246 / r53248;
double r53250 = r53244 - r53249;
double r53251 = r53250 * r53250;
double r53252 = r53243 + r53251;
double r53253 = r53244 + r53251;
double r53254 = r53252 / r53253;
return r53254;
}



Bits error versus t
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2020064 +o rules:numerics
(FPCore (t)
:name "Kahan p13 Example 2"
:precision binary64
(/ (+ 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))))))))