x + \left(y - z\right) \cdot \left(t - x\right)
\mathsf{fma}\left(y - z, t - x, x\right)double f(double x, double y, double z, double t) {
double r993675 = x;
double r993676 = y;
double r993677 = z;
double r993678 = r993676 - r993677;
double r993679 = t;
double r993680 = r993679 - r993675;
double r993681 = r993678 * r993680;
double r993682 = r993675 + r993681;
return r993682;
}
double f(double x, double y, double z, double t) {
double r993683 = y;
double r993684 = z;
double r993685 = r993683 - r993684;
double r993686 = t;
double r993687 = x;
double r993688 = r993686 - r993687;
double r993689 = fma(r993685, r993688, r993687);
return r993689;
}




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 2020042 +o rules:numerics
(FPCore (x y z t)
:name "Data.Metrics.Snapshot:quantile from metrics-0.3.0.2"
:precision binary64
:herbie-target
(+ x (+ (* t (- y z)) (* (- x) (- y z))))
(+ x (* (- y z) (- t x))))