Average Error: 0.0 → 0.0
Time: 2.8m
Precision: 64
\[\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{(\left(2 - \frac{2}{1 + t}\right) \cdot \left((1 \cdot 2 + \left(\left(-\sqrt[3]{2} \cdot \sqrt[3]{2}\right) \cdot \frac{\sqrt[3]{2}}{1 + t}\right))_*\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]
\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{(\left(2 - \frac{2}{1 + t}\right) \cdot \left((1 \cdot 2 + \left(\left(-\sqrt[3]{2} \cdot \sqrt[3]{2}\right) \cdot \frac{\sqrt[3]{2}}{1 + t}\right))_*\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}
double f(double t) {
        double r5232494 = 1.0;
        double r5232495 = 2.0;
        double r5232496 = t;
        double r5232497 = r5232495 / r5232496;
        double r5232498 = r5232494 / r5232496;
        double r5232499 = r5232494 + r5232498;
        double r5232500 = r5232497 / r5232499;
        double r5232501 = r5232495 - r5232500;
        double r5232502 = r5232501 * r5232501;
        double r5232503 = r5232494 + r5232502;
        double r5232504 = r5232495 + r5232502;
        double r5232505 = r5232503 / r5232504;
        return r5232505;
}

double f(double t) {
        double r5232506 = 2.0;
        double r5232507 = 1.0;
        double r5232508 = t;
        double r5232509 = r5232507 + r5232508;
        double r5232510 = r5232506 / r5232509;
        double r5232511 = r5232506 - r5232510;
        double r5232512 = cbrt(r5232506);
        double r5232513 = r5232512 * r5232512;
        double r5232514 = -r5232513;
        double r5232515 = r5232512 / r5232509;
        double r5232516 = r5232514 * r5232515;
        double r5232517 = fma(r5232507, r5232506, r5232516);
        double r5232518 = fma(r5232511, r5232517, r5232507);
        double r5232519 = fma(r5232511, r5232511, r5232506);
        double r5232520 = r5232518 / r5232519;
        return r5232520;
}

Error

Bits error versus t

Derivation

  1. Initial program 0.0

    \[\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)}\]
  2. Simplified0.0

    \[\leadsto \color{blue}{\frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}}\]
  3. Using strategy rm
  4. Applied *-un-lft-identity0.0

    \[\leadsto \frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{\color{blue}{1 \cdot \left(1 + t\right)}}\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]
  5. Applied add-cube-cbrt0.0

    \[\leadsto \frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{\color{blue}{\left(\sqrt[3]{2} \cdot \sqrt[3]{2}\right) \cdot \sqrt[3]{2}}}{1 \cdot \left(1 + t\right)}\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]
  6. Applied times-frac0.0

    \[\leadsto \frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \color{blue}{\frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1} \cdot \frac{\sqrt[3]{2}}{1 + t}}\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]
  7. Applied *-un-lft-identity0.0

    \[\leadsto \frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(\color{blue}{1 \cdot 2} - \frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1} \cdot \frac{\sqrt[3]{2}}{1 + t}\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]
  8. Applied prod-diff0.0

    \[\leadsto \frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \color{blue}{\left((1 \cdot 2 + \left(-\frac{\sqrt[3]{2}}{1 + t} \cdot \frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1}\right))_* + (\left(-\frac{\sqrt[3]{2}}{1 + t}\right) \cdot \left(\frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1}\right) + \left(\frac{\sqrt[3]{2}}{1 + t} \cdot \frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1}\right))_*\right)} + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]
  9. Simplified0.0

    \[\leadsto \frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \left((1 \cdot 2 + \left(-\frac{\sqrt[3]{2}}{1 + t} \cdot \frac{\sqrt[3]{2} \cdot \sqrt[3]{2}}{1}\right))_* + \color{blue}{0}\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]
  10. Final simplification0.0

    \[\leadsto \frac{(\left(2 - \frac{2}{1 + t}\right) \cdot \left((1 \cdot 2 + \left(\left(-\sqrt[3]{2} \cdot \sqrt[3]{2}\right) \cdot \frac{\sqrt[3]{2}}{1 + t}\right))_*\right) + 1)_*}{(\left(2 - \frac{2}{1 + t}\right) \cdot \left(2 - \frac{2}{1 + t}\right) + 2)_*}\]

Reproduce

herbie shell --seed 2019119 +o rules:numerics
(FPCore (t)
  :name "Kahan p13 Example 2"
  (/ (+ 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))))))))