\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 r68018 = 1.0;
double r68019 = 2.0;
double r68020 = t;
double r68021 = r68019 * r68020;
double r68022 = r68018 + r68020;
double r68023 = r68021 / r68022;
double r68024 = r68023 * r68023;
double r68025 = r68018 + r68024;
double r68026 = r68019 + r68024;
double r68027 = r68025 / r68026;
return r68027;
}
double f(double t) {
double r68028 = 1.0;
double r68029 = 2.0;
double r68030 = t;
double r68031 = r68029 * r68030;
double r68032 = r68028 + r68030;
double r68033 = r68031 / r68032;
double r68034 = r68033 * r68033;
double r68035 = r68028 + r68034;
double r68036 = r68029 + r68034;
double r68037 = r68035 / r68036;
return r68037;
}



Bits error versus t
Results
Initial program 0.1
Final simplification0.1
herbie shell --seed 2020039
(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))))))