\left(\left(x \cdot y + \frac{z \cdot t}{16}\right) - \frac{a \cdot b}{4}\right) + c\mathsf{fma}\left(z, \frac{t}{16}, \mathsf{fma}\left(y, x, \mathsf{fma}\left(-\frac{a}{4}, b, c\right)\right)\right)double f(double x, double y, double z, double t, double a, double b, double c) {
double r191580 = x;
double r191581 = y;
double r191582 = r191580 * r191581;
double r191583 = z;
double r191584 = t;
double r191585 = r191583 * r191584;
double r191586 = 16.0;
double r191587 = r191585 / r191586;
double r191588 = r191582 + r191587;
double r191589 = a;
double r191590 = b;
double r191591 = r191589 * r191590;
double r191592 = 4.0;
double r191593 = r191591 / r191592;
double r191594 = r191588 - r191593;
double r191595 = c;
double r191596 = r191594 + r191595;
return r191596;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r191597 = z;
double r191598 = t;
double r191599 = 16.0;
double r191600 = r191598 / r191599;
double r191601 = y;
double r191602 = x;
double r191603 = a;
double r191604 = 4.0;
double r191605 = r191603 / r191604;
double r191606 = -r191605;
double r191607 = b;
double r191608 = c;
double r191609 = fma(r191606, r191607, r191608);
double r191610 = fma(r191601, r191602, r191609);
double r191611 = fma(r191597, r191600, r191610);
return r191611;
}



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
Initial program 0.2
Simplified0.0
Final simplification0.0
herbie shell --seed 2020036 +o rules:numerics
(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))