\frac{1 - \tan x \cdot \tan x}{1 + \tan x \cdot \tan x}\left(1 - \tan x \cdot \tan x\right) \cdot \frac{1 - \tan x \cdot \tan x}{1 - \left(\tan x \cdot \tan x\right) \cdot \left(\tan x \cdot \tan x\right)}(FPCore (x) :precision binary64 (/ (- 1.0 (* (tan x) (tan x))) (+ 1.0 (* (tan x) (tan x)))))
(FPCore (x) :precision binary64 (* (- 1.0 (* (tan x) (tan x))) (/ (- 1.0 (* (tan x) (tan x))) (- 1.0 (* (* (tan x) (tan x)) (* (tan x) (tan x)))))))
double code(double x) {
return (1.0 - (tan(x) * tan(x))) / (1.0 + (tan(x) * tan(x)));
}
double code(double x) {
return (1.0 - (tan(x) * tan(x))) * ((1.0 - (tan(x) * tan(x))) / (1.0 - ((tan(x) * tan(x)) * (tan(x) * tan(x)))));
}



Bits error versus x
Results
Initial program 0.3
rmApplied flip-+_binary640.4
Applied associate-/r/_binary640.4
Final simplification0.4
herbie shell --seed 2021118
(FPCore (x)
:name "Trigonometry B"
:precision binary64
(/ (- 1.0 (* (tan x) (tan x))) (+ 1.0 (* (tan x) (tan x)))))