\left(1 - x\right) \cdot y + x \cdot z
\mathsf{fma}\left(1 - x, y, x \cdot z\right)double f(double x, double y, double z) {
double r740244 = 1.0;
double r740245 = x;
double r740246 = r740244 - r740245;
double r740247 = y;
double r740248 = r740246 * r740247;
double r740249 = z;
double r740250 = r740245 * r740249;
double r740251 = r740248 + r740250;
return r740251;
}
double f(double x, double y, double z) {
double r740252 = 1.0;
double r740253 = x;
double r740254 = r740252 - r740253;
double r740255 = y;
double r740256 = z;
double r740257 = r740253 * r740256;
double r740258 = fma(r740254, r740255, r740257);
return r740258;
}




Bits error versus x




Bits error versus y




Bits error versus z
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020064 +o rules:numerics
(FPCore (x y z)
:name "Diagrams.Color.HSV:lerp from diagrams-contrib-1.3.0.5"
:precision binary64
:herbie-target
(- y (* x (- y z)))
(+ (* (- 1 x) y) (* x z)))