\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 r654195 = 1.0;
double r654196 = 8.0;
double r654197 = r654195 / r654196;
double r654198 = x;
double r654199 = r654197 * r654198;
double r654200 = y;
double r654201 = z;
double r654202 = r654200 * r654201;
double r654203 = 2.0;
double r654204 = r654202 / r654203;
double r654205 = r654199 - r654204;
double r654206 = t;
double r654207 = r654205 + r654206;
return r654207;
}
double f(double x, double y, double z, double t) {
double r654208 = x;
double r654209 = 8.0;
double r654210 = r654208 / r654209;
double r654211 = 1.0;
double r654212 = y;
double r654213 = 2.0;
double r654214 = r654212 / r654213;
double r654215 = -r654214;
double r654216 = z;
double r654217 = t;
double r654218 = fma(r654215, r654216, r654217);
double r654219 = fma(r654210, r654211, r654218);
return r654219;
}




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