\frac{x - \sin x}{x - \tan x}\begin{array}{l}
\mathbf{if}\;x \le -0.02976690073964273139384140165475400863215:\\
\;\;\;\;\frac{x - \sin x}{x - \frac{\sin x}{\cos x}}\\
\mathbf{elif}\;x \le 2.491803263157965186991305017727427184582:\\
\;\;\;\;{x}^{2} \cdot \left(\frac{9}{40} - {x}^{2} \cdot \frac{27}{2800}\right) - \frac{1}{2}\\
\mathbf{else}:\\
\;\;\;\;\left(\left(1 - \frac{\sin x}{x}\right) + \left(\frac{\frac{\sin x}{\cos x}}{x} + \frac{\frac{{\left(\sin x\right)}^{2}}{x \cdot x}}{{\left(\cos x\right)}^{2}}\right)\right) - \frac{\frac{\frac{{\left(\sin x\right)}^{2}}{\cos x}}{x}}{x}\\
\end{array}double f(double x) {
double r22469 = x;
double r22470 = sin(r22469);
double r22471 = r22469 - r22470;
double r22472 = tan(r22469);
double r22473 = r22469 - r22472;
double r22474 = r22471 / r22473;
return r22474;
}
double f(double x) {
double r22475 = x;
double r22476 = -0.02976690073964273;
bool r22477 = r22475 <= r22476;
double r22478 = sin(r22475);
double r22479 = r22475 - r22478;
double r22480 = cos(r22475);
double r22481 = r22478 / r22480;
double r22482 = r22475 - r22481;
double r22483 = r22479 / r22482;
double r22484 = 2.491803263157965;
bool r22485 = r22475 <= r22484;
double r22486 = 2.0;
double r22487 = pow(r22475, r22486);
double r22488 = 0.225;
double r22489 = 0.009642857142857142;
double r22490 = r22487 * r22489;
double r22491 = r22488 - r22490;
double r22492 = r22487 * r22491;
double r22493 = 0.5;
double r22494 = r22492 - r22493;
double r22495 = 1.0;
double r22496 = r22478 / r22475;
double r22497 = r22495 - r22496;
double r22498 = r22481 / r22475;
double r22499 = pow(r22478, r22486);
double r22500 = r22475 * r22475;
double r22501 = r22499 / r22500;
double r22502 = pow(r22480, r22486);
double r22503 = r22501 / r22502;
double r22504 = r22498 + r22503;
double r22505 = r22497 + r22504;
double r22506 = r22499 / r22480;
double r22507 = r22506 / r22475;
double r22508 = r22507 / r22475;
double r22509 = r22505 - r22508;
double r22510 = r22485 ? r22494 : r22509;
double r22511 = r22477 ? r22483 : r22510;
return r22511;
}



Bits error versus x
Results
if x < -0.02976690073964273Initial program 0.0
Taylor expanded around inf 0.0
if -0.02976690073964273 < x < 2.491803263157965Initial program 63.0
Taylor expanded around 0 0.1
Simplified0.1
if 2.491803263157965 < x Initial program 0.0
Taylor expanded around inf 0.0
Taylor expanded around inf 0.3
Simplified0.3
Final simplification0.1
herbie shell --seed 2019196
(FPCore (x)
:name "sintan (problem 3.4.5)"
(/ (- x (sin x)) (- x (tan x))))