\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 r43135 = 1.0;
double r43136 = 2.0;
double r43137 = t;
double r43138 = r43136 / r43137;
double r43139 = r43135 / r43137;
double r43140 = r43135 + r43139;
double r43141 = r43138 / r43140;
double r43142 = r43136 - r43141;
double r43143 = r43142 * r43142;
double r43144 = r43135 + r43143;
double r43145 = r43136 + r43143;
double r43146 = r43144 / r43145;
return r43146;
}
double f(double t) {
double r43147 = 1.0;
double r43148 = 2.0;
double r43149 = t;
double r43150 = r43148 / r43149;
double r43151 = r43147 / r43149;
double r43152 = r43147 + r43151;
double r43153 = r43150 / r43152;
double r43154 = r43148 - r43153;
double r43155 = r43154 * r43154;
double r43156 = r43147 + r43155;
double r43157 = r43148 + r43155;
double r43158 = r43156 / r43157;
return r43158;
}



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