\mathsf{min}\left(\mathsf{max}\left(1 - \frac{f - e}{s - e}, 0.0\right), 1\right)\mathsf{min}\left(\mathsf{max}\left(1 - \frac{f - e}{s - e}, 0.0\right), 1\right)double code(double f, double e, double s) {
return ((double) fmin(((double) fmax(((double) (1.0 - ((double) (((double) (f - e)) / ((double) (s - e)))))), 0.0)), 1.0));
}
double code(double f, double e, double s) {
return ((double) fmin(((double) fmax(((double) (1.0 - ((double) (((double) (f - e)) / ((double) (s - e)))))), 0.0)), 1.0));
}



Bits error versus f



Bits error versus e



Bits error versus s
Results
Initial program 8.6
Final simplification8.6
herbie shell --seed 2020152
(FPCore (f e s)
:name "(fmin (fmax (- 1.0 (/ (- f e) (- s e))) 0.0) 1.0)"
:precision binary64
(fmin (fmax (- 1.0 (/ (- f e) (- s e))) 0.0) 1.0))