\tan \left(\tan^{-1} \left(\frac{y - x}{1 + x \cdot y}\right) + z\right)\tan \left(\tan^{-1} \left(\frac{y - x}{1 + x \cdot y}\right) + z\right)double code(double y, double x, double z) {
return ((double) tan(((double) (((double) atan(((double) (((double) (y - x)) / ((double) (1.0 + ((double) (x * y)))))))) + z))));
}
double code(double y, double x, double z) {
return ((double) tan(((double) (((double) atan(((double) (((double) (y - x)) / ((double) (1.0 + ((double) (x * y)))))))) + z))));
}



Bits error versus y



Bits error versus x



Bits error versus z
Results
Initial program 31.2
Final simplification31.2
herbie shell --seed 2020152
(FPCore (y x z)
:name "(tan (+ (atan (/ (- y x) (+ 1 (* x y)))) z))"
:precision binary64
(tan (+ (atan (/ (- y x) (+ 1.0 (* x y)))) z)))