\left(\left(x - \frac{16}{116}\right) \cdot 3\right) \cdot yy \cdot \left(\left(x - \frac{16}{116}\right) \cdot 3\right)double f(double x, double y) {
double r42091211 = x;
double r42091212 = 16.0;
double r42091213 = 116.0;
double r42091214 = r42091212 / r42091213;
double r42091215 = r42091211 - r42091214;
double r42091216 = 3.0;
double r42091217 = r42091215 * r42091216;
double r42091218 = y;
double r42091219 = r42091217 * r42091218;
return r42091219;
}
double f(double x, double y) {
double r42091220 = y;
double r42091221 = x;
double r42091222 = 16.0;
double r42091223 = 116.0;
double r42091224 = r42091222 / r42091223;
double r42091225 = r42091221 - r42091224;
double r42091226 = 3.0;
double r42091227 = r42091225 * r42091226;
double r42091228 = r42091220 * r42091227;
return r42091228;
}




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 2019170 +o rules:numerics
(FPCore (x y)
:name "Data.Colour.CIE:cieLAB from colour-2.3.3, A"
:herbie-target
(* y (- (* x 3.0) 0.41379310344827586))
(* (* (- x (/ 16.0 116.0)) 3.0) y))