\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 \cdot b}{4.0}\right) + cdouble f(double x, double y, double z, double t, double a, double b, double c) {
double r11459428 = x;
double r11459429 = y;
double r11459430 = r11459428 * r11459429;
double r11459431 = z;
double r11459432 = t;
double r11459433 = r11459431 * r11459432;
double r11459434 = 16.0;
double r11459435 = r11459433 / r11459434;
double r11459436 = r11459430 + r11459435;
double r11459437 = a;
double r11459438 = b;
double r11459439 = r11459437 * r11459438;
double r11459440 = 4.0;
double r11459441 = r11459439 / r11459440;
double r11459442 = r11459436 - r11459441;
double r11459443 = c;
double r11459444 = r11459442 + r11459443;
return r11459444;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r11459445 = z;
double r11459446 = t;
double r11459447 = 16.0;
double r11459448 = r11459446 / r11459447;
double r11459449 = r11459445 * r11459448;
double r11459450 = x;
double r11459451 = y;
double r11459452 = r11459450 * r11459451;
double r11459453 = r11459449 + r11459452;
double r11459454 = a;
double r11459455 = b;
double r11459456 = r11459454 * r11459455;
double r11459457 = 4.0;
double r11459458 = r11459456 / r11459457;
double r11459459 = r11459453 - r11459458;
double r11459460 = c;
double r11459461 = r11459459 + r11459460;
return r11459461;
}



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 2019165
(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))