1 + \frac{4 \cdot \left(\left(x + y \cdot 0.25\right) - z\right)}{y}2 - \frac{\left(z - x\right) \cdot 4}{y}double f(double x, double y, double z) {
double r403920 = 1.0;
double r403921 = 4.0;
double r403922 = x;
double r403923 = y;
double r403924 = 0.25;
double r403925 = r403923 * r403924;
double r403926 = r403922 + r403925;
double r403927 = z;
double r403928 = r403926 - r403927;
double r403929 = r403921 * r403928;
double r403930 = r403929 / r403923;
double r403931 = r403920 + r403930;
return r403931;
}
double f(double x, double y, double z) {
double r403932 = 2.0;
double r403933 = z;
double r403934 = x;
double r403935 = r403933 - r403934;
double r403936 = 4.0;
double r403937 = r403935 * r403936;
double r403938 = y;
double r403939 = r403937 / r403938;
double r403940 = r403932 - r403939;
return r403940;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
Simplified0.0
Taylor expanded around 0 0.0
Simplified0.1
Final simplification0.1
herbie shell --seed 2020045
(FPCore (x y z)
:name "Data.Array.Repa.Algorithms.ColorRamp:rampColorHotToCold from repa-algorithms-3.4.0.1, C"
:precision binary64
(+ 1 (/ (* 4 (- (+ x (* y 0.25)) z)) y)))