x + \left(y - z\right) \cdot \left(t - x\right)
\left(-x\right) \cdot \left(y - z\right) + \left(t \cdot \left(y - z\right) + x\right)
double f(double x, double y, double z, double t) {
double r40677794 = x;
double r40677795 = y;
double r40677796 = z;
double r40677797 = r40677795 - r40677796;
double r40677798 = t;
double r40677799 = r40677798 - r40677794;
double r40677800 = r40677797 * r40677799;
double r40677801 = r40677794 + r40677800;
return r40677801;
}
double f(double x, double y, double z, double t) {
double r40677802 = x;
double r40677803 = -r40677802;
double r40677804 = y;
double r40677805 = z;
double r40677806 = r40677804 - r40677805;
double r40677807 = r40677803 * r40677806;
double r40677808 = t;
double r40677809 = r40677808 * r40677806;
double r40677810 = r40677809 + r40677802;
double r40677811 = r40677807 + r40677810;
return r40677811;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
rmApplied sub-neg0.0
Applied distribute-rgt-in0.0
Applied associate-+r+0.0
Final simplification0.0
herbie shell --seed 2019179
(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))))