\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{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}}double f(double t) {
double r47325 = 1.0;
double r47326 = 2.0;
double r47327 = t;
double r47328 = r47326 * r47327;
double r47329 = r47325 + r47327;
double r47330 = r47328 / r47329;
double r47331 = r47330 * r47330;
double r47332 = r47325 + r47331;
double r47333 = r47326 + r47331;
double r47334 = r47332 / r47333;
return r47334;
}
double f(double t) {
double r47335 = 1.0;
double r47336 = 2.0;
double r47337 = t;
double r47338 = r47336 * r47337;
double r47339 = r47335 + r47337;
double r47340 = r47338 / r47339;
double r47341 = r47340 * r47340;
double r47342 = r47335 + r47341;
double r47343 = r47336 + r47341;
double r47344 = r47342 / r47343;
return r47344;
}



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