\left(\frac{1}{8} \cdot x - \frac{y \cdot z}{2}\right) + t\mathsf{fma}\left(\frac{x}{8}, 1, \mathsf{fma}\left(-\frac{y}{2}, z, t\right)\right)double f(double x, double y, double z, double t) {
double r823826 = 1.0;
double r823827 = 8.0;
double r823828 = r823826 / r823827;
double r823829 = x;
double r823830 = r823828 * r823829;
double r823831 = y;
double r823832 = z;
double r823833 = r823831 * r823832;
double r823834 = 2.0;
double r823835 = r823833 / r823834;
double r823836 = r823830 - r823835;
double r823837 = t;
double r823838 = r823836 + r823837;
return r823838;
}
double f(double x, double y, double z, double t) {
double r823839 = x;
double r823840 = 8.0;
double r823841 = r823839 / r823840;
double r823842 = 1.0;
double r823843 = y;
double r823844 = 2.0;
double r823845 = r823843 / r823844;
double r823846 = -r823845;
double r823847 = z;
double r823848 = t;
double r823849 = fma(r823846, r823847, r823848);
double r823850 = fma(r823841, r823842, r823849);
return r823850;
}




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 2020057 +o rules:numerics
(FPCore (x y z t)
:name "Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, B"
:precision binary64
:herbie-target
(- (+ (/ x 8) t) (* (/ z 2) y))
(+ (- (* (/ 1 8) x) (/ (* y z) 2)) t))