\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{i}{2 \cdot i + \sqrt{1}} \cdot \frac{1}{\frac{\left(2 \cdot i - \sqrt{1}\right) \cdot 2}{\frac{i}{2}}}double f(double i) {
double r6118793 = i;
double r6118794 = r6118793 * r6118793;
double r6118795 = r6118794 * r6118794;
double r6118796 = 2.0;
double r6118797 = r6118796 * r6118793;
double r6118798 = r6118797 * r6118797;
double r6118799 = r6118795 / r6118798;
double r6118800 = 1.0;
double r6118801 = r6118798 - r6118800;
double r6118802 = r6118799 / r6118801;
return r6118802;
}
double f(double i) {
double r6118803 = i;
double r6118804 = 2.0;
double r6118805 = r6118804 * r6118803;
double r6118806 = 1.0;
double r6118807 = sqrt(r6118806);
double r6118808 = r6118805 + r6118807;
double r6118809 = r6118803 / r6118808;
double r6118810 = 1.0;
double r6118811 = r6118805 - r6118807;
double r6118812 = r6118811 * r6118804;
double r6118813 = r6118803 / r6118804;
double r6118814 = r6118812 / r6118813;
double r6118815 = r6118810 / r6118814;
double r6118816 = r6118809 * r6118815;
return r6118816;
}



Bits error versus i
Results
Initial program 46.3
Simplified15.2
rmApplied add-sqr-sqrt15.2
Applied difference-of-squares15.2
Applied div-inv15.2
Applied times-frac0.1
Applied associate-*l*0.1
Simplified0.1
rmApplied clear-num0.1
Final simplification0.1
herbie shell --seed 2019174 +o rules:numerics
(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)))