\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}\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t\right) \cdot \frac{1}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r57482 = x;
double r57483 = y;
double r57484 = r57482 * r57483;
double r57485 = z;
double r57486 = r57484 + r57485;
double r57487 = r57486 * r57483;
double r57488 = 27464.7644705;
double r57489 = r57487 + r57488;
double r57490 = r57489 * r57483;
double r57491 = 230661.510616;
double r57492 = r57490 + r57491;
double r57493 = r57492 * r57483;
double r57494 = t;
double r57495 = r57493 + r57494;
double r57496 = a;
double r57497 = r57483 + r57496;
double r57498 = r57497 * r57483;
double r57499 = b;
double r57500 = r57498 + r57499;
double r57501 = r57500 * r57483;
double r57502 = c;
double r57503 = r57501 + r57502;
double r57504 = r57503 * r57483;
double r57505 = i;
double r57506 = r57504 + r57505;
double r57507 = r57495 / r57506;
return r57507;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r57508 = x;
double r57509 = y;
double r57510 = r57508 * r57509;
double r57511 = z;
double r57512 = r57510 + r57511;
double r57513 = r57512 * r57509;
double r57514 = 27464.7644705;
double r57515 = r57513 + r57514;
double r57516 = r57515 * r57509;
double r57517 = 230661.510616;
double r57518 = r57516 + r57517;
double r57519 = r57518 * r57509;
double r57520 = t;
double r57521 = r57519 + r57520;
double r57522 = 1.0;
double r57523 = a;
double r57524 = r57509 + r57523;
double r57525 = r57524 * r57509;
double r57526 = b;
double r57527 = r57525 + r57526;
double r57528 = r57527 * r57509;
double r57529 = c;
double r57530 = r57528 + r57529;
double r57531 = r57530 * r57509;
double r57532 = i;
double r57533 = r57531 + r57532;
double r57534 = r57522 / r57533;
double r57535 = r57521 * r57534;
return r57535;
}



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.8
rmApplied div-inv28.9
Final simplification28.9
herbie shell --seed 2019303
(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.764470499998) y) 230661.510616000014) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))