\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 r26128 = 1.0;
double r26129 = 2.0;
double r26130 = t;
double r26131 = r26129 / r26130;
double r26132 = r26128 / r26130;
double r26133 = r26128 + r26132;
double r26134 = r26131 / r26133;
double r26135 = r26129 - r26134;
double r26136 = r26135 * r26135;
double r26137 = r26128 + r26136;
double r26138 = r26129 + r26136;
double r26139 = r26137 / r26138;
return r26139;
}
double f(double t) {
double r26140 = 1.0;
double r26141 = 2.0;
double r26142 = t;
double r26143 = r26141 / r26142;
double r26144 = r26140 / r26142;
double r26145 = r26140 + r26144;
double r26146 = r26143 / r26145;
double r26147 = r26141 - r26146;
double r26148 = r26147 * r26147;
double r26149 = r26140 + r26148;
double r26150 = r26141 + r26148;
double r26151 = r26149 / r26150;
return r26151;
}



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