\frac{x - \sin x}{x - \tan x}\begin{array}{l}
\mathbf{if}\;x \le -1.566653604556901724365047812170814722776:\\
\;\;\;\;\sqrt{\frac{x - \sin x}{x - \tan x}} \cdot \sqrt{\frac{x - \sin x}{x - \tan x}}\\
\mathbf{elif}\;x \le 2.419818388459178848393094085622578859329:\\
\;\;\;\;\left(\frac{9}{40} \cdot {x}^{2} - \frac{27}{2800} \cdot {x}^{4}\right) - \frac{1}{2}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\sin x}{x \cdot \cos x} + \left(\frac{{\left(\sin x\right)}^{2}}{{x}^{2} \cdot {\left(\cos x\right)}^{2}} + 1\right)\right) - \left(\frac{\sin x}{x} + \frac{{\left(\sin x\right)}^{2}}{{x}^{2} \cdot \cos x}\right)\\
\end{array}double f(double x) {
double r19053 = x;
double r19054 = sin(r19053);
double r19055 = r19053 - r19054;
double r19056 = tan(r19053);
double r19057 = r19053 - r19056;
double r19058 = r19055 / r19057;
return r19058;
}
double f(double x) {
double r19059 = x;
double r19060 = -1.5666536045569017;
bool r19061 = r19059 <= r19060;
double r19062 = sin(r19059);
double r19063 = r19059 - r19062;
double r19064 = tan(r19059);
double r19065 = r19059 - r19064;
double r19066 = r19063 / r19065;
double r19067 = sqrt(r19066);
double r19068 = r19067 * r19067;
double r19069 = 2.419818388459179;
bool r19070 = r19059 <= r19069;
double r19071 = 0.225;
double r19072 = 2.0;
double r19073 = pow(r19059, r19072);
double r19074 = r19071 * r19073;
double r19075 = 0.009642857142857142;
double r19076 = 4.0;
double r19077 = pow(r19059, r19076);
double r19078 = r19075 * r19077;
double r19079 = r19074 - r19078;
double r19080 = 0.5;
double r19081 = r19079 - r19080;
double r19082 = cos(r19059);
double r19083 = r19059 * r19082;
double r19084 = r19062 / r19083;
double r19085 = pow(r19062, r19072);
double r19086 = pow(r19082, r19072);
double r19087 = r19073 * r19086;
double r19088 = r19085 / r19087;
double r19089 = 1.0;
double r19090 = r19088 + r19089;
double r19091 = r19084 + r19090;
double r19092 = r19062 / r19059;
double r19093 = r19073 * r19082;
double r19094 = r19085 / r19093;
double r19095 = r19092 + r19094;
double r19096 = r19091 - r19095;
double r19097 = r19070 ? r19081 : r19096;
double r19098 = r19061 ? r19068 : r19097;
return r19098;
}



Bits error versus x
Results
if x < -1.5666536045569017Initial program 0.0
rmApplied add-sqr-sqrt0.0
if -1.5666536045569017 < x < 2.419818388459179Initial program 62.7
Taylor expanded around 0 0.2
rmApplied associate--r+0.2
if 2.419818388459179 < x Initial program 0.0
Taylor expanded around inf 0.4
Final simplification0.2
herbie shell --seed 2019318
(FPCore (x)
:name "sintan (problem 3.4.5)"
:precision binary64
(/ (- x (sin x)) (- x (tan x))))