\left(\left(x - \frac{16}{116}\right) \cdot 3\right) \cdot y\left(x - \frac{16}{116}\right) \cdot \left(3 \cdot y\right)double f(double x, double y) {
double r836550 = x;
double r836551 = 16.0;
double r836552 = 116.0;
double r836553 = r836551 / r836552;
double r836554 = r836550 - r836553;
double r836555 = 3.0;
double r836556 = r836554 * r836555;
double r836557 = y;
double r836558 = r836556 * r836557;
return r836558;
}
double f(double x, double y) {
double r836559 = x;
double r836560 = 16.0;
double r836561 = 116.0;
double r836562 = r836560 / r836561;
double r836563 = r836559 - r836562;
double r836564 = 3.0;
double r836565 = y;
double r836566 = r836564 * r836565;
double r836567 = r836563 * r836566;
return r836567;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.3 |
Initial program 0.2
rmApplied associate-*l*0.3
Final simplification0.3
herbie shell --seed 2020024 +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))