\frac{x - \sin x}{x - \tan x}\begin{array}{l}
\mathbf{if}\;x \le -2.447814972836657609889243758516386151314:\\
\;\;\;\;\left(\frac{\frac{\sin x}{x}}{\cos x} \cdot \frac{\frac{\sin x}{x}}{\cos x} - \left(\frac{\sin x}{x} + \frac{\frac{\sin x}{x} \cdot \frac{\sin x}{x}}{\cos x}\right)\right) + \left(1 + \frac{\frac{\sin x}{x}}{\cos x}\right)\\
\mathbf{elif}\;x \le 2.45325061863942162077023567690048366785:\\
\;\;\;\;x \cdot \left(x \cdot \frac{9}{40}\right) + \left(\frac{-27}{2800} \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) - \frac{1}{2}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\frac{\sin x}{x}}{\cos x} \cdot \frac{\frac{\sin x}{x}}{\cos x} - \left(\frac{\sin x}{x} + \frac{\frac{\sin x}{x} \cdot \frac{\sin x}{x}}{\cos x}\right)\right) + \left(1 + \frac{\frac{\sin x}{x}}{\cos x}\right)\\
\end{array}double f(double x) {
double r827153 = x;
double r827154 = sin(r827153);
double r827155 = r827153 - r827154;
double r827156 = tan(r827153);
double r827157 = r827153 - r827156;
double r827158 = r827155 / r827157;
return r827158;
}
double f(double x) {
double r827159 = x;
double r827160 = -2.4478149728366576;
bool r827161 = r827159 <= r827160;
double r827162 = sin(r827159);
double r827163 = r827162 / r827159;
double r827164 = cos(r827159);
double r827165 = r827163 / r827164;
double r827166 = r827165 * r827165;
double r827167 = r827163 * r827163;
double r827168 = r827167 / r827164;
double r827169 = r827163 + r827168;
double r827170 = r827166 - r827169;
double r827171 = 1.0;
double r827172 = r827171 + r827165;
double r827173 = r827170 + r827172;
double r827174 = 2.4532506186394216;
bool r827175 = r827159 <= r827174;
double r827176 = 0.225;
double r827177 = r827159 * r827176;
double r827178 = r827159 * r827177;
double r827179 = -0.009642857142857142;
double r827180 = r827159 * r827159;
double r827181 = r827180 * r827180;
double r827182 = r827179 * r827181;
double r827183 = 0.5;
double r827184 = r827182 - r827183;
double r827185 = r827178 + r827184;
double r827186 = r827175 ? r827185 : r827173;
double r827187 = r827161 ? r827173 : r827186;
return r827187;
}



Bits error versus x
Results
if x < -2.4478149728366576 or 2.4532506186394216 < x Initial program 0.0
Taylor expanded around inf 0.4
Simplified0.4
if -2.4478149728366576 < x < 2.4532506186394216Initial program 62.8
Taylor expanded around 0 0.2
Simplified0.2
Final simplification0.3
herbie shell --seed 2019200
(FPCore (x)
:name "sintan (problem 3.4.5)"
(/ (- x (sin x)) (- x (tan x))))