x \cdot \left(1 - y \cdot z\right)
\left(1 - z \cdot y\right) \cdot x
double f(double x, double y, double z) {
double r10569922 = x;
double r10569923 = 1.0;
double r10569924 = y;
double r10569925 = z;
double r10569926 = r10569924 * r10569925;
double r10569927 = r10569923 - r10569926;
double r10569928 = r10569922 * r10569927;
return r10569928;
}
double f(double x, double y, double z) {
double r10569929 = 1.0;
double r10569930 = z;
double r10569931 = y;
double r10569932 = r10569930 * r10569931;
double r10569933 = r10569929 - r10569932;
double r10569934 = x;
double r10569935 = r10569933 * r10569934;
return r10569935;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 3.4
rmApplied *-commutative3.4
Final simplification3.4
herbie shell --seed 2019168 +o rules:numerics
(FPCore (x y z)
:name "Data.Colour.RGBSpace.HSV:hsv from colour-2.3.3, I"
(* x (- 1.0 (* y z))))