\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 r1436195 = x;
double r1436196 = 16.0;
double r1436197 = 116.0;
double r1436198 = r1436196 / r1436197;
double r1436199 = r1436195 - r1436198;
double r1436200 = 3.0;
double r1436201 = r1436199 * r1436200;
double r1436202 = y;
double r1436203 = r1436201 * r1436202;
return r1436203;
}
double f(double x, double y) {
double r1436204 = x;
double r1436205 = 16.0;
double r1436206 = 116.0;
double r1436207 = r1436205 / r1436206;
double r1436208 = r1436204 - r1436207;
double r1436209 = 3.0;
double r1436210 = r1436208 * r1436209;
double r1436211 = y;
double r1436212 = r1436210 * r1436211;
return r1436212;
}




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