\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t\mathsf{fma}\left(-\frac{y}{2}, z, \mathsf{fma}\left(x, \frac{1}{8}, t\right)\right)double f(double x, double y, double z, double t) {
double r508614 = 1.0;
double r508615 = 8.0;
double r508616 = r508614 / r508615;
double r508617 = x;
double r508618 = r508616 * r508617;
double r508619 = y;
double r508620 = z;
double r508621 = r508619 * r508620;
double r508622 = 2.0;
double r508623 = r508621 / r508622;
double r508624 = r508618 - r508623;
double r508625 = t;
double r508626 = r508624 + r508625;
return r508626;
}
double f(double x, double y, double z, double t) {
double r508627 = y;
double r508628 = 2.0;
double r508629 = r508627 / r508628;
double r508630 = -r508629;
double r508631 = z;
double r508632 = x;
double r508633 = 1.0;
double r508634 = 8.0;
double r508635 = r508633 / r508634;
double r508636 = t;
double r508637 = fma(r508632, r508635, r508636);
double r508638 = fma(r508630, r508631, r508637);
return r508638;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019198 +o rules:numerics
(FPCore (x y z t)
:name "Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, B"
:herbie-target
(- (+ (/ x 8.0) t) (* (/ z 2.0) y))
(+ (- (* (/ 1.0 8.0) x) (/ (* y z) 2.0)) t))