\frac{1 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}{2 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}\frac{\mathsf{fma}\left(\frac{2 \cdot t}{1 + t}, \frac{2 \cdot t}{1 + t}, 1\right)}{\mathsf{fma}\left(\frac{2 \cdot t}{1 + t}, \frac{2 \cdot t}{1 + t}, 2\right)}double f(double t) {
double r58283 = 1.0;
double r58284 = 2.0;
double r58285 = t;
double r58286 = r58284 * r58285;
double r58287 = r58283 + r58285;
double r58288 = r58286 / r58287;
double r58289 = r58288 * r58288;
double r58290 = r58283 + r58289;
double r58291 = r58284 + r58289;
double r58292 = r58290 / r58291;
return r58292;
}
double f(double t) {
double r58293 = 2.0;
double r58294 = t;
double r58295 = r58293 * r58294;
double r58296 = 1.0;
double r58297 = r58296 + r58294;
double r58298 = r58295 / r58297;
double r58299 = fma(r58298, r58298, r58296);
double r58300 = fma(r58298, r58298, r58293);
double r58301 = r58299 / r58300;
return r58301;
}



Bits error versus t
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019323 +o rules:numerics
(FPCore (t)
:name "Kahan p13 Example 1"
:precision binary64
(/ (+ 1 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t)))) (+ 2 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t))))))