\frac{60 \cdot \left(x - y\right)}{z - t} + a \cdot 120\frac{60}{\frac{z - t}{x - y}} + a \cdot 120double f(double x, double y, double z, double t, double a) {
double r776176 = 60.0;
double r776177 = x;
double r776178 = y;
double r776179 = r776177 - r776178;
double r776180 = r776176 * r776179;
double r776181 = z;
double r776182 = t;
double r776183 = r776181 - r776182;
double r776184 = r776180 / r776183;
double r776185 = a;
double r776186 = 120.0;
double r776187 = r776185 * r776186;
double r776188 = r776184 + r776187;
return r776188;
}
double f(double x, double y, double z, double t, double a) {
double r776189 = 60.0;
double r776190 = z;
double r776191 = t;
double r776192 = r776190 - r776191;
double r776193 = x;
double r776194 = y;
double r776195 = r776193 - r776194;
double r776196 = r776192 / r776195;
double r776197 = r776189 / r776196;
double r776198 = a;
double r776199 = 120.0;
double r776200 = r776198 * r776199;
double r776201 = r776197 + r776200;
return r776201;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t




Bits error versus a
Results
| Original | 0.4 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.4
rmApplied associate-/l*0.2
Final simplification0.2
herbie shell --seed 2020056
(FPCore (x y z t a)
:name "Data.Colour.RGB:hslsv from colour-2.3.3, B"
:precision binary64
:herbie-target
(+ (/ 60 (/ (- z t) (- x y))) (* a 120))
(+ (/ (* 60 (- x y)) (- z t)) (* a 120)))