\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{\mathsf{fma}\left(\frac{t \cdot 2}{1 + t}, \frac{t \cdot 2}{1 + t}, 1\right)}{\mathsf{fma}\left(\frac{t \cdot 2}{1 + t}, \frac{t \cdot 2}{1 + t}, 2\right)}double f(double t) {
double r867695 = 1.0;
double r867696 = 2.0;
double r867697 = t;
double r867698 = r867696 * r867697;
double r867699 = r867695 + r867697;
double r867700 = r867698 / r867699;
double r867701 = r867700 * r867700;
double r867702 = r867695 + r867701;
double r867703 = r867696 + r867701;
double r867704 = r867702 / r867703;
return r867704;
}
double f(double t) {
double r867705 = t;
double r867706 = 2.0;
double r867707 = r867705 * r867706;
double r867708 = 1.0;
double r867709 = r867708 + r867705;
double r867710 = r867707 / r867709;
double r867711 = fma(r867710, r867710, r867708);
double r867712 = fma(r867710, r867710, r867706);
double r867713 = r867711 / r867712;
return r867713;
}



Bits error versus t
Initial program 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019153 +o rules:numerics
(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))))))