\left(\left(x \cdot y + \frac{z \cdot t}{16.0}\right) - \frac{a \cdot b}{4.0}\right) + c\left(\left(z \cdot \frac{t}{16.0} + x \cdot y\right) - \frac{a}{\frac{4.0}{b}}\right) + cdouble f(double x, double y, double z, double t, double a, double b, double c) {
double r14632383 = x;
double r14632384 = y;
double r14632385 = r14632383 * r14632384;
double r14632386 = z;
double r14632387 = t;
double r14632388 = r14632386 * r14632387;
double r14632389 = 16.0;
double r14632390 = r14632388 / r14632389;
double r14632391 = r14632385 + r14632390;
double r14632392 = a;
double r14632393 = b;
double r14632394 = r14632392 * r14632393;
double r14632395 = 4.0;
double r14632396 = r14632394 / r14632395;
double r14632397 = r14632391 - r14632396;
double r14632398 = c;
double r14632399 = r14632397 + r14632398;
return r14632399;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r14632400 = z;
double r14632401 = t;
double r14632402 = 16.0;
double r14632403 = r14632401 / r14632402;
double r14632404 = r14632400 * r14632403;
double r14632405 = x;
double r14632406 = y;
double r14632407 = r14632405 * r14632406;
double r14632408 = r14632404 + r14632407;
double r14632409 = a;
double r14632410 = 4.0;
double r14632411 = b;
double r14632412 = r14632410 / r14632411;
double r14632413 = r14632409 / r14632412;
double r14632414 = r14632408 - r14632413;
double r14632415 = c;
double r14632416 = r14632414 + r14632415;
return r14632416;
}



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
Results
Initial program 0.1
rmApplied *-un-lft-identity0.1
Applied times-frac0.1
Simplified0.1
rmApplied associate-/l*0.1
Final simplification0.1
herbie shell --seed 2019163
(FPCore (x y z t a b c)
:name "Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, C"
(+ (- (+ (* x y) (/ (* z t) 16.0)) (/ (* a b) 4.0)) c))