\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 r613923 = 1.0;
double r613924 = 2.0;
double r613925 = t;
double r613926 = r613924 * r613925;
double r613927 = r613923 + r613925;
double r613928 = r613926 / r613927;
double r613929 = r613928 * r613928;
double r613930 = r613923 + r613929;
double r613931 = r613924 + r613929;
double r613932 = r613930 / r613931;
return r613932;
}
double f(double t) {
double r613933 = 1.0;
double r613934 = t;
double r613935 = 2.0;
double r613936 = r613934 * r613935;
double r613937 = r613933 + r613934;
double r613938 = r613936 / r613937;
double r613939 = r613938 * r613938;
double r613940 = r613933 + r613939;
double r613941 = r613935 + r613939;
double r613942 = r613940 / r613941;
return r613942;
}



Bits error versus t
Results
Initial program 0.1
Final simplification0.1
herbie shell --seed 2019152
(FPCore (t)
:name "Kahan p13 Example 1"
(/ (+ 1 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t)))) (+ 2 (* (/ (* 2 t) (+ 1 t)) (/ (* 2 t) (+ 1 t))))))