Average Error: 46.7 → 0.3
Time: 16.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}\]
\[\begin{array}{l} \mathbf{if}\;i \le 0.4965227290920666836093744223035173490644:\\ \;\;\;\;\left(0.25 \cdot \left(-i \cdot i\right) - \left(\left(i \cdot i\right) \cdot 1\right) \cdot \left(i \cdot i\right)\right) - \left(\left(i \cdot i\right) \cdot i\right) \cdot \left(\left(\left(i \cdot i\right) \cdot i\right) \cdot 4\right)\\ \mathbf{else}:\\ \;\;\;\;\left(0.0625 + \frac{0.00390625}{\left(i \cdot i\right) \cdot \left(i \cdot i\right)}\right) + \frac{\frac{0.015625}{i}}{i}\\ \end{array}\]
\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}
\begin{array}{l}
\mathbf{if}\;i \le 0.4965227290920666836093744223035173490644:\\
\;\;\;\;\left(0.25 \cdot \left(-i \cdot i\right) - \left(\left(i \cdot i\right) \cdot 1\right) \cdot \left(i \cdot i\right)\right) - \left(\left(i \cdot i\right) \cdot i\right) \cdot \left(\left(\left(i \cdot i\right) \cdot i\right) \cdot 4\right)\\

\mathbf{else}:\\
\;\;\;\;\left(0.0625 + \frac{0.00390625}{\left(i \cdot i\right) \cdot \left(i \cdot i\right)}\right) + \frac{\frac{0.015625}{i}}{i}\\

\end{array}
double f(double i) {
        double r3074522 = i;
        double r3074523 = r3074522 * r3074522;
        double r3074524 = r3074523 * r3074523;
        double r3074525 = 2.0;
        double r3074526 = r3074525 * r3074522;
        double r3074527 = r3074526 * r3074526;
        double r3074528 = r3074524 / r3074527;
        double r3074529 = 1.0;
        double r3074530 = r3074527 - r3074529;
        double r3074531 = r3074528 / r3074530;
        return r3074531;
}

double f(double i) {
        double r3074532 = i;
        double r3074533 = 0.4965227290920667;
        bool r3074534 = r3074532 <= r3074533;
        double r3074535 = 0.25;
        double r3074536 = r3074532 * r3074532;
        double r3074537 = -r3074536;
        double r3074538 = r3074535 * r3074537;
        double r3074539 = 1.0;
        double r3074540 = r3074536 * r3074539;
        double r3074541 = r3074540 * r3074536;
        double r3074542 = r3074538 - r3074541;
        double r3074543 = r3074536 * r3074532;
        double r3074544 = 4.0;
        double r3074545 = r3074543 * r3074544;
        double r3074546 = r3074543 * r3074545;
        double r3074547 = r3074542 - r3074546;
        double r3074548 = 0.0625;
        double r3074549 = 0.00390625;
        double r3074550 = r3074536 * r3074536;
        double r3074551 = r3074549 / r3074550;
        double r3074552 = r3074548 + r3074551;
        double r3074553 = 0.015625;
        double r3074554 = r3074553 / r3074532;
        double r3074555 = r3074554 / r3074532;
        double r3074556 = r3074552 + r3074555;
        double r3074557 = r3074534 ? r3074547 : r3074556;
        return r3074557;
}

Error

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if i < 0.4965227290920667

    1. Initial program 45.8

      \[\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{i}{\left(2 \cdot 2\right) \cdot \left(\left(2 \cdot 2\right) \cdot i - \frac{1}{i}\right)}}\]
    3. Taylor expanded around 0 0.2

      \[\leadsto \color{blue}{-\left(0.25 \cdot {i}^{2} + \left(1 \cdot {i}^{4} + 4 \cdot {i}^{6}\right)\right)}\]
    4. Simplified0.2

      \[\leadsto \color{blue}{\left(\left(-\left(i \cdot i\right) \cdot 0.25\right) - \left(1 \cdot \left(i \cdot i\right)\right) \cdot \left(i \cdot i\right)\right) - \left(i \cdot \left(i \cdot i\right)\right) \cdot \left(\left(i \cdot \left(i \cdot i\right)\right) \cdot 4\right)}\]

    if 0.4965227290920667 < i

    1. Initial program 47.6

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

      \[\leadsto \color{blue}{\frac{i}{\left(2 \cdot 2\right) \cdot \left(\left(2 \cdot 2\right) \cdot i - \frac{1}{i}\right)}}\]
    3. Taylor expanded around inf 0.3

      \[\leadsto \color{blue}{0.015625 \cdot \frac{1}{{i}^{2}} + \left(0.0625 + 0.00390625 \cdot \frac{1}{{i}^{4}}\right)}\]
    4. Simplified0.3

      \[\leadsto \color{blue}{\left(\frac{0.00390625}{\left(i \cdot i\right) \cdot \left(i \cdot i\right)} + 0.0625\right) + \frac{\frac{0.015625}{i}}{i}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;i \le 0.4965227290920666836093744223035173490644:\\ \;\;\;\;\left(0.25 \cdot \left(-i \cdot i\right) - \left(\left(i \cdot i\right) \cdot 1\right) \cdot \left(i \cdot i\right)\right) - \left(\left(i \cdot i\right) \cdot i\right) \cdot \left(\left(\left(i \cdot i\right) \cdot i\right) \cdot 4\right)\\ \mathbf{else}:\\ \;\;\;\;\left(0.0625 + \frac{0.00390625}{\left(i \cdot i\right) \cdot \left(i \cdot i\right)}\right) + \frac{\frac{0.015625}{i}}{i}\\ \end{array}\]

Reproduce

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