\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 r703463 = 1.0;
double r703464 = 8.0;
double r703465 = r703463 / r703464;
double r703466 = x;
double r703467 = r703465 * r703466;
double r703468 = y;
double r703469 = z;
double r703470 = r703468 * r703469;
double r703471 = 2.0;
double r703472 = r703470 / r703471;
double r703473 = r703467 - r703472;
double r703474 = t;
double r703475 = r703473 + r703474;
return r703475;
}
double f(double x, double y, double z, double t) {
double r703476 = x;
double r703477 = 8.0;
double r703478 = r703476 / r703477;
double r703479 = 1.0;
double r703480 = y;
double r703481 = 2.0;
double r703482 = r703480 / r703481;
double r703483 = -r703482;
double r703484 = z;
double r703485 = t;
double r703486 = fma(r703483, r703484, r703485);
double r703487 = fma(r703478, r703479, r703486);
return r703487;
}




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