Average Error: 0.0 → 0.0
Time: 11.1s
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}{\frac{\left(2 \cdot 2 - \frac{2}{1 + t \cdot 1} \cdot \frac{2}{1 + t \cdot 1}\right) \cdot \left(2 \cdot 2 - \frac{2}{1 + t \cdot 1} \cdot \frac{2}{1 + t \cdot 1}\right)}{\left(2 + \frac{2}{1 + t \cdot 1}\right) \cdot \left(2 + \frac{2}{1 + t \cdot 1}\right)} + 2}\]
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}{\frac{\left(2 \cdot 2 - \frac{2}{1 + t \cdot 1} \cdot \frac{2}{1 + t \cdot 1}\right) \cdot \left(2 \cdot 2 - \frac{2}{1 + t \cdot 1} \cdot \frac{2}{1 + t \cdot 1}\right)}{\left(2 + \frac{2}{1 + t \cdot 1}\right) \cdot \left(2 + \frac{2}{1 + t \cdot 1}\right)} + 2}
double f(double t) {
        double r1984730 = 1.0;
        double r1984731 = 2.0;
        double r1984732 = t;
        double r1984733 = r1984731 / r1984732;
        double r1984734 = r1984730 / r1984732;
        double r1984735 = r1984730 + r1984734;
        double r1984736 = r1984733 / r1984735;
        double r1984737 = r1984731 - r1984736;
        double r1984738 = r1984737 * r1984737;
        double r1984739 = r1984731 + r1984738;
        double r1984740 = r1984730 / r1984739;
        double r1984741 = r1984730 - r1984740;
        return r1984741;
}

double f(double t) {
        double r1984742 = 1.0;
        double r1984743 = 2.0;
        double r1984744 = r1984743 * r1984743;
        double r1984745 = t;
        double r1984746 = r1984745 * r1984742;
        double r1984747 = r1984742 + r1984746;
        double r1984748 = r1984743 / r1984747;
        double r1984749 = r1984748 * r1984748;
        double r1984750 = r1984744 - r1984749;
        double r1984751 = r1984750 * r1984750;
        double r1984752 = r1984743 + r1984748;
        double r1984753 = r1984752 * r1984752;
        double r1984754 = r1984751 / r1984753;
        double r1984755 = r1984754 + r1984743;
        double r1984756 = r1984742 / r1984755;
        double r1984757 = r1984742 - r1984756;
        return r1984757;
}

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. Simplified0.0

    \[\leadsto \color{blue}{1 - \frac{1}{2 + \left(2 - \frac{2}{1 + 1 \cdot t}\right) \cdot \left(2 - \frac{2}{1 + 1 \cdot t}\right)}}\]
  3. Using strategy rm
  4. Applied flip--0.0

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

    \[\leadsto 1 - \frac{1}{2 + \color{blue}{\frac{2 \cdot 2 - \frac{2}{1 + 1 \cdot t} \cdot \frac{2}{1 + 1 \cdot t}}{2 + \frac{2}{1 + 1 \cdot t}}} \cdot \frac{2 \cdot 2 - \frac{2}{1 + 1 \cdot t} \cdot \frac{2}{1 + 1 \cdot t}}{2 + \frac{2}{1 + 1 \cdot t}}}\]
  6. Applied frac-times0.0

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

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

Reproduce

herbie shell --seed 2019170 
(FPCore (t)
  :name "Kahan p13 Example 3"
  (- 1.0 (/ 1.0 (+ 2.0 (* (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))) (- 2.0 (/ (/ 2.0 t) (+ 1.0 (/ 1.0 t)))))))))