\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 \frac{1520701503786563}{274877906944}:\\
\;\;\;\;\frac{i \cdot i}{\left(\left(2 \cdot i\right) \cdot \left(2 \cdot i\right) - 1\right) \cdot \left(2 \cdot 2\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{256} \cdot \frac{1}{{i}^{4}} + \left(\frac{1}{64} \cdot \frac{1}{{i}^{2}} + \frac{1}{16}\right)\\
\end{array}double f(double i) {
double r47581 = i;
double r47582 = r47581 * r47581;
double r47583 = r47582 * r47582;
double r47584 = 2.0;
double r47585 = r47584 * r47581;
double r47586 = r47585 * r47585;
double r47587 = r47583 / r47586;
double r47588 = 1.0;
double r47589 = r47586 - r47588;
double r47590 = r47587 / r47589;
return r47590;
}
double f(double i) {
double r47591 = i;
double r47592 = 1520701503786563.0;
double r47593 = 274877906944.0;
double r47594 = r47592 / r47593;
bool r47595 = r47591 <= r47594;
double r47596 = r47591 * r47591;
double r47597 = 2.0;
double r47598 = r47597 * r47591;
double r47599 = r47598 * r47598;
double r47600 = 1.0;
double r47601 = r47599 - r47600;
double r47602 = r47597 * r47597;
double r47603 = r47601 * r47602;
double r47604 = r47596 / r47603;
double r47605 = 256.0;
double r47606 = r47600 / r47605;
double r47607 = 1.0;
double r47608 = 4.0;
double r47609 = pow(r47591, r47608);
double r47610 = r47607 / r47609;
double r47611 = r47606 * r47610;
double r47612 = 64.0;
double r47613 = r47600 / r47612;
double r47614 = 2.0;
double r47615 = pow(r47591, r47614);
double r47616 = r47607 / r47615;
double r47617 = r47613 * r47616;
double r47618 = 16.0;
double r47619 = r47600 / r47618;
double r47620 = r47617 + r47619;
double r47621 = r47611 + r47620;
double r47622 = r47595 ? r47604 : r47621;
return r47622;
}



Bits error versus i
Results
if i < 5532.2798426880145Initial program 44.4
Simplified0.0
if 5532.2798426880145 < i Initial program 49.9
Simplified33.2
Taylor expanded around inf 0.0
Simplified0.0
Final simplification0.0
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)))