x + \left(y - z\right) \cdot \left(t - x\right)
\mathsf{fma}\left(t - x, y - z, x\right)double f(double x, double y, double z, double t) {
double r704878 = x;
double r704879 = y;
double r704880 = z;
double r704881 = r704879 - r704880;
double r704882 = t;
double r704883 = r704882 - r704878;
double r704884 = r704881 * r704883;
double r704885 = r704878 + r704884;
return r704885;
}
double f(double x, double y, double z, double t) {
double r704886 = t;
double r704887 = x;
double r704888 = r704886 - r704887;
double r704889 = y;
double r704890 = z;
double r704891 = r704889 - r704890;
double r704892 = fma(r704888, r704891, r704887);
return r704892;
}




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