double f(double x) {
double r2476877 = 1.0;
double r2476878 = x;
double r2476879 = tan(r2476878);
double r2476880 = r2476879 * r2476879;
double r2476881 = r2476877 - r2476880;
double r2476882 = r2476877 + r2476880;
double r2476883 = r2476881 / r2476882;
return r2476883;
}
double f(double x) {
double r2476884 = 1.0;
double r2476885 = x;
double r2476886 = tan(r2476885);
double r2476887 = r2476886 * r2476886;
double r2476888 = r2476884 - r2476887;
double r2476889 = r2476887 + r2476884;
double r2476890 = r2476888 / r2476889;
return r2476890;
}
\frac{1 - \tan x \cdot \tan x}{1 + \tan x \cdot \tan x}\frac{1 - \tan x \cdot \tan x}{\tan x \cdot \tan x + 1}


Bits error versus x
Initial program 0.3
rmApplied add-log-exp0.4
rmApplied *-un-lft-identity0.4
Applied *-un-lft-identity0.4
Applied difference-of-squares0.4
Applied times-frac0.5
Applied exp-prod0.5
Applied log-pow0.5
rmApplied associate-*l/0.4
Simplified0.3
Final simplification0.3
herbie shell --seed 2019102
(FPCore (x)
:name "Trigonometry B"
(/ (- 1 (* (tan x) (tan x))) (+ 1 (* (tan x) (tan x)))))