\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{1}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i} \cdot \left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t\right)double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r59206 = x;
double r59207 = y;
double r59208 = r59206 * r59207;
double r59209 = z;
double r59210 = r59208 + r59209;
double r59211 = r59210 * r59207;
double r59212 = 27464.7644705;
double r59213 = r59211 + r59212;
double r59214 = r59213 * r59207;
double r59215 = 230661.510616;
double r59216 = r59214 + r59215;
double r59217 = r59216 * r59207;
double r59218 = t;
double r59219 = r59217 + r59218;
double r59220 = a;
double r59221 = r59207 + r59220;
double r59222 = r59221 * r59207;
double r59223 = b;
double r59224 = r59222 + r59223;
double r59225 = r59224 * r59207;
double r59226 = c;
double r59227 = r59225 + r59226;
double r59228 = r59227 * r59207;
double r59229 = i;
double r59230 = r59228 + r59229;
double r59231 = r59219 / r59230;
return r59231;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r59232 = 1.0;
double r59233 = y;
double r59234 = a;
double r59235 = r59233 + r59234;
double r59236 = r59235 * r59233;
double r59237 = b;
double r59238 = r59236 + r59237;
double r59239 = r59238 * r59233;
double r59240 = c;
double r59241 = r59239 + r59240;
double r59242 = r59241 * r59233;
double r59243 = i;
double r59244 = r59242 + r59243;
double r59245 = r59232 / r59244;
double r59246 = x;
double r59247 = r59246 * r59233;
double r59248 = z;
double r59249 = r59247 + r59248;
double r59250 = r59249 * r59233;
double r59251 = 27464.7644705;
double r59252 = r59250 + r59251;
double r59253 = r59252 * r59233;
double r59254 = 230661.510616;
double r59255 = r59253 + r59254;
double r59256 = r59255 * r59233;
double r59257 = t;
double r59258 = r59256 + r59257;
double r59259 = r59245 * r59258;
return r59259;
}



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 clear-num28.9
rmApplied div-inv28.9
Applied add-cube-cbrt28.9
Applied times-frac28.8
Simplified28.8
Simplified28.8
Final simplification28.8
herbie shell --seed 2019212
(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)))