Average Error: 0.0 → 0.0
Time: 13.9s
Precision: 64
\[1 - \frac{1}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}\]
\[1 - \frac{1}{2 \cdot 2 - {\left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}^{4}} \cdot \left(2 - \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)\right)\]
1 - \frac{1}{2 + \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}
1 - \frac{1}{2 \cdot 2 - {\left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}^{4}} \cdot \left(2 - \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)\right)
double f(double t) {
        double r26781 = 1.0;
        double r26782 = 2.0;
        double r26783 = t;
        double r26784 = r26782 / r26783;
        double r26785 = r26781 / r26783;
        double r26786 = r26781 + r26785;
        double r26787 = r26784 / r26786;
        double r26788 = r26782 - r26787;
        double r26789 = r26788 * r26788;
        double r26790 = r26782 + r26789;
        double r26791 = r26781 / r26790;
        double r26792 = r26781 - r26791;
        return r26792;
}

double f(double t) {
        double r26793 = 1.0;
        double r26794 = 2.0;
        double r26795 = r26794 * r26794;
        double r26796 = t;
        double r26797 = r26794 / r26796;
        double r26798 = r26793 / r26796;
        double r26799 = r26793 + r26798;
        double r26800 = r26797 / r26799;
        double r26801 = r26794 - r26800;
        double r26802 = 4.0;
        double r26803 = pow(r26801, r26802);
        double r26804 = r26795 - r26803;
        double r26805 = r26793 / r26804;
        double r26806 = r26801 * r26801;
        double r26807 = r26794 - r26806;
        double r26808 = r26805 * r26807;
        double r26809 = r26793 - r26808;
        return r26809;
}

Error

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[1 - \frac{1}{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. Using strategy rm
  3. Applied flip-+0.0

    \[\leadsto 1 - \frac{1}{\color{blue}{\frac{2 \cdot 2 - \left(\left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)\right) \cdot \left(\left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{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)}}}\]
  4. Applied associate-/r/0.0

    \[\leadsto 1 - \color{blue}{\frac{1}{2 \cdot 2 - \left(\left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)\right) \cdot \left(\left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)\right)} \cdot \left(2 - \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)\right)}\]
  5. Simplified0.0

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

    \[\leadsto 1 - \frac{1}{2 \cdot 2 - {\left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)}^{4}} \cdot \left(2 - \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right) \cdot \left(2 - \frac{\frac{2}{t}}{1 + \frac{1}{t}}\right)\right)\]

Reproduce

herbie shell --seed 2019326 
(FPCore (t)
  :name "Kahan p13 Example 3"
  :precision binary64
  (- 1 (/ 1 (+ 2 (* (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))) (- 2 (/ (/ 2 t) (+ 1 (/ 1 t)))))))))