\frac{1 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}\frac{1 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(\left(2 - \frac{\frac{2}{\sqrt[3]{t}}}{\sqrt[3]{1 + \frac{1}{t}}} \cdot \frac{\frac{1}{\sqrt[3]{t} \cdot \sqrt[3]{t}}}{\sqrt[3]{1 + \frac{1}{t}} \cdot \sqrt[3]{1 + \frac{1}{t}}}\right) + \frac{\frac{1}{\sqrt[3]{t} \cdot \sqrt[3]{t}}}{\sqrt[3]{1 + \frac{1}{t}} \cdot \sqrt[3]{1 + \frac{1}{t}}} \cdot \left(\left(-\frac{\frac{2}{\sqrt[3]{t}}}{\sqrt[3]{1 + \frac{1}{t}}}\right) + \frac{\frac{2}{\sqrt[3]{t}}}{\sqrt[3]{1 + \frac{1}{t}}}\right)\right)}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}double f(double t) {
double r74784 = 1.0;
double r74785 = 2.0;
double r74786 = t;
double r74787 = r74785 / r74786;
double r74788 = r74784 / r74786;
double r74789 = r74784 + r74788;
double r74790 = r74787 / r74789;
double r74791 = r74785 - r74790;
double r74792 = r74791 * r74791;
double r74793 = r74784 + r74792;
double r74794 = r74785 + r74792;
double r74795 = r74793 / r74794;
return r74795;
}
double f(double t) {
double r74796 = 1.0;
double r74797 = 2.0;
double r74798 = t;
double r74799 = r74797 / r74798;
double r74800 = r74796 / r74798;
double r74801 = r74796 + r74800;
double r74802 = r74799 / r74801;
double r74803 = r74797 - r74802;
double r74804 = cbrt(r74798);
double r74805 = r74797 / r74804;
double r74806 = cbrt(r74801);
double r74807 = r74805 / r74806;
double r74808 = 1.0;
double r74809 = r74804 * r74804;
double r74810 = r74808 / r74809;
double r74811 = r74806 * r74806;
double r74812 = r74810 / r74811;
double r74813 = r74807 * r74812;
double r74814 = r74797 - r74813;
double r74815 = -r74807;
double r74816 = r74815 + r74807;
double r74817 = r74812 * r74816;
double r74818 = r74814 + r74817;
double r74819 = r74803 * r74818;
double r74820 = r74796 + r74819;
double r74821 = r74803 * r74803;
double r74822 = r74797 + r74821;
double r74823 = r74820 / r74822;
return r74823;
}



Bits error versus t
Results
Initial program 0.0
rmApplied add-cube-cbrt0.0
Applied add-cube-cbrt0.0
Applied *-un-lft-identity0.0
Applied times-frac0.0
Applied times-frac0.0
Applied add-sqr-sqrt0.5
Applied prod-diff0.5
Simplified0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020001 +o rules:numerics
(FPCore (t)
:name "Kahan p13 Example 2"
:precision binary64
(/ (+ 1 (* (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))) (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))))) (+ 2 (* (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))) (- 2 (/ (/ 2 t) (+ 1 (/ 1 t))))))))