\left(\left(x \cdot y + \frac{z \cdot t}{16}\right) - \frac{a \cdot b}{4}\right) + c\mathsf{fma}\left(\frac{z}{16}, t, \mathsf{fma}\left(x, y, \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 r139902 = x;
double r139903 = y;
double r139904 = r139902 * r139903;
double r139905 = z;
double r139906 = t;
double r139907 = r139905 * r139906;
double r139908 = 16.0;
double r139909 = r139907 / r139908;
double r139910 = r139904 + r139909;
double r139911 = a;
double r139912 = b;
double r139913 = r139911 * r139912;
double r139914 = 4.0;
double r139915 = r139913 / r139914;
double r139916 = r139910 - r139915;
double r139917 = c;
double r139918 = r139916 + r139917;
return r139918;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r139919 = z;
double r139920 = 16.0;
double r139921 = r139919 / r139920;
double r139922 = t;
double r139923 = x;
double r139924 = y;
double r139925 = a;
double r139926 = 4.0;
double r139927 = r139925 / r139926;
double r139928 = b;
double r139929 = -r139928;
double r139930 = c;
double r139931 = fma(r139927, r139929, r139930);
double r139932 = fma(r139923, r139924, r139931);
double r139933 = fma(r139921, r139922, r139932);
return r139933;
}



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 2019235 +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))