Average Error: 0.0 → 0.0
Time: 7.2s
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 + \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 + \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 + \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 r28329 = 1.0;
        double r28330 = 2.0;
        double r28331 = t;
        double r28332 = r28330 / r28331;
        double r28333 = r28329 / r28331;
        double r28334 = r28329 + r28333;
        double r28335 = r28332 / r28334;
        double r28336 = r28330 - r28335;
        double r28337 = r28336 * r28336;
        double r28338 = r28330 + r28337;
        double r28339 = r28329 / r28338;
        double r28340 = r28329 - r28339;
        return r28340;
}

double f(double t) {
        double r28341 = 1.0;
        double r28342 = 2.0;
        double r28343 = t;
        double r28344 = r28342 / r28343;
        double r28345 = r28341 / r28343;
        double r28346 = r28341 + r28345;
        double r28347 = r28344 / r28346;
        double r28348 = r28342 - r28347;
        double r28349 = r28348 * r28348;
        double r28350 = r28342 + r28349;
        double r28351 = r28341 / r28350;
        double r28352 = r28341 - r28351;
        return r28352;
}

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. Final simplification0.0

    \[\leadsto 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)}\]

Reproduce

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