\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\sqrt[3]{\left(\left(y + a\right) \cdot y + b\right) \cdot y} \cdot \sqrt[3]{\left(\left(y + a\right) \cdot y + b\right) \cdot y}\right) \cdot \left(\sqrt[3]{\left(y + a\right) \cdot y + b} \cdot \sqrt[3]{y}\right) + c\right) \cdot y + i}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r70488 = x;
double r70489 = y;
double r70490 = r70488 * r70489;
double r70491 = z;
double r70492 = r70490 + r70491;
double r70493 = r70492 * r70489;
double r70494 = 27464.7644705;
double r70495 = r70493 + r70494;
double r70496 = r70495 * r70489;
double r70497 = 230661.510616;
double r70498 = r70496 + r70497;
double r70499 = r70498 * r70489;
double r70500 = t;
double r70501 = r70499 + r70500;
double r70502 = a;
double r70503 = r70489 + r70502;
double r70504 = r70503 * r70489;
double r70505 = b;
double r70506 = r70504 + r70505;
double r70507 = r70506 * r70489;
double r70508 = c;
double r70509 = r70507 + r70508;
double r70510 = r70509 * r70489;
double r70511 = i;
double r70512 = r70510 + r70511;
double r70513 = r70501 / r70512;
return r70513;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r70514 = x;
double r70515 = y;
double r70516 = r70514 * r70515;
double r70517 = z;
double r70518 = r70516 + r70517;
double r70519 = r70518 * r70515;
double r70520 = 27464.7644705;
double r70521 = r70519 + r70520;
double r70522 = r70521 * r70515;
double r70523 = 230661.510616;
double r70524 = r70522 + r70523;
double r70525 = r70524 * r70515;
double r70526 = t;
double r70527 = r70525 + r70526;
double r70528 = a;
double r70529 = r70515 + r70528;
double r70530 = r70529 * r70515;
double r70531 = b;
double r70532 = r70530 + r70531;
double r70533 = r70532 * r70515;
double r70534 = cbrt(r70533);
double r70535 = r70534 * r70534;
double r70536 = cbrt(r70532);
double r70537 = cbrt(r70515);
double r70538 = r70536 * r70537;
double r70539 = r70535 * r70538;
double r70540 = c;
double r70541 = r70539 + r70540;
double r70542 = r70541 * r70515;
double r70543 = i;
double r70544 = r70542 + r70543;
double r70545 = r70527 / r70544;
return r70545;
}



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
Results
Initial program 28.7
rmApplied add-cube-cbrt28.8
rmApplied cbrt-prod28.8
Final simplification28.8
herbie shell --seed 2020047 +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)))