Average Error: 31.2 → 0.0
Time: 55.3s
Precision: 64
\[\frac{x - \sin x}{x - \tan x}\]
\[\begin{array}{l} \mathbf{if}\;x \le -0.02651353729569189:\\ \;\;\;\;\frac{x - \sin x}{x - \tan x}\\ \mathbf{elif}\;x \le 0.02912476454801862:\\ \;\;\;\;\frac{-1}{2} - \left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{27}{2800} - \frac{9}{40}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x - \sin x}{x - \tan x}\\ \end{array}\]
\frac{x - \sin x}{x - \tan x}
\begin{array}{l}
\mathbf{if}\;x \le -0.02651353729569189:\\
\;\;\;\;\frac{x - \sin x}{x - \tan x}\\

\mathbf{elif}\;x \le 0.02912476454801862:\\
\;\;\;\;\frac{-1}{2} - \left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{27}{2800} - \frac{9}{40}\right)\\

\mathbf{else}:\\
\;\;\;\;\frac{x - \sin x}{x - \tan x}\\

\end{array}
double f(double x) {
        double r1371926 = x;
        double r1371927 = sin(r1371926);
        double r1371928 = r1371926 - r1371927;
        double r1371929 = tan(r1371926);
        double r1371930 = r1371926 - r1371929;
        double r1371931 = r1371928 / r1371930;
        return r1371931;
}

double f(double x) {
        double r1371932 = x;
        double r1371933 = -0.02651353729569189;
        bool r1371934 = r1371932 <= r1371933;
        double r1371935 = sin(r1371932);
        double r1371936 = r1371932 - r1371935;
        double r1371937 = tan(r1371932);
        double r1371938 = r1371932 - r1371937;
        double r1371939 = r1371936 / r1371938;
        double r1371940 = 0.02912476454801862;
        bool r1371941 = r1371932 <= r1371940;
        double r1371942 = -0.5;
        double r1371943 = r1371932 * r1371932;
        double r1371944 = 0.009642857142857142;
        double r1371945 = r1371943 * r1371944;
        double r1371946 = 0.225;
        double r1371947 = r1371945 - r1371946;
        double r1371948 = r1371943 * r1371947;
        double r1371949 = r1371942 - r1371948;
        double r1371950 = r1371941 ? r1371949 : r1371939;
        double r1371951 = r1371934 ? r1371939 : r1371950;
        return r1371951;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if x < -0.02651353729569189 or 0.02912476454801862 < x

    1. Initial program 0.1

      \[\frac{x - \sin x}{x - \tan x}\]
    2. Taylor expanded around inf 0.1

      \[\leadsto \frac{\color{blue}{x - \sin x}}{x - \tan x}\]

    if -0.02651353729569189 < x < 0.02912476454801862

    1. Initial program 62.8

      \[\frac{x - \sin x}{x - \tan x}\]
    2. Taylor expanded around 0 0.0

      \[\leadsto \color{blue}{\frac{9}{40} \cdot {x}^{2} - \left(\frac{27}{2800} \cdot {x}^{4} + \frac{1}{2}\right)}\]
    3. Simplified0.0

      \[\leadsto \color{blue}{\frac{-1}{2} - \left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{27}{2800} - \frac{9}{40}\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.0

    \[\leadsto \begin{array}{l} \mathbf{if}\;x \le -0.02651353729569189:\\ \;\;\;\;\frac{x - \sin x}{x - \tan x}\\ \mathbf{elif}\;x \le 0.02912476454801862:\\ \;\;\;\;\frac{-1}{2} - \left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \frac{27}{2800} - \frac{9}{40}\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{x - \sin x}{x - \tan x}\\ \end{array}\]

Reproduce

herbie shell --seed 2019124 
(FPCore (x)
  :name "sintan (problem 3.4.5)"
  (/ (- x (sin x)) (- x (tan x))))