\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\frac{\mathsf{fma}\left(\mathsf{fma}\left(\left(\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)} \cdot \left(\left(\sqrt[3]{\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}}\right) \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}}\right)\right) \cdot \sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}, y, 230661.5106160000141244381666183471679688\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r73432 = x;
double r73433 = y;
double r73434 = r73432 * r73433;
double r73435 = z;
double r73436 = r73434 + r73435;
double r73437 = r73436 * r73433;
double r73438 = 27464.7644705;
double r73439 = r73437 + r73438;
double r73440 = r73439 * r73433;
double r73441 = 230661.510616;
double r73442 = r73440 + r73441;
double r73443 = r73442 * r73433;
double r73444 = t;
double r73445 = r73443 + r73444;
double r73446 = a;
double r73447 = r73433 + r73446;
double r73448 = r73447 * r73433;
double r73449 = b;
double r73450 = r73448 + r73449;
double r73451 = r73450 * r73433;
double r73452 = c;
double r73453 = r73451 + r73452;
double r73454 = r73453 * r73433;
double r73455 = i;
double r73456 = r73454 + r73455;
double r73457 = r73445 / r73456;
return r73457;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r73458 = x;
double r73459 = y;
double r73460 = z;
double r73461 = fma(r73458, r73459, r73460);
double r73462 = 27464.7644705;
double r73463 = fma(r73461, r73459, r73462);
double r73464 = cbrt(r73463);
double r73465 = cbrt(r73464);
double r73466 = r73465 * r73465;
double r73467 = r73466 * r73465;
double r73468 = r73464 * r73467;
double r73469 = r73468 * r73464;
double r73470 = 230661.510616;
double r73471 = fma(r73469, r73459, r73470);
double r73472 = t;
double r73473 = fma(r73471, r73459, r73472);
double r73474 = a;
double r73475 = r73459 + r73474;
double r73476 = b;
double r73477 = fma(r73475, r73459, r73476);
double r73478 = c;
double r73479 = fma(r73477, r73459, r73478);
double r73480 = i;
double r73481 = fma(r73479, r73459, r73480);
double r73482 = r73473 / r73481;
return r73482;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b



Bits error versus c



Bits error versus i
Initial program 28.7
Simplified28.7
rmApplied add-cube-cbrt28.8
rmApplied add-cube-cbrt28.8
Final simplification28.8
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x y z t a b c i)
:name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
:precision binary64
(/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))