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 r34927840 = x;
double r34927841 = y;
double r34927842 = z;
double r34927843 = r34927841 - r34927842;
double r34927844 = t;
double r34927845 = r34927844 - r34927840;
double r34927846 = r34927843 * r34927845;
double r34927847 = r34927840 + r34927846;
return r34927847;
}
double f(double x, double y, double z, double t) {
double r34927848 = t;
double r34927849 = x;
double r34927850 = r34927848 - r34927849;
double r34927851 = y;
double r34927852 = z;
double r34927853 = r34927851 - r34927852;
double r34927854 = fma(r34927850, r34927853, r34927849);
return r34927854;
}




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