\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 \cdot 2 - {\left(\frac{2 \cdot t}{1 + t}\right)}^{3} \cdot \frac{2 \cdot t}{1 + t}} \cdot \left(2 - \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right)double f(double t) {
double r56442 = 1.0;
double r56443 = 2.0;
double r56444 = t;
double r56445 = r56443 * r56444;
double r56446 = r56442 + r56444;
double r56447 = r56445 / r56446;
double r56448 = r56447 * r56447;
double r56449 = r56442 + r56448;
double r56450 = r56443 + r56448;
double r56451 = r56449 / r56450;
return r56451;
}
double f(double t) {
double r56452 = 1.0;
double r56453 = 2.0;
double r56454 = t;
double r56455 = r56453 * r56454;
double r56456 = r56452 + r56454;
double r56457 = r56455 / r56456;
double r56458 = r56457 * r56457;
double r56459 = r56452 + r56458;
double r56460 = r56453 * r56453;
double r56461 = 3.0;
double r56462 = pow(r56457, r56461);
double r56463 = r56462 * r56457;
double r56464 = r56460 - r56463;
double r56465 = r56459 / r56464;
double r56466 = r56453 - r56458;
double r56467 = r56465 * r56466;
return r56467;
}



Bits error versus t
Results
Initial program 0.0
rmApplied flip-+0.0
Applied associate-/r/0.0
Simplified0.1
Final simplification0.1
herbie shell --seed 2020024
(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))))))