x + \left(\left(y - x\right) \cdot 6\right) \cdot z
x + \left(\left(y - x\right) \cdot 6\right) \cdot z
double f(double x, double y, double z) {
double r904069 = x;
double r904070 = y;
double r904071 = r904070 - r904069;
double r904072 = 6.0;
double r904073 = r904071 * r904072;
double r904074 = z;
double r904075 = r904073 * r904074;
double r904076 = r904069 + r904075;
return r904076;
}
double f(double x, double y, double z) {
double r904077 = x;
double r904078 = y;
double r904079 = r904078 - r904077;
double r904080 = 6.0;
double r904081 = r904079 * r904080;
double r904082 = z;
double r904083 = r904081 * r904082;
double r904084 = r904077 + r904083;
return r904084;
}




Bits error versus x




Bits error versus y




Bits error versus z
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.2
Final simplification0.2
herbie shell --seed 2019350
(FPCore (x y z)
:name "Data.Colour.RGBSpace.HSL:hsl from colour-2.3.3, E"
:precision binary64
:herbie-target
(- x (* (* 6 z) (- x y)))
(+ x (* (* (- y x) 6) z)))