x + \left(y - z\right) \cdot \left(t - x\right)
\left(x + \left(y \cdot t + \left(-z\right) \cdot t\right)\right) + \left(-x\right) \cdot \left(y - z\right)
double f(double x, double y, double z, double t) {
double r853561 = x;
double r853562 = y;
double r853563 = z;
double r853564 = r853562 - r853563;
double r853565 = t;
double r853566 = r853565 - r853561;
double r853567 = r853564 * r853566;
double r853568 = r853561 + r853567;
return r853568;
}
double f(double x, double y, double z, double t) {
double r853569 = x;
double r853570 = y;
double r853571 = t;
double r853572 = r853570 * r853571;
double r853573 = z;
double r853574 = -r853573;
double r853575 = r853574 * r853571;
double r853576 = r853572 + r853575;
double r853577 = r853569 + r853576;
double r853578 = -r853569;
double r853579 = r853570 - r853573;
double r853580 = r853578 * r853579;
double r853581 = r853577 + r853580;
return r853581;
}




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
rmApplied sub-neg0.0
Applied distribute-lft-in0.0
Simplified0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020042
(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))))