\left(\left(x \cdot y + \frac{z \cdot t}{16}\right) - \frac{a \cdot b}{4}\right) + c\left(\left(x \cdot y + z \cdot \frac{t}{16}\right) - \frac{a \cdot b}{4}\right) + cdouble f(double x, double y, double z, double t, double a, double b, double c) {
double r207382 = x;
double r207383 = y;
double r207384 = r207382 * r207383;
double r207385 = z;
double r207386 = t;
double r207387 = r207385 * r207386;
double r207388 = 16.0;
double r207389 = r207387 / r207388;
double r207390 = r207384 + r207389;
double r207391 = a;
double r207392 = b;
double r207393 = r207391 * r207392;
double r207394 = 4.0;
double r207395 = r207393 / r207394;
double r207396 = r207390 - r207395;
double r207397 = c;
double r207398 = r207396 + r207397;
return r207398;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r207399 = x;
double r207400 = y;
double r207401 = r207399 * r207400;
double r207402 = z;
double r207403 = t;
double r207404 = 16.0;
double r207405 = r207403 / r207404;
double r207406 = r207402 * r207405;
double r207407 = r207401 + r207406;
double r207408 = a;
double r207409 = b;
double r207410 = r207408 * r207409;
double r207411 = 4.0;
double r207412 = r207410 / r207411;
double r207413 = r207407 - r207412;
double r207414 = c;
double r207415 = r207413 + r207414;
return r207415;
}



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.2
rmApplied *-un-lft-identity0.2
Applied times-frac0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020100
(FPCore (x y z t a b c)
:name "Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, C"
:precision binary64
(+ (- (+ (* x y) (/ (* z t) 16)) (/ (* a b) 4)) c))