1.0 + \frac{4.0 \cdot \left(\left(x + y \cdot 0.75\right) - z\right)}{y}4.0 + \frac{\left(x - z\right) \cdot 4.0}{y}double f(double x, double y, double z) {
double r15881933 = 1.0;
double r15881934 = 4.0;
double r15881935 = x;
double r15881936 = y;
double r15881937 = 0.75;
double r15881938 = r15881936 * r15881937;
double r15881939 = r15881935 + r15881938;
double r15881940 = z;
double r15881941 = r15881939 - r15881940;
double r15881942 = r15881934 * r15881941;
double r15881943 = r15881942 / r15881936;
double r15881944 = r15881933 + r15881943;
return r15881944;
}
double f(double x, double y, double z) {
double r15881945 = 4.0;
double r15881946 = x;
double r15881947 = z;
double r15881948 = r15881946 - r15881947;
double r15881949 = r15881948 * r15881945;
double r15881950 = y;
double r15881951 = r15881949 / r15881950;
double r15881952 = r15881945 + r15881951;
return r15881952;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.2
Simplified0.0
Taylor expanded around 0 0.0
Simplified0.1
Final simplification0.1
herbie shell --seed 2019168 +o rules:numerics
(FPCore (x y z)
:name "Data.Array.Repa.Algorithms.ColorRamp:rampColorHotToCold from repa-algorithms-3.4.0.1, A"
(+ 1.0 (/ (* 4.0 (- (+ x (* y 0.75)) z)) y)))