Average Error: 0.0 → 0.0
Time: 3.7s
Precision: 64
\[\frac{1 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}{2 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}\]
\[\frac{1 \cdot 1 - \left(\frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right) \cdot \left(\frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right)}{\left(2 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right) \cdot \left(1 - \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right)}\]
\frac{1 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}{2 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}
\frac{1 \cdot 1 - \left(\frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right) \cdot \left(\frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right)}{\left(2 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right) \cdot \left(1 - \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right)}
double f(double t) {
        double r55591 = 1.0;
        double r55592 = 2.0;
        double r55593 = t;
        double r55594 = r55592 * r55593;
        double r55595 = r55591 + r55593;
        double r55596 = r55594 / r55595;
        double r55597 = r55596 * r55596;
        double r55598 = r55591 + r55597;
        double r55599 = r55592 + r55597;
        double r55600 = r55598 / r55599;
        return r55600;
}

double f(double t) {
        double r55601 = 1.0;
        double r55602 = r55601 * r55601;
        double r55603 = 2.0;
        double r55604 = t;
        double r55605 = r55603 * r55604;
        double r55606 = r55601 + r55604;
        double r55607 = r55605 / r55606;
        double r55608 = r55607 * r55607;
        double r55609 = r55608 * r55608;
        double r55610 = r55602 - r55609;
        double r55611 = r55603 + r55608;
        double r55612 = r55601 - r55608;
        double r55613 = r55611 * r55612;
        double r55614 = r55610 / r55613;
        return r55614;
}

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

    \[\frac{1 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}{2 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}\]
  2. Using strategy rm
  3. Applied flip-+0.0

    \[\leadsto \frac{\color{blue}{\frac{1 \cdot 1 - \left(\frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right) \cdot \left(\frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}\right)}{1 - \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}}}{2 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}\]
  4. Applied associate-/l/0.0

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

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

Reproduce

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