Average Error: 0.0 → 0.1
Time: 12.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}}\]
\[\begin{array}{l} \mathbf{if}\;t \le -0.9868159492179903180542055451951455324888 \lor \neg \left(t \le -3.313528188510913480099885108561084898092 \cdot 10^{-310}\right):\\ \;\;\;\;\log \left(e^{\frac{1 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}{2 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(1 \cdot {t}^{2} + 0.5\right) - 2 \cdot {t}^{3}\\ \end{array}\]
\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}}
\begin{array}{l}
\mathbf{if}\;t \le -0.9868159492179903180542055451951455324888 \lor \neg \left(t \le -3.313528188510913480099885108561084898092 \cdot 10^{-310}\right):\\
\;\;\;\;\log \left(e^{\frac{1 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}{2 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}}\right)\\

\mathbf{else}:\\
\;\;\;\;\left(1 \cdot {t}^{2} + 0.5\right) - 2 \cdot {t}^{3}\\

\end{array}
double f(double t) {
        double r64924 = 1.0;
        double r64925 = 2.0;
        double r64926 = t;
        double r64927 = r64925 * r64926;
        double r64928 = r64924 + r64926;
        double r64929 = r64927 / r64928;
        double r64930 = r64929 * r64929;
        double r64931 = r64924 + r64930;
        double r64932 = r64925 + r64930;
        double r64933 = r64931 / r64932;
        return r64933;
}

double f(double t) {
        double r64934 = t;
        double r64935 = -0.9868159492179903;
        bool r64936 = r64934 <= r64935;
        double r64937 = -3.3135281885109e-310;
        bool r64938 = r64934 <= r64937;
        double r64939 = !r64938;
        bool r64940 = r64936 || r64939;
        double r64941 = 1.0;
        double r64942 = r64941 + r64934;
        double r64943 = r64934 / r64942;
        double r64944 = 2.0;
        double r64945 = r64943 * r64944;
        double r64946 = sqrt(r64945);
        double r64947 = 3.0;
        double r64948 = 1.0;
        double r64949 = r64947 + r64948;
        double r64950 = pow(r64946, r64949);
        double r64951 = r64941 + r64950;
        double r64952 = r64944 + r64950;
        double r64953 = r64951 / r64952;
        double r64954 = exp(r64953);
        double r64955 = log(r64954);
        double r64956 = 2.0;
        double r64957 = pow(r64934, r64956);
        double r64958 = r64941 * r64957;
        double r64959 = 0.5;
        double r64960 = r64958 + r64959;
        double r64961 = pow(r64934, r64947);
        double r64962 = r64944 * r64961;
        double r64963 = r64960 - r64962;
        double r64964 = r64940 ? r64955 : r64963;
        return r64964;
}

Error

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if t < -0.9868159492179903 or -3.3135281885109e-310 < t

    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 add-log-exp0.0

      \[\leadsto \color{blue}{\log \left(e^{\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}}}\right)}\]
    4. Simplified0.0

      \[\leadsto \log \color{blue}{\left(e^{\frac{1 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}{2 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}}\right)}\]

    if -0.9868159492179903 < t < -3.3135281885109e-310

    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. Taylor expanded around 0 0.3

      \[\leadsto \color{blue}{\left(1 \cdot {t}^{2} + 0.5\right) - 2 \cdot {t}^{3}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -0.9868159492179903180542055451951455324888 \lor \neg \left(t \le -3.313528188510913480099885108561084898092 \cdot 10^{-310}\right):\\ \;\;\;\;\log \left(e^{\frac{1 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}{2 + {\left(\sqrt{\frac{t}{1 + t} \cdot 2}\right)}^{\left(3 + 1\right)}}}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(1 \cdot {t}^{2} + 0.5\right) - 2 \cdot {t}^{3}\\ \end{array}\]

Reproduce

herbie shell --seed 2019351 
(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))))))