\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 r2331635 = x;
double r2331636 = 16.0;
double r2331637 = 116.0;
double r2331638 = r2331636 / r2331637;
double r2331639 = r2331635 - r2331638;
double r2331640 = 3.0;
double r2331641 = r2331639 * r2331640;
double r2331642 = y;
double r2331643 = r2331641 * r2331642;
return r2331643;
}
double f(double x, double y) {
double r2331644 = x;
double r2331645 = 16.0;
double r2331646 = 116.0;
double r2331647 = r2331645 / r2331646;
double r2331648 = r2331644 - r2331647;
double r2331649 = 3.0;
double r2331650 = r2331648 * r2331649;
double r2331651 = y;
double r2331652 = r2331650 * r2331651;
return r2331652;
}




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