Average Error: 45.4 → 0.1
Time: 10.7s
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}{2} \cdot \left(\frac{\frac{1}{2}}{2 - \frac{\sqrt{1.0}}{i}} \cdot \frac{1}{2 + \frac{\sqrt{1.0}}{i}}\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.0}
\frac{1}{2} \cdot \left(\frac{\frac{1}{2}}{2 - \frac{\sqrt{1.0}}{i}} \cdot \frac{1}{2 + \frac{\sqrt{1.0}}{i}}\right)
double f(double i) {
        double r1302791 = i;
        double r1302792 = r1302791 * r1302791;
        double r1302793 = r1302792 * r1302792;
        double r1302794 = 2.0;
        double r1302795 = r1302794 * r1302791;
        double r1302796 = r1302795 * r1302795;
        double r1302797 = r1302793 / r1302796;
        double r1302798 = 1.0;
        double r1302799 = r1302796 - r1302798;
        double r1302800 = r1302797 / r1302799;
        return r1302800;
}

double f(double i) {
        double r1302801 = 0.5;
        double r1302802 = 2.0;
        double r1302803 = 1.0;
        double r1302804 = sqrt(r1302803);
        double r1302805 = i;
        double r1302806 = r1302804 / r1302805;
        double r1302807 = r1302802 - r1302806;
        double r1302808 = r1302801 / r1302807;
        double r1302809 = 1.0;
        double r1302810 = r1302802 + r1302806;
        double r1302811 = r1302809 / r1302810;
        double r1302812 = r1302808 * r1302811;
        double r1302813 = r1302801 * r1302812;
        return r1302813;
}

Error

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 45.4

    \[\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.3

    \[\leadsto \color{blue}{\frac{\frac{1}{2}}{4 - \frac{1.0}{i \cdot i}} \cdot \frac{1}{2}}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.3

    \[\leadsto \frac{\frac{1}{2}}{4 - \frac{\color{blue}{\sqrt{1.0} \cdot \sqrt{1.0}}}{i \cdot i}} \cdot \frac{1}{2}\]
  5. Applied times-frac0.4

    \[\leadsto \frac{\frac{1}{2}}{4 - \color{blue}{\frac{\sqrt{1.0}}{i} \cdot \frac{\sqrt{1.0}}{i}}} \cdot \frac{1}{2}\]
  6. Applied add-sqr-sqrt0.4

    \[\leadsto \frac{\frac{1}{2}}{\color{blue}{\sqrt{4} \cdot \sqrt{4}} - \frac{\sqrt{1.0}}{i} \cdot \frac{\sqrt{1.0}}{i}} \cdot \frac{1}{2}\]
  7. Applied difference-of-squares0.4

    \[\leadsto \frac{\frac{1}{2}}{\color{blue}{\left(\sqrt{4} + \frac{\sqrt{1.0}}{i}\right) \cdot \left(\sqrt{4} - \frac{\sqrt{1.0}}{i}\right)}} \cdot \frac{1}{2}\]
  8. Applied *-un-lft-identity0.4

    \[\leadsto \frac{\color{blue}{1 \cdot \frac{1}{2}}}{\left(\sqrt{4} + \frac{\sqrt{1.0}}{i}\right) \cdot \left(\sqrt{4} - \frac{\sqrt{1.0}}{i}\right)} \cdot \frac{1}{2}\]
  9. Applied times-frac0.1

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

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

Reproduce

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