\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{1}{\frac{8 - \frac{2}{{i}^{2}}}{0.5}}double f(double i) {
double r50216 = i;
double r50217 = r50216 * r50216;
double r50218 = r50217 * r50217;
double r50219 = 2.0;
double r50220 = r50219 * r50216;
double r50221 = r50220 * r50220;
double r50222 = r50218 / r50221;
double r50223 = 1.0;
double r50224 = r50221 - r50223;
double r50225 = r50222 / r50224;
return r50225;
}
double f(double i) {
double r50226 = 1.0;
double r50227 = 8.0;
double r50228 = 2.0;
double r50229 = i;
double r50230 = 2.0;
double r50231 = pow(r50229, r50230);
double r50232 = r50228 / r50231;
double r50233 = r50227 - r50232;
double r50234 = 0.5;
double r50235 = r50233 / r50234;
double r50236 = r50226 / r50235;
return r50236;
}



Bits error versus i
Results
Initial program 46.5
Simplified41.6
Taylor expanded around 0 16.1
rmApplied clear-num16.4
Simplified16.5
Taylor expanded around 0 0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019323
(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)))