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 r34415828 = x;
double r34415829 = y;
double r34415830 = z;
double r34415831 = r34415829 - r34415830;
double r34415832 = t;
double r34415833 = r34415832 - r34415828;
double r34415834 = r34415831 * r34415833;
double r34415835 = r34415828 + r34415834;
return r34415835;
}
double f(double x, double y, double z, double t) {
double r34415836 = t;
double r34415837 = x;
double r34415838 = r34415836 - r34415837;
double r34415839 = y;
double r34415840 = z;
double r34415841 = r34415839 - r34415840;
double r34415842 = fma(r34415838, r34415841, r34415837);
return r34415842;
}




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