\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{2 \cdot t}{1 + t}, \frac{2 \cdot t}{1 + t}, 1\right)}{\mathsf{fma}\left(\frac{2 \cdot t}{1 + t}, \frac{2 \cdot t}{1 + t}, 2\right)}double f(double t) {
double r50922 = 1.0;
double r50923 = 2.0;
double r50924 = t;
double r50925 = r50923 * r50924;
double r50926 = r50922 + r50924;
double r50927 = r50925 / r50926;
double r50928 = r50927 * r50927;
double r50929 = r50922 + r50928;
double r50930 = r50923 + r50928;
double r50931 = r50929 / r50930;
return r50931;
}
double f(double t) {
double r50932 = 2.0;
double r50933 = t;
double r50934 = r50932 * r50933;
double r50935 = 1.0;
double r50936 = r50935 + r50933;
double r50937 = r50934 / r50936;
double r50938 = fma(r50937, r50937, r50935);
double r50939 = fma(r50937, r50937, r50932);
double r50940 = r50938 / r50939;
return r50940;
}



Bits error versus t
Initial program 0.0
Simplified0.0
rmApplied *-un-lft-identity0.0
Final simplification0.0
herbie shell --seed 2019325 +o rules:numerics
(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))))))