\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}{\left(2 \cdot 2 - \frac{1}{i \cdot i}\right) \cdot \left(2 \cdot 2\right)}double f(double i) {
double r54513 = i;
double r54514 = r54513 * r54513;
double r54515 = r54514 * r54514;
double r54516 = 2.0;
double r54517 = r54516 * r54513;
double r54518 = r54517 * r54517;
double r54519 = r54515 / r54518;
double r54520 = 1.0;
double r54521 = r54518 - r54520;
double r54522 = r54519 / r54521;
return r54522;
}
double f(double i) {
double r54523 = 1.0;
double r54524 = 2.0;
double r54525 = r54524 * r54524;
double r54526 = 1.0;
double r54527 = i;
double r54528 = r54527 * r54527;
double r54529 = r54526 / r54528;
double r54530 = r54525 - r54529;
double r54531 = r54530 * r54525;
double r54532 = r54523 / r54531;
return r54532;
}



Bits error versus i
Results
Initial program 46.5
Simplified0.3
Final simplification0.3
herbie shell --seed 2019323 +o rules:numerics
(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)))