\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}{\frac{1}{t} + 1}}{t}\right) \cdot \left(2 - \frac{\frac{2}{\frac{1}{t} + 1}}{t}\right)}{2 + \left(2 - \frac{\frac{2}{\frac{1}{t} + 1}}{t}\right) \cdot \left(2 - \frac{\frac{2}{\frac{1}{t} + 1}}{t}\right)}double f(double t) {
double r26539 = 1.0;
double r26540 = 2.0;
double r26541 = t;
double r26542 = r26540 / r26541;
double r26543 = r26539 / r26541;
double r26544 = r26539 + r26543;
double r26545 = r26542 / r26544;
double r26546 = r26540 - r26545;
double r26547 = r26546 * r26546;
double r26548 = r26539 + r26547;
double r26549 = r26540 + r26547;
double r26550 = r26548 / r26549;
return r26550;
}
double f(double t) {
double r26551 = 1.0;
double r26552 = 2.0;
double r26553 = t;
double r26554 = r26551 / r26553;
double r26555 = r26554 + r26551;
double r26556 = r26552 / r26555;
double r26557 = r26556 / r26553;
double r26558 = r26552 - r26557;
double r26559 = r26558 * r26558;
double r26560 = r26551 + r26559;
double r26561 = r26552 + r26559;
double r26562 = r26560 / r26561;
return r26562;
}



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