x \cdot y - z \cdot t
\mathsf{fma}\left(x, y, -z \cdot t\right)double f(double x, double y, double z, double t) {
double r5887194 = x;
double r5887195 = y;
double r5887196 = r5887194 * r5887195;
double r5887197 = z;
double r5887198 = t;
double r5887199 = r5887197 * r5887198;
double r5887200 = r5887196 - r5887199;
return r5887200;
}
double f(double x, double y, double z, double t) {
double r5887201 = x;
double r5887202 = y;
double r5887203 = z;
double r5887204 = t;
double r5887205 = r5887203 * r5887204;
double r5887206 = -r5887205;
double r5887207 = fma(r5887201, r5887202, r5887206);
return r5887207;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Initial program 0.0
rmApplied fma-neg0.0
Final simplification0.0
herbie shell --seed 2019163 +o rules:numerics
(FPCore (x y z t)
:name "Linear.V3:cross from linear-1.19.1.3"
(- (* x y) (* z t)))