Average Error: 0.0 → 0.0
Time: 3.7m
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 + \frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}}{\frac{4 - \left(\frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}\right) \cdot \left(\frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}\right)}{2 - \frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}}}\]
\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 + \frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}}{\frac{4 - \left(\frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}\right) \cdot \left(\frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}\right)}{2 - \frac{t \cdot 2}{1 + t} \cdot \frac{t \cdot 2}{1 + t}}}
double f(double t) {
        double r25552008 = 1.0;
        double r25552009 = 2.0;
        double r25552010 = t;
        double r25552011 = r25552009 * r25552010;
        double r25552012 = r25552008 + r25552010;
        double r25552013 = r25552011 / r25552012;
        double r25552014 = r25552013 * r25552013;
        double r25552015 = r25552008 + r25552014;
        double r25552016 = r25552009 + r25552014;
        double r25552017 = r25552015 / r25552016;
        return r25552017;
}

double f(double t) {
        double r25552018 = 1.0;
        double r25552019 = t;
        double r25552020 = 2.0;
        double r25552021 = r25552019 * r25552020;
        double r25552022 = r25552018 + r25552019;
        double r25552023 = r25552021 / r25552022;
        double r25552024 = r25552023 * r25552023;
        double r25552025 = r25552018 + r25552024;
        double r25552026 = 4.0;
        double r25552027 = r25552024 * r25552024;
        double r25552028 = r25552026 - r25552027;
        double r25552029 = r25552020 - r25552024;
        double r25552030 = r25552028 / r25552029;
        double r25552031 = r25552025 / r25552030;
        return r25552031;
}

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{1 + \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}{\color{blue}{\frac{2 \cdot 2 - \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)}{2 - \frac{2 \cdot t}{1 + t} \cdot \frac{2 \cdot t}{1 + t}}}}\]
  4. Final simplification0.0

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

Reproduce

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