\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 r2912505 = 1.0;
double r2912506 = 2.0;
double r2912507 = t;
double r2912508 = r2912506 / r2912507;
double r2912509 = r2912505 / r2912507;
double r2912510 = r2912505 + r2912509;
double r2912511 = r2912508 / r2912510;
double r2912512 = r2912506 - r2912511;
double r2912513 = r2912512 * r2912512;
double r2912514 = r2912505 + r2912513;
double r2912515 = r2912506 + r2912513;
double r2912516 = r2912514 / r2912515;
return r2912516;
}
double f(double t) {
double r2912517 = 1.0;
double r2912518 = 2.0;
double r2912519 = t;
double r2912520 = r2912517 + r2912519;
double r2912521 = r2912518 / r2912520;
double r2912522 = r2912518 - r2912521;
double r2912523 = r2912522 * r2912522;
double r2912524 = r2912517 + r2912523;
double r2912525 = r2912518 + r2912523;
double r2912526 = r2912524 / r2912525;
return r2912526;
}



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