\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 r43638 = 1.0;
double r43639 = 2.0;
double r43640 = t;
double r43641 = r43639 * r43640;
double r43642 = r43638 + r43640;
double r43643 = r43641 / r43642;
double r43644 = r43643 * r43643;
double r43645 = r43638 + r43644;
double r43646 = r43639 + r43644;
double r43647 = r43645 / r43646;
return r43647;
}
double f(double t) {
double r43648 = 1.0;
double r43649 = 2.0;
double r43650 = t;
double r43651 = r43649 * r43650;
double r43652 = r43648 + r43650;
double r43653 = r43651 / r43652;
double r43654 = r43653 * r43653;
double r43655 = r43648 + r43654;
double r43656 = r43649 + r43654;
double r43657 = r43655 / r43656;
return r43657;
}



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