\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 r30639 = 1.0;
double r30640 = 2.0;
double r30641 = t;
double r30642 = r30640 * r30641;
double r30643 = r30639 + r30641;
double r30644 = r30642 / r30643;
double r30645 = r30644 * r30644;
double r30646 = r30639 + r30645;
double r30647 = r30640 + r30645;
double r30648 = r30646 / r30647;
return r30648;
}
double f(double t) {
double r30649 = 1.0;
double r30650 = 2.0;
double r30651 = t;
double r30652 = r30650 * r30651;
double r30653 = r30649 + r30651;
double r30654 = r30652 / r30653;
double r30655 = r30654 * r30654;
double r30656 = r30649 + r30655;
double r30657 = r30650 + r30655;
double r30658 = r30656 / r30657;
return r30658;
}



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