\frac{60.0 \cdot \left(x - y\right)}{z - t} + a \cdot 120.0\left(x - y\right) \cdot \frac{60.0}{z - t} + a \cdot 120.0double f(double x, double y, double z, double t, double a) {
double r39039469 = 60.0;
double r39039470 = x;
double r39039471 = y;
double r39039472 = r39039470 - r39039471;
double r39039473 = r39039469 * r39039472;
double r39039474 = z;
double r39039475 = t;
double r39039476 = r39039474 - r39039475;
double r39039477 = r39039473 / r39039476;
double r39039478 = a;
double r39039479 = 120.0;
double r39039480 = r39039478 * r39039479;
double r39039481 = r39039477 + r39039480;
return r39039481;
}
double f(double x, double y, double z, double t, double a) {
double r39039482 = x;
double r39039483 = y;
double r39039484 = r39039482 - r39039483;
double r39039485 = 60.0;
double r39039486 = z;
double r39039487 = t;
double r39039488 = r39039486 - r39039487;
double r39039489 = r39039485 / r39039488;
double r39039490 = r39039484 * r39039489;
double r39039491 = a;
double r39039492 = 120.0;
double r39039493 = r39039491 * r39039492;
double r39039494 = r39039490 + r39039493;
return r39039494;
}




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 associate-/l*0.2
rmApplied associate-/r/0.1
Final simplification0.1
herbie shell --seed 2019162
(FPCore (x y z t a)
:name "Data.Colour.RGB:hslsv from colour-2.3.3, B"
:herbie-target
(+ (/ 60.0 (/ (- z t) (- x y))) (* a 120.0))
(+ (/ (* 60.0 (- x y)) (- z t)) (* a 120.0)))