Average Error: 47.1 → 0.2
Time: 5.4s
Precision: 64
\[i \gt 0.0\]
\[\frac{\frac{\left(i \cdot i\right) \cdot \left(i \cdot i\right)}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right)}}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right) - 1}\]
\[\frac{i}{\left(2 \cdot \left(i \cdot 2\right) - \frac{1}{i}\right) \cdot \left(2 \cdot 2\right)}\]
\frac{\frac{\left(i \cdot i\right) \cdot \left(i \cdot i\right)}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right)}}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right) - 1}
\frac{i}{\left(2 \cdot \left(i \cdot 2\right) - \frac{1}{i}\right) \cdot \left(2 \cdot 2\right)}
double f(double i) {
        double r69017 = i;
        double r69018 = r69017 * r69017;
        double r69019 = r69018 * r69018;
        double r69020 = 2.0;
        double r69021 = r69020 * r69017;
        double r69022 = r69021 * r69021;
        double r69023 = r69019 / r69022;
        double r69024 = 1.0;
        double r69025 = r69022 - r69024;
        double r69026 = r69023 / r69025;
        return r69026;
}

double f(double i) {
        double r69027 = i;
        double r69028 = 2.0;
        double r69029 = r69027 * r69028;
        double r69030 = r69028 * r69029;
        double r69031 = 1.0;
        double r69032 = r69031 / r69027;
        double r69033 = r69030 - r69032;
        double r69034 = r69028 * r69028;
        double r69035 = r69033 * r69034;
        double r69036 = r69027 / r69035;
        return r69036;
}

Error

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 47.1

    \[\frac{\frac{\left(i \cdot i\right) \cdot \left(i \cdot i\right)}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right)}}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right) - 1}\]
  2. Simplified0.2

    \[\leadsto \color{blue}{\frac{i}{\left(2 \cdot \left(i \cdot 2\right) - \frac{1}{i}\right) \cdot \left(2 \cdot 2\right)}}\]
  3. Final simplification0.2

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

Reproduce

herbie shell --seed 2020047 +o rules:numerics
(FPCore (i)
  :name "Octave 3.8, jcobi/4, as called"
  :precision binary64
  :pre (and (> i 0.0))
  (/ (/ (* (* i i) (* i i)) (* (* 2 i) (* 2 i))) (- (* (* 2 i) (* 2 i)) 1)))