Average Error: 47.1 → 0.1
Time: 17.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{\frac{i}{2 \cdot 2}}{2 \cdot \left(2 \cdot i\right) - \frac{1}{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}
\frac{\frac{i}{2 \cdot 2}}{2 \cdot \left(2 \cdot i\right) - \frac{1}{i}}
double f(double i) {
        double r49338 = i;
        double r49339 = r49338 * r49338;
        double r49340 = r49339 * r49339;
        double r49341 = 2.0;
        double r49342 = r49341 * r49338;
        double r49343 = r49342 * r49342;
        double r49344 = r49340 / r49343;
        double r49345 = 1.0;
        double r49346 = r49343 - r49345;
        double r49347 = r49344 / r49346;
        return r49347;
}

double f(double i) {
        double r49348 = i;
        double r49349 = 2.0;
        double r49350 = r49349 * r49349;
        double r49351 = r49348 / r49350;
        double r49352 = r49349 * r49348;
        double r49353 = r49349 * r49352;
        double r49354 = 1.0;
        double r49355 = r49354 / r49348;
        double r49356 = r49353 - r49355;
        double r49357 = r49351 / r49356;
        return r49357;
}

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.1

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

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

Reproduce

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