\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{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}}{2 + \frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}}double f(double t) {
double r1864722 = 1.0;
double r1864723 = 2.0;
double r1864724 = t;
double r1864725 = r1864723 * r1864724;
double r1864726 = r1864722 + r1864724;
double r1864727 = r1864725 / r1864726;
double r1864728 = r1864727 * r1864727;
double r1864729 = r1864722 + r1864728;
double r1864730 = r1864723 + r1864728;
double r1864731 = r1864729 / r1864730;
return r1864731;
}
double f(double t) {
double r1864732 = 1.0;
double r1864733 = t;
double r1864734 = 2.0;
double r1864735 = r1864733 * r1864734;
double r1864736 = r1864732 + r1864733;
double r1864737 = r1864735 / r1864736;
double r1864738 = r1864737 * r1864737;
double r1864739 = r1864732 + r1864738;
double r1864740 = r1864734 + r1864738;
double r1864741 = r1864739 / r1864740;
return r1864741;
}



Bits error versus t
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019172 +o rules:numerics
(FPCore (t)
:name "Kahan p13 Example 1"
(/ (+ 1.0 (* (/ (* 2.0 t) (+ 1.0 t)) (/ (* 2.0 t) (+ 1.0 t)))) (+ 2.0 (* (/ (* 2.0 t) (+ 1.0 t)) (/ (* 2.0 t) (+ 1.0 t))))))