Average Error: 47.0 → 0.1
Time: 3.7s
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} \cdot \frac{i}{2 \cdot i - \sqrt{1}}}{2 \cdot i + \sqrt{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}
\frac{\frac{i}{2 \cdot 2} \cdot \frac{i}{2 \cdot i - \sqrt{1}}}{2 \cdot i + \sqrt{1}}
double f(double i) {
        double r70495 = i;
        double r70496 = r70495 * r70495;
        double r70497 = r70496 * r70496;
        double r70498 = 2.0;
        double r70499 = r70498 * r70495;
        double r70500 = r70499 * r70499;
        double r70501 = r70497 / r70500;
        double r70502 = 1.0;
        double r70503 = r70500 - r70502;
        double r70504 = r70501 / r70503;
        return r70504;
}

double f(double i) {
        double r70505 = i;
        double r70506 = 2.0;
        double r70507 = r70506 * r70506;
        double r70508 = r70505 / r70507;
        double r70509 = r70506 * r70505;
        double r70510 = 1.0;
        double r70511 = sqrt(r70510);
        double r70512 = r70509 - r70511;
        double r70513 = r70505 / r70512;
        double r70514 = r70508 * r70513;
        double r70515 = r70509 + r70511;
        double r70516 = r70514 / r70515;
        return r70516;
}

Error

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

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

    \[\leadsto \color{blue}{\frac{i \cdot i}{\left(\left(2 \cdot i\right) \cdot \left(2 \cdot i\right) - 1\right) \cdot \left(2 \cdot 2\right)}}\]
  3. Using strategy rm
  4. Applied times-frac15.6

    \[\leadsto \color{blue}{\frac{i}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right) - 1} \cdot \frac{i}{2 \cdot 2}}\]
  5. Using strategy rm
  6. Applied add-sqr-sqrt15.6

    \[\leadsto \frac{i}{\left(2 \cdot i\right) \cdot \left(2 \cdot i\right) - \color{blue}{\sqrt{1} \cdot \sqrt{1}}} \cdot \frac{i}{2 \cdot 2}\]
  7. Applied difference-of-squares15.6

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

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

    \[\leadsto \color{blue}{\left(\frac{1}{2 \cdot i + \sqrt{1}} \cdot \frac{i}{2 \cdot i - \sqrt{1}}\right)} \cdot \frac{i}{2 \cdot 2}\]
  10. Using strategy rm
  11. Applied associate-*l/0.2

    \[\leadsto \color{blue}{\frac{1 \cdot \frac{i}{2 \cdot i - \sqrt{1}}}{2 \cdot i + \sqrt{1}}} \cdot \frac{i}{2 \cdot 2}\]
  12. Applied associate-*l/0.1

    \[\leadsto \color{blue}{\frac{\left(1 \cdot \frac{i}{2 \cdot i - \sqrt{1}}\right) \cdot \frac{i}{2 \cdot 2}}{2 \cdot i + \sqrt{1}}}\]
  13. Simplified0.1

    \[\leadsto \frac{\color{blue}{\frac{i}{2 \cdot 2} \cdot \frac{i}{2 \cdot i - \sqrt{1}}}}{2 \cdot i + \sqrt{1}}\]
  14. Final simplification0.1

    \[\leadsto \frac{\frac{i}{2 \cdot 2} \cdot \frac{i}{2 \cdot i - \sqrt{1}}}{2 \cdot i + \sqrt{1}}\]

Reproduce

herbie shell --seed 2020002 +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)))