\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 r65757 = 1.0;
double r65758 = 2.0;
double r65759 = t;
double r65760 = r65758 / r65759;
double r65761 = r65757 / r65759;
double r65762 = r65757 + r65761;
double r65763 = r65760 / r65762;
double r65764 = r65758 - r65763;
double r65765 = r65764 * r65764;
double r65766 = r65757 + r65765;
double r65767 = r65758 + r65765;
double r65768 = r65766 / r65767;
return r65768;
}
double f(double t) {
double r65769 = 1.0;
double r65770 = 2.0;
double r65771 = t;
double r65772 = r65770 / r65771;
double r65773 = r65769 / r65771;
double r65774 = r65769 + r65773;
double r65775 = r65772 / r65774;
double r65776 = r65770 - r65775;
double r65777 = r65776 * r65776;
double r65778 = r65769 + r65777;
double r65779 = r65770 + r65777;
double r65780 = r65778 / r65779;
return r65780;
}



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