\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 r905544 = x;
double r905545 = 16.0;
double r905546 = 116.0;
double r905547 = r905545 / r905546;
double r905548 = r905544 - r905547;
double r905549 = 3.0;
double r905550 = r905548 * r905549;
double r905551 = y;
double r905552 = r905550 * r905551;
return r905552;
}
double f(double x, double y) {
double r905553 = x;
double r905554 = 16.0;
double r905555 = 116.0;
double r905556 = r905554 / r905555;
double r905557 = r905553 - r905556;
double r905558 = 3.0;
double r905559 = r905557 * r905558;
double r905560 = y;
double r905561 = r905559 * r905560;
return r905561;
}




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 2020046 +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))