\frac{1 - \tan x \cdot \tan x}{1 + \tan x \cdot \tan x}\left(1 - \tan x \cdot \tan x\right) \cdot \frac{1}{1 + \tan x \cdot \tan x}double f(double x) {
double r12020 = 1.0;
double r12021 = x;
double r12022 = tan(r12021);
double r12023 = r12022 * r12022;
double r12024 = r12020 - r12023;
double r12025 = r12020 + r12023;
double r12026 = r12024 / r12025;
return r12026;
}
double f(double x) {
double r12027 = 1.0;
double r12028 = x;
double r12029 = tan(r12028);
double r12030 = r12029 * r12029;
double r12031 = r12027 - r12030;
double r12032 = 1.0;
double r12033 = r12027 + r12030;
double r12034 = r12032 / r12033;
double r12035 = r12031 * r12034;
return r12035;
}



Bits error versus x
Results
Initial program 0.3
rmApplied add-cbrt-cube0.5
Applied add-cbrt-cube0.6
Applied cbrt-undiv0.5
Simplified0.5
rmApplied div-inv0.5
Applied unpow-prod-down0.5
Applied cbrt-prod0.6
Simplified0.5
Simplified0.4
Final simplification0.4
herbie shell --seed 2019344
(FPCore (x)
:name "Trigonometry B"
:precision binary64
(/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))))