\frac{60 \cdot \left(x - y\right)}{z - t} + a \cdot 12060 \cdot \frac{x - y}{z - t} + a \cdot 120double f(double x, double y, double z, double t, double a) {
double r871266 = 60.0;
double r871267 = x;
double r871268 = y;
double r871269 = r871267 - r871268;
double r871270 = r871266 * r871269;
double r871271 = z;
double r871272 = t;
double r871273 = r871271 - r871272;
double r871274 = r871270 / r871273;
double r871275 = a;
double r871276 = 120.0;
double r871277 = r871275 * r871276;
double r871278 = r871274 + r871277;
return r871278;
}
double f(double x, double y, double z, double t, double a) {
double r871279 = 60.0;
double r871280 = x;
double r871281 = y;
double r871282 = r871280 - r871281;
double r871283 = z;
double r871284 = t;
double r871285 = r871283 - r871284;
double r871286 = r871282 / r871285;
double r871287 = r871279 * r871286;
double r871288 = a;
double r871289 = 120.0;
double r871290 = r871288 * r871289;
double r871291 = r871287 + r871290;
return r871291;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t




Bits error versus a
Results
| Original | 0.5 |
|---|---|
| Target | 0.2 |
| Herbie | 0.1 |
Initial program 0.5
rmApplied *-un-lft-identity0.5
Applied times-frac0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020036
(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)))