Average Error: 45.1 → 0.5
Time: 20.1s
Precision: 64
\[i \gt 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.0}\]
\[\frac{1}{\frac{\left(i \cdot 4 - \frac{1.0}{i}\right) \cdot 4}{i}}\]
\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.0}
\frac{1}{\frac{\left(i \cdot 4 - \frac{1.0}{i}\right) \cdot 4}{i}}
double f(double i) {
        double r4694378 = i;
        double r4694379 = r4694378 * r4694378;
        double r4694380 = r4694379 * r4694379;
        double r4694381 = 2.0;
        double r4694382 = r4694381 * r4694378;
        double r4694383 = r4694382 * r4694382;
        double r4694384 = r4694380 / r4694383;
        double r4694385 = 1.0;
        double r4694386 = r4694383 - r4694385;
        double r4694387 = r4694384 / r4694386;
        return r4694387;
}

double f(double i) {
        double r4694388 = 1.0;
        double r4694389 = i;
        double r4694390 = 4.0;
        double r4694391 = r4694389 * r4694390;
        double r4694392 = 1.0;
        double r4694393 = r4694392 / r4694389;
        double r4694394 = r4694391 - r4694393;
        double r4694395 = r4694394 * r4694390;
        double r4694396 = r4694395 / r4694389;
        double r4694397 = r4694388 / r4694396;
        return r4694397;
}

Error

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 45.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.0}\]
  2. Simplified0.1

    \[\leadsto \color{blue}{\frac{i}{4 \cdot \left(4 \cdot i - \frac{1.0}{i}\right)}}\]
  3. Using strategy rm
  4. Applied clear-num0.5

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

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

Reproduce

herbie shell --seed 2019162 
(FPCore (i)
  :name "Octave 3.8, jcobi/4, as called"
  :pre (and (> i 0))
  (/ (/ (* (* i i) (* i i)) (* (* 2 i) (* 2 i))) (- (* (* 2 i) (* 2 i)) 1.0)))