\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 r40932 = 1.0;
double r40933 = 2.0;
double r40934 = t;
double r40935 = r40933 * r40934;
double r40936 = r40932 + r40934;
double r40937 = r40935 / r40936;
double r40938 = r40937 * r40937;
double r40939 = r40932 + r40938;
double r40940 = r40933 + r40938;
double r40941 = r40939 / r40940;
return r40941;
}
double f(double t) {
double r40942 = 1.0;
double r40943 = 2.0;
double r40944 = t;
double r40945 = r40943 * r40944;
double r40946 = r40942 + r40944;
double r40947 = r40945 / r40946;
double r40948 = r40947 * r40947;
double r40949 = r40942 + r40948;
double r40950 = r40943 + r40948;
double r40951 = r40949 / r40950;
return r40951;
}



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