\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{\sqrt{\frac{\frac{1}{2}}{2}}}{2 + \frac{\sqrt{1}}{i}} \cdot \left(\sqrt{\sqrt{\frac{1}{2}}} \cdot \frac{\sqrt{\frac{\sqrt{\frac{1}{2}}}{2}}}{2 - \frac{\sqrt{1}}{i}}\right)double f(double i) {
double r98205 = i;
double r98206 = r98205 * r98205;
double r98207 = r98206 * r98206;
double r98208 = 2.0;
double r98209 = r98208 * r98205;
double r98210 = r98209 * r98209;
double r98211 = r98207 / r98210;
double r98212 = 1.0;
double r98213 = r98210 - r98212;
double r98214 = r98211 / r98213;
return r98214;
}
double f(double i) {
double r98215 = 1.0;
double r98216 = 2.0;
double r98217 = r98215 / r98216;
double r98218 = r98217 / r98216;
double r98219 = sqrt(r98218);
double r98220 = 1.0;
double r98221 = sqrt(r98220);
double r98222 = i;
double r98223 = r98221 / r98222;
double r98224 = r98216 + r98223;
double r98225 = r98219 / r98224;
double r98226 = sqrt(r98217);
double r98227 = sqrt(r98226);
double r98228 = r98226 / r98216;
double r98229 = sqrt(r98228);
double r98230 = r98216 - r98223;
double r98231 = r98229 / r98230;
double r98232 = r98227 * r98231;
double r98233 = r98225 * r98232;
return r98233;
}



Bits error versus i
Results
Initial program 46.7
Simplified0.3
rmApplied add-sqr-sqrt0.3
Applied times-frac0.5
Applied difference-of-squares0.5
Applied add-sqr-sqrt0.5
Applied times-frac0.1
rmApplied *-un-lft-identity0.1
Applied *-un-lft-identity0.1
Applied add-sqr-sqrt0.1
Applied times-frac0.1
Applied sqrt-prod0.1
Applied times-frac0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019199
(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)))