\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{\left(i \cdot 2\right) \cdot 2 - \frac{1}{i}}{\frac{\frac{i}{2}}{2}}}double f(double i) {
double r72259 = i;
double r72260 = r72259 * r72259;
double r72261 = r72260 * r72260;
double r72262 = 2.0;
double r72263 = r72262 * r72259;
double r72264 = r72263 * r72263;
double r72265 = r72261 / r72264;
double r72266 = 1.0;
double r72267 = r72264 - r72266;
double r72268 = r72265 / r72267;
return r72268;
}
double f(double i) {
double r72269 = 1.0;
double r72270 = i;
double r72271 = 2.0;
double r72272 = r72270 * r72271;
double r72273 = r72272 * r72271;
double r72274 = 1.0;
double r72275 = r72274 / r72270;
double r72276 = r72273 - r72275;
double r72277 = r72270 / r72271;
double r72278 = r72277 / r72271;
double r72279 = r72276 / r72278;
double r72280 = r72269 / r72279;
return r72280;
}



Bits error versus i
Results
Initial program 46.4
Simplified0.1
rmApplied clear-num0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019179 +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)))