\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{\frac{1}{4}}{2 - \frac{\sqrt{1.0}}{i}} \cdot \frac{1}{2 + \frac{\sqrt{1.0}}{i}}double f(double i) {
double r943808 = i;
double r943809 = r943808 * r943808;
double r943810 = r943809 * r943809;
double r943811 = 2.0;
double r943812 = r943811 * r943808;
double r943813 = r943812 * r943812;
double r943814 = r943810 / r943813;
double r943815 = 1.0;
double r943816 = r943813 - r943815;
double r943817 = r943814 / r943816;
return r943817;
}
double f(double i) {
double r943818 = 0.25;
double r943819 = 2.0;
double r943820 = 1.0;
double r943821 = sqrt(r943820);
double r943822 = i;
double r943823 = r943821 / r943822;
double r943824 = r943819 - r943823;
double r943825 = r943818 / r943824;
double r943826 = 1.0;
double r943827 = r943819 + r943823;
double r943828 = r943826 / r943827;
double r943829 = r943825 * r943828;
return r943829;
}



Bits error versus i
Results
Initial program 46.0
Simplified0.3
rmApplied add-sqr-sqrt0.3
Applied times-frac0.4
Applied add-sqr-sqrt0.4
Applied difference-of-squares0.4
Applied *-un-lft-identity0.4
Applied times-frac0.1
Final simplification0.1
herbie shell --seed 2019128 +o rules:numerics
(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)))