Average Error: 46.0 → 0.2
Time: 28.4s
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{i}{i \cdot 16 - \frac{4.0}{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{i}{i \cdot 16 - \frac{4.0}{i}}
double f(double i) {
        double r2658137 = i;
        double r2658138 = r2658137 * r2658137;
        double r2658139 = r2658138 * r2658138;
        double r2658140 = 2.0;
        double r2658141 = r2658140 * r2658137;
        double r2658142 = r2658141 * r2658141;
        double r2658143 = r2658139 / r2658142;
        double r2658144 = 1.0;
        double r2658145 = r2658142 - r2658144;
        double r2658146 = r2658143 / r2658145;
        return r2658146;
}

double f(double i) {
        double r2658147 = i;
        double r2658148 = 16.0;
        double r2658149 = r2658147 * r2658148;
        double r2658150 = 4.0;
        double r2658151 = r2658150 / r2658147;
        double r2658152 = r2658149 - r2658151;
        double r2658153 = r2658147 / r2658152;
        return r2658153;
}

Error

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 46.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}\]
  2. Simplified15.7

    \[\leadsto \color{blue}{\frac{i \cdot i}{\left(4 \cdot \left(i \cdot i\right) - 1.0\right) \cdot 4}}\]
  3. Using strategy rm
  4. Applied associate-/l*15.8

    \[\leadsto \color{blue}{\frac{i}{\frac{\left(4 \cdot \left(i \cdot i\right) - 1.0\right) \cdot 4}{i}}}\]
  5. Taylor expanded around inf 0.2

    \[\leadsto \frac{i}{\color{blue}{16 \cdot i - 4.0 \cdot \frac{1}{i}}}\]
  6. Simplified0.2

    \[\leadsto \frac{i}{\color{blue}{16 \cdot i - \frac{4.0}{i}}}\]
  7. Final simplification0.2

    \[\leadsto \frac{i}{i \cdot 16 - \frac{4.0}{i}}\]

Reproduce

herbie shell --seed 2019107 +o rules:numerics
(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)))