\left(\left(x - \frac{16}{116}\right) \cdot 3\right) \cdot y\left(\left(x - \frac{16}{116}\right) \cdot 3\right) \cdot ydouble f(double x, double y) {
double r571423 = x;
double r571424 = 16.0;
double r571425 = 116.0;
double r571426 = r571424 / r571425;
double r571427 = r571423 - r571426;
double r571428 = 3.0;
double r571429 = r571427 * r571428;
double r571430 = y;
double r571431 = r571429 * r571430;
return r571431;
}
double f(double x, double y) {
double r571432 = x;
double r571433 = 16.0;
double r571434 = 116.0;
double r571435 = r571433 / r571434;
double r571436 = r571432 - r571435;
double r571437 = 3.0;
double r571438 = r571436 * r571437;
double r571439 = y;
double r571440 = r571438 * r571439;
return r571440;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.2
Final simplification0.2
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x y)
:name "Data.Colour.CIE:cieLAB from colour-2.3.3, A"
:precision binary64
:herbie-target
(* y (- (* x 3) 0.41379310344827586))
(* (* (- x (/ 16 116)) 3) y))