\frac{x - \sin x}{x - \tan x}\begin{array}{l}
\mathbf{if}\;x \le -2.475250416396811647956610613618977367878:\\
\;\;\;\;\mathsf{fma}\left(\frac{\sin x}{\cos x \cdot \cos x}, \frac{\frac{\sin x}{x}}{x}, \left(\frac{\frac{\sin x}{x}}{\cos x} - \mathsf{fma}\left(\frac{\frac{\sin x}{x}}{x}, \frac{\sin x}{\cos x}, \frac{\sin x}{x}\right)\right) + 1\right)\\
\mathbf{elif}\;x \le 2.408727669093524426102703728247433900833:\\
\;\;\;\;\frac{-1}{2} + \mathsf{fma}\left(x \cdot x, \frac{9}{40}, \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \frac{-27}{2800}\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\frac{\sin x}{\cos x \cdot \cos x}, \frac{\frac{\sin x}{x}}{x}, \left(\frac{\frac{\sin x}{x}}{\cos x} - \mathsf{fma}\left(\frac{\frac{\sin x}{x}}{x}, \frac{\sin x}{\cos x}, \frac{\sin x}{x}\right)\right) + 1\right)\\
\end{array}double f(double x) {
double r715725 = x;
double r715726 = sin(r715725);
double r715727 = r715725 - r715726;
double r715728 = tan(r715725);
double r715729 = r715725 - r715728;
double r715730 = r715727 / r715729;
return r715730;
}
double f(double x) {
double r715731 = x;
double r715732 = -2.4752504163968116;
bool r715733 = r715731 <= r715732;
double r715734 = sin(r715731);
double r715735 = cos(r715731);
double r715736 = r715735 * r715735;
double r715737 = r715734 / r715736;
double r715738 = r715734 / r715731;
double r715739 = r715738 / r715731;
double r715740 = r715738 / r715735;
double r715741 = r715734 / r715735;
double r715742 = fma(r715739, r715741, r715738);
double r715743 = r715740 - r715742;
double r715744 = 1.0;
double r715745 = r715743 + r715744;
double r715746 = fma(r715737, r715739, r715745);
double r715747 = 2.4087276690935244;
bool r715748 = r715731 <= r715747;
double r715749 = -0.5;
double r715750 = r715731 * r715731;
double r715751 = 0.225;
double r715752 = r715750 * r715750;
double r715753 = -0.009642857142857142;
double r715754 = r715752 * r715753;
double r715755 = fma(r715750, r715751, r715754);
double r715756 = r715749 + r715755;
double r715757 = r715748 ? r715756 : r715746;
double r715758 = r715733 ? r715746 : r715757;
return r715758;
}



Bits error versus x
if x < -2.4752504163968116 or 2.4087276690935244 < x Initial program 0.0
Taylor expanded around inf 0.4
Simplified0.4
if -2.4752504163968116 < x < 2.4087276690935244Initial program 62.8
Taylor expanded around 0 0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019168 +o rules:numerics
(FPCore (x)
:name "sintan (problem 3.4.5)"
(/ (- x (sin x)) (- x (tan x))))