\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 r718150 = 1.0;
double r718151 = 8.0;
double r718152 = r718150 / r718151;
double r718153 = x;
double r718154 = r718152 * r718153;
double r718155 = y;
double r718156 = z;
double r718157 = r718155 * r718156;
double r718158 = 2.0;
double r718159 = r718157 / r718158;
double r718160 = r718154 - r718159;
double r718161 = t;
double r718162 = r718160 + r718161;
return r718162;
}
double f(double x, double y, double z, double t) {
double r718163 = x;
double r718164 = 8.0;
double r718165 = r718163 / r718164;
double r718166 = 1.0;
double r718167 = y;
double r718168 = 2.0;
double r718169 = r718167 / r718168;
double r718170 = -r718169;
double r718171 = z;
double r718172 = t;
double r718173 = fma(r718170, r718171, r718172);
double r718174 = fma(r718165, r718166, r718173);
return r718174;
}




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