\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\frac{\frac{\mathsf{fma}\left(\frac{\alpha + \beta}{\left(\mathsf{fma}\left(i, 2, \alpha\right) + \beta\right) + 2.0} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(i, 2, \alpha\right) + \beta}, \left(\frac{\alpha + \beta}{\left(\mathsf{fma}\left(i, 2, \alpha\right) + \beta\right) + 2.0} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(i, 2, \alpha\right) + \beta}\right) \cdot \left(\frac{\alpha + \beta}{\left(\mathsf{fma}\left(i, 2, \alpha\right) + \beta\right) + 2.0} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(i, 2, \alpha\right) + \beta}\right), \left(1.0 \cdot 1.0\right) \cdot 1.0\right)}{\mathsf{fma}\left(1.0, 1.0, \left(\frac{\alpha + \beta}{\left(\mathsf{fma}\left(i, 2, \alpha\right) + \beta\right) + 2.0} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(i, 2, \alpha\right) + \beta}\right) \cdot \left(\sqrt[3]{\frac{\alpha + \beta}{\left(\mathsf{fma}\left(i, 2, \alpha\right) + \beta\right) + 2.0} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(i, 2, \alpha\right) + \beta} - 1.0} \cdot \left(\sqrt[3]{\frac{\alpha + \beta}{\left(\mathsf{fma}\left(i, 2, \alpha\right) + \beta\right) + 2.0} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(i, 2, \alpha\right) + \beta} - 1.0} \cdot \sqrt[3]{\frac{\alpha + \beta}{\left(\mathsf{fma}\left(i, 2, \alpha\right) + \beta\right) + 2.0} \cdot \frac{\beta - \alpha}{\mathsf{fma}\left(i, 2, \alpha\right) + \beta} - 1.0}\right)\right)\right)}}{2.0}double f(double alpha, double beta, double i) {
double r4216289 = alpha;
double r4216290 = beta;
double r4216291 = r4216289 + r4216290;
double r4216292 = r4216290 - r4216289;
double r4216293 = r4216291 * r4216292;
double r4216294 = 2.0;
double r4216295 = i;
double r4216296 = r4216294 * r4216295;
double r4216297 = r4216291 + r4216296;
double r4216298 = r4216293 / r4216297;
double r4216299 = 2.0;
double r4216300 = r4216297 + r4216299;
double r4216301 = r4216298 / r4216300;
double r4216302 = 1.0;
double r4216303 = r4216301 + r4216302;
double r4216304 = r4216303 / r4216299;
return r4216304;
}
double f(double alpha, double beta, double i) {
double r4216305 = alpha;
double r4216306 = beta;
double r4216307 = r4216305 + r4216306;
double r4216308 = i;
double r4216309 = 2.0;
double r4216310 = fma(r4216308, r4216309, r4216305);
double r4216311 = r4216310 + r4216306;
double r4216312 = 2.0;
double r4216313 = r4216311 + r4216312;
double r4216314 = r4216307 / r4216313;
double r4216315 = r4216306 - r4216305;
double r4216316 = r4216315 / r4216311;
double r4216317 = r4216314 * r4216316;
double r4216318 = r4216317 * r4216317;
double r4216319 = 1.0;
double r4216320 = r4216319 * r4216319;
double r4216321 = r4216320 * r4216319;
double r4216322 = fma(r4216317, r4216318, r4216321);
double r4216323 = r4216317 - r4216319;
double r4216324 = cbrt(r4216323);
double r4216325 = r4216324 * r4216324;
double r4216326 = r4216324 * r4216325;
double r4216327 = r4216317 * r4216326;
double r4216328 = fma(r4216319, r4216319, r4216327);
double r4216329 = r4216322 / r4216328;
double r4216330 = r4216329 / r4216312;
return r4216330;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Initial program 23.7
Simplified23.5
rmApplied flip3-+23.5
Simplified23.5
Simplified12.6
rmApplied add-cube-cbrt12.6
Final simplification12.6
herbie shell --seed 2019151 +o rules:numerics
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:pre (and (> alpha -1) (> beta -1) (> i 0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))