\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 r716983 = 1.0;
double r716984 = 2.0;
double r716985 = t;
double r716986 = r716984 * r716985;
double r716987 = r716983 + r716985;
double r716988 = r716986 / r716987;
double r716989 = r716988 * r716988;
double r716990 = r716983 + r716989;
double r716991 = r716984 + r716989;
double r716992 = r716990 / r716991;
return r716992;
}
double f(double t) {
double r716993 = 1.0;
double r716994 = t;
double r716995 = 2.0;
double r716996 = r716994 * r716995;
double r716997 = r716993 + r716994;
double r716998 = r716996 / r716997;
double r716999 = r716998 * r716998;
double r717000 = r716993 + r716999;
double r717001 = r716995 + r716999;
double r717002 = r717000 / r717001;
return r717002;
}



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