x + \left(y - z\right) \cdot \left(t - x\right)
\left(x + t \cdot \left(y - z\right)\right) + \left(\sqrt[3]{-x} \cdot \sqrt[3]{-x}\right) \cdot \left(\sqrt[3]{-x} \cdot \left(y - z\right)\right)double f(double x, double y, double z, double t) {
double r952174 = x;
double r952175 = y;
double r952176 = z;
double r952177 = r952175 - r952176;
double r952178 = t;
double r952179 = r952178 - r952174;
double r952180 = r952177 * r952179;
double r952181 = r952174 + r952180;
return r952181;
}
double f(double x, double y, double z, double t) {
double r952182 = x;
double r952183 = t;
double r952184 = y;
double r952185 = z;
double r952186 = r952184 - r952185;
double r952187 = r952183 * r952186;
double r952188 = r952182 + r952187;
double r952189 = -r952182;
double r952190 = cbrt(r952189);
double r952191 = r952190 * r952190;
double r952192 = r952190 * r952186;
double r952193 = r952191 * r952192;
double r952194 = r952188 + r952193;
return r952194;
}




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.4 |
Initial program 0.0
rmApplied sub-neg0.0
Applied distribute-rgt-in0.0
Applied associate-+r+0.0
rmApplied add-cube-cbrt0.4
Applied associate-*l*0.4
Final simplification0.4
herbie shell --seed 2020047
(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))))