\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 217.9947108587691388947860104963183403015:\\
\;\;\;\;\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}:\\
\;\;\;\;0.00390625 \cdot \frac{1}{{i}^{4}} + \left(0.015625 \cdot \frac{1}{{i}^{2}} + 0.0625\right)\\
\end{array}double f(double i) {
double r50717 = i;
double r50718 = r50717 * r50717;
double r50719 = r50718 * r50718;
double r50720 = 2.0;
double r50721 = r50720 * r50717;
double r50722 = r50721 * r50721;
double r50723 = r50719 / r50722;
double r50724 = 1.0;
double r50725 = r50722 - r50724;
double r50726 = r50723 / r50725;
return r50726;
}
double f(double i) {
double r50727 = i;
double r50728 = 217.99471085876914;
bool r50729 = r50727 <= r50728;
double r50730 = r50727 * r50727;
double r50731 = 2.0;
double r50732 = r50731 * r50727;
double r50733 = r50732 * r50732;
double r50734 = 1.0;
double r50735 = r50733 - r50734;
double r50736 = r50731 * r50731;
double r50737 = r50735 * r50736;
double r50738 = r50730 / r50737;
double r50739 = 0.00390625;
double r50740 = 1.0;
double r50741 = 4.0;
double r50742 = pow(r50727, r50741);
double r50743 = r50740 / r50742;
double r50744 = r50739 * r50743;
double r50745 = 0.015625;
double r50746 = 2.0;
double r50747 = pow(r50727, r50746);
double r50748 = r50740 / r50747;
double r50749 = r50745 * r50748;
double r50750 = 0.0625;
double r50751 = r50749 + r50750;
double r50752 = r50744 + r50751;
double r50753 = r50729 ? r50738 : r50752;
return r50753;
}



Bits error versus i
Results
if i < 217.99471085876914Initial program 44.7
Simplified0.0
if 217.99471085876914 < i Initial program 48.4
Simplified32.6
Taylor expanded around inf 0.0
Final simplification0.0
herbie shell --seed 2020001
(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)))