?

Average Error: 36.6 → 0.3
Time: 24.7s
Precision: binary64
Cost: 235080

?

\[\tan \left(x + \varepsilon\right) - \tan x \]
\[\begin{array}{l} t_0 := {\cos x}^{3}\\ t_1 := {\sin x}^{3}\\ t_2 := \tan x + \tan \varepsilon\\ t_3 := \frac{{\sin x}^{4}}{{\cos x}^{4}}\\ t_4 := {\cos x}^{2}\\ t_5 := \mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)\\ t_6 := -\tan x\\ t_7 := {\sin x}^{2}\\ t_8 := \frac{-0.3333333333333333}{\frac{t_4}{t_7}}\\ \mathbf{if}\;\varepsilon \leq -0.046:\\ \;\;\;\;\mathsf{fma}\left(t_2, \frac{-1}{t_5}, t_6\right)\\ \mathbf{elif}\;\varepsilon \leq 0.000235:\\ \;\;\;\;\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \left(\left(\frac{\varepsilon}{t_4} \cdot t_7 + \left(\frac{\varepsilon \cdot \varepsilon}{\frac{t_0}{t_1}} + {\varepsilon}^{3} \cdot \left(t_3 - t_8\right)\right)\right) - \mathsf{fma}\left(-0.3333333333333333, \frac{t_1}{t_0}, \left(t_8 - t_3\right) \cdot \frac{\sin x}{\cos x}\right) \cdot {\varepsilon}^{4}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(t_2, \frac{-1}{\log \left(e^{t_5}\right)}, t_6\right)\\ \end{array} \]
(FPCore (x eps) :precision binary64 (- (tan (+ x eps)) (tan x)))
(FPCore (x eps)
 :precision binary64
 (let* ((t_0 (pow (cos x) 3.0))
        (t_1 (pow (sin x) 3.0))
        (t_2 (+ (tan x) (tan eps)))
        (t_3 (/ (pow (sin x) 4.0) (pow (cos x) 4.0)))
        (t_4 (pow (cos x) 2.0))
        (t_5 (fma (tan x) (tan eps) -1.0))
        (t_6 (- (tan x)))
        (t_7 (pow (sin x) 2.0))
        (t_8 (/ -0.3333333333333333 (/ t_4 t_7))))
   (if (<= eps -0.046)
     (fma t_2 (/ -1.0 t_5) t_6)
     (if (<= eps 0.000235)
       (+
        (/ (tan eps) (- 1.0 (* (tan x) (tan eps))))
        (-
         (+
          (* (/ eps t_4) t_7)
          (+ (/ (* eps eps) (/ t_0 t_1)) (* (pow eps 3.0) (- t_3 t_8))))
         (*
          (fma
           -0.3333333333333333
           (/ t_1 t_0)
           (* (- t_8 t_3) (/ (sin x) (cos x))))
          (pow eps 4.0))))
       (fma t_2 (/ -1.0 (log (exp t_5))) t_6)))))
double code(double x, double eps) {
	return tan((x + eps)) - tan(x);
}
double code(double x, double eps) {
	double t_0 = pow(cos(x), 3.0);
	double t_1 = pow(sin(x), 3.0);
	double t_2 = tan(x) + tan(eps);
	double t_3 = pow(sin(x), 4.0) / pow(cos(x), 4.0);
	double t_4 = pow(cos(x), 2.0);
	double t_5 = fma(tan(x), tan(eps), -1.0);
	double t_6 = -tan(x);
	double t_7 = pow(sin(x), 2.0);
	double t_8 = -0.3333333333333333 / (t_4 / t_7);
	double tmp;
	if (eps <= -0.046) {
		tmp = fma(t_2, (-1.0 / t_5), t_6);
	} else if (eps <= 0.000235) {
		tmp = (tan(eps) / (1.0 - (tan(x) * tan(eps)))) + ((((eps / t_4) * t_7) + (((eps * eps) / (t_0 / t_1)) + (pow(eps, 3.0) * (t_3 - t_8)))) - (fma(-0.3333333333333333, (t_1 / t_0), ((t_8 - t_3) * (sin(x) / cos(x)))) * pow(eps, 4.0)));
	} else {
		tmp = fma(t_2, (-1.0 / log(exp(t_5))), t_6);
	}
	return tmp;
}
function code(x, eps)
	return Float64(tan(Float64(x + eps)) - tan(x))
end
function code(x, eps)
	t_0 = cos(x) ^ 3.0
	t_1 = sin(x) ^ 3.0
	t_2 = Float64(tan(x) + tan(eps))
	t_3 = Float64((sin(x) ^ 4.0) / (cos(x) ^ 4.0))
	t_4 = cos(x) ^ 2.0
	t_5 = fma(tan(x), tan(eps), -1.0)
	t_6 = Float64(-tan(x))
	t_7 = sin(x) ^ 2.0
	t_8 = Float64(-0.3333333333333333 / Float64(t_4 / t_7))
	tmp = 0.0
	if (eps <= -0.046)
		tmp = fma(t_2, Float64(-1.0 / t_5), t_6);
	elseif (eps <= 0.000235)
		tmp = Float64(Float64(tan(eps) / Float64(1.0 - Float64(tan(x) * tan(eps)))) + Float64(Float64(Float64(Float64(eps / t_4) * t_7) + Float64(Float64(Float64(eps * eps) / Float64(t_0 / t_1)) + Float64((eps ^ 3.0) * Float64(t_3 - t_8)))) - Float64(fma(-0.3333333333333333, Float64(t_1 / t_0), Float64(Float64(t_8 - t_3) * Float64(sin(x) / cos(x)))) * (eps ^ 4.0))));
	else
		tmp = fma(t_2, Float64(-1.0 / log(exp(t_5))), t_6);
	end
	return tmp
end
code[x_, eps_] := N[(N[Tan[N[(x + eps), $MachinePrecision]], $MachinePrecision] - N[Tan[x], $MachinePrecision]), $MachinePrecision]
code[x_, eps_] := Block[{t$95$0 = N[Power[N[Cos[x], $MachinePrecision], 3.0], $MachinePrecision]}, Block[{t$95$1 = N[Power[N[Sin[x], $MachinePrecision], 3.0], $MachinePrecision]}, Block[{t$95$2 = N[(N[Tan[x], $MachinePrecision] + N[Tan[eps], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(N[Power[N[Sin[x], $MachinePrecision], 4.0], $MachinePrecision] / N[Power[N[Cos[x], $MachinePrecision], 4.0], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$4 = N[Power[N[Cos[x], $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$5 = N[(N[Tan[x], $MachinePrecision] * N[Tan[eps], $MachinePrecision] + -1.0), $MachinePrecision]}, Block[{t$95$6 = (-N[Tan[x], $MachinePrecision])}, Block[{t$95$7 = N[Power[N[Sin[x], $MachinePrecision], 2.0], $MachinePrecision]}, Block[{t$95$8 = N[(-0.3333333333333333 / N[(t$95$4 / t$95$7), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[eps, -0.046], N[(t$95$2 * N[(-1.0 / t$95$5), $MachinePrecision] + t$95$6), $MachinePrecision], If[LessEqual[eps, 0.000235], N[(N[(N[Tan[eps], $MachinePrecision] / N[(1.0 - N[(N[Tan[x], $MachinePrecision] * N[Tan[eps], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(N[(eps / t$95$4), $MachinePrecision] * t$95$7), $MachinePrecision] + N[(N[(N[(eps * eps), $MachinePrecision] / N[(t$95$0 / t$95$1), $MachinePrecision]), $MachinePrecision] + N[(N[Power[eps, 3.0], $MachinePrecision] * N[(t$95$3 - t$95$8), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] - N[(N[(-0.3333333333333333 * N[(t$95$1 / t$95$0), $MachinePrecision] + N[(N[(t$95$8 - t$95$3), $MachinePrecision] * N[(N[Sin[x], $MachinePrecision] / N[Cos[x], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Power[eps, 4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(t$95$2 * N[(-1.0 / N[Log[N[Exp[t$95$5], $MachinePrecision]], $MachinePrecision]), $MachinePrecision] + t$95$6), $MachinePrecision]]]]]]]]]]]]
\tan \left(x + \varepsilon\right) - \tan x
\begin{array}{l}
t_0 := {\cos x}^{3}\\
t_1 := {\sin x}^{3}\\
t_2 := \tan x + \tan \varepsilon\\
t_3 := \frac{{\sin x}^{4}}{{\cos x}^{4}}\\
t_4 := {\cos x}^{2}\\
t_5 := \mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)\\
t_6 := -\tan x\\
t_7 := {\sin x}^{2}\\
t_8 := \frac{-0.3333333333333333}{\frac{t_4}{t_7}}\\
\mathbf{if}\;\varepsilon \leq -0.046:\\
\;\;\;\;\mathsf{fma}\left(t_2, \frac{-1}{t_5}, t_6\right)\\

\mathbf{elif}\;\varepsilon \leq 0.000235:\\
\;\;\;\;\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \left(\left(\frac{\varepsilon}{t_4} \cdot t_7 + \left(\frac{\varepsilon \cdot \varepsilon}{\frac{t_0}{t_1}} + {\varepsilon}^{3} \cdot \left(t_3 - t_8\right)\right)\right) - \mathsf{fma}\left(-0.3333333333333333, \frac{t_1}{t_0}, \left(t_8 - t_3\right) \cdot \frac{\sin x}{\cos x}\right) \cdot {\varepsilon}^{4}\right)\\

\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(t_2, \frac{-1}{\log \left(e^{t_5}\right)}, t_6\right)\\


\end{array}

Error?

Target

Original36.6
Target15.4
Herbie0.3
\[\frac{\sin \varepsilon}{\cos x \cdot \cos \left(x + \varepsilon\right)} \]

Derivation?

  1. Split input into 3 regimes
  2. if eps < -0.045999999999999999

    1. Initial program 29.1

      \[\tan \left(x + \varepsilon\right) - \tan x \]
    2. Applied egg-rr0.3

      \[\leadsto \color{blue}{\left(\tan x + \tan \varepsilon\right) \cdot \frac{1}{1 - \tan x \cdot \tan \varepsilon}} - \tan x \]
    3. Simplified0.3

      \[\leadsto \color{blue}{\frac{\tan x + \tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon}} - \tan x \]
      Proof

      [Start]0.3

      \[ \left(\tan x + \tan \varepsilon\right) \cdot \frac{1}{1 - \tan x \cdot \tan \varepsilon} - \tan x \]

      *-commutative [<=]0.3

      \[ \color{blue}{\frac{1}{1 - \tan x \cdot \tan \varepsilon} \cdot \left(\tan x + \tan \varepsilon\right)} - \tan x \]

      associate-*l/ [=>]0.3

      \[ \color{blue}{\frac{1 \cdot \left(\tan x + \tan \varepsilon\right)}{1 - \tan x \cdot \tan \varepsilon}} - \tan x \]

      *-lft-identity [=>]0.3

      \[ \frac{\color{blue}{\tan x + \tan \varepsilon}}{1 - \tan x \cdot \tan \varepsilon} - \tan x \]
    4. Applied egg-rr0.3

      \[\leadsto \color{blue}{\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{-1 + \tan x \cdot \tan \varepsilon}, -\tan x\right)} \]
    5. Simplified0.3

      \[\leadsto \color{blue}{\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}, -\tan x\right)} \]
      Proof

      [Start]0.3

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{-1 + \tan x \cdot \tan \varepsilon}, -\tan x\right) \]

      +-commutative [=>]0.3

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\color{blue}{\tan x \cdot \tan \varepsilon + -1}}, -\tan x\right) \]

      metadata-eval [<=]0.3

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\tan x \cdot \tan \varepsilon + \color{blue}{\left(-1\right)}}, -\tan x\right) \]

      sub-neg [<=]0.3

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\color{blue}{\tan x \cdot \tan \varepsilon - 1}}, -\tan x\right) \]

      fma-neg [=>]0.3

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\color{blue}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}}, -\tan x\right) \]

      metadata-eval [=>]0.3

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, \color{blue}{-1}\right)}, -\tan x\right) \]

    if -0.045999999999999999 < eps < 2.34999999999999993e-4

    1. Initial program 44.1

      \[\tan \left(x + \varepsilon\right) - \tan x \]
    2. Applied egg-rr43.1

      \[\leadsto \color{blue}{\frac{1}{1 - \tan x \cdot \tan \varepsilon} \cdot \left(\tan x + \tan \varepsilon\right)} - \tan x \]
    3. Applied egg-rr25.2

      \[\leadsto \color{blue}{\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \left(\frac{\tan x}{1 - \tan x \cdot \tan \varepsilon} - \tan x\right)} \]
    4. Taylor expanded in eps around 0 0.3

      \[\leadsto \frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \color{blue}{\left(-1 \cdot \left(\left(-0.3333333333333333 \cdot \frac{{\sin x}^{3}}{{\cos x}^{3}} + \frac{\sin x \cdot \left(-1 \cdot \frac{{\sin x}^{4}}{{\cos x}^{4}} + -0.3333333333333333 \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\right)}{\cos x}\right) \cdot {\varepsilon}^{4}\right) + \left(\frac{\varepsilon \cdot {\sin x}^{2}}{{\cos x}^{2}} + \left(\frac{{\varepsilon}^{2} \cdot {\sin x}^{3}}{{\cos x}^{3}} + -1 \cdot \left({\varepsilon}^{3} \cdot \left(-1 \cdot \frac{{\sin x}^{4}}{{\cos x}^{4}} + -0.3333333333333333 \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\right)\right)\right)\right)\right)} \]
    5. Simplified0.3

      \[\leadsto \frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \color{blue}{\left(\left(\frac{\varepsilon}{{\cos x}^{2}} \cdot {\sin x}^{2} + \left(\frac{\varepsilon \cdot \varepsilon}{\frac{{\cos x}^{3}}{{\sin x}^{3}}} - {\varepsilon}^{3} \cdot \left(\frac{-0.3333333333333333}{\frac{{\cos x}^{2}}{{\sin x}^{2}}} - \frac{{\sin x}^{4}}{{\cos x}^{4}}\right)\right)\right) - \mathsf{fma}\left(-0.3333333333333333, \frac{{\sin x}^{3}}{{\cos x}^{3}}, \frac{\sin x}{\cos x} \cdot \left(\frac{-0.3333333333333333}{\frac{{\cos x}^{2}}{{\sin x}^{2}}} - \frac{{\sin x}^{4}}{{\cos x}^{4}}\right)\right) \cdot {\varepsilon}^{4}\right)} \]
      Proof

      [Start]0.3

      \[ \frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \left(-1 \cdot \left(\left(-0.3333333333333333 \cdot \frac{{\sin x}^{3}}{{\cos x}^{3}} + \frac{\sin x \cdot \left(-1 \cdot \frac{{\sin x}^{4}}{{\cos x}^{4}} + -0.3333333333333333 \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\right)}{\cos x}\right) \cdot {\varepsilon}^{4}\right) + \left(\frac{\varepsilon \cdot {\sin x}^{2}}{{\cos x}^{2}} + \left(\frac{{\varepsilon}^{2} \cdot {\sin x}^{3}}{{\cos x}^{3}} + -1 \cdot \left({\varepsilon}^{3} \cdot \left(-1 \cdot \frac{{\sin x}^{4}}{{\cos x}^{4}} + -0.3333333333333333 \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\right)\right)\right)\right)\right) \]

      +-commutative [=>]0.3

      \[ \frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \color{blue}{\left(\left(\frac{\varepsilon \cdot {\sin x}^{2}}{{\cos x}^{2}} + \left(\frac{{\varepsilon}^{2} \cdot {\sin x}^{3}}{{\cos x}^{3}} + -1 \cdot \left({\varepsilon}^{3} \cdot \left(-1 \cdot \frac{{\sin x}^{4}}{{\cos x}^{4}} + -0.3333333333333333 \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\right)\right)\right)\right) + -1 \cdot \left(\left(-0.3333333333333333 \cdot \frac{{\sin x}^{3}}{{\cos x}^{3}} + \frac{\sin x \cdot \left(-1 \cdot \frac{{\sin x}^{4}}{{\cos x}^{4}} + -0.3333333333333333 \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\right)}{\cos x}\right) \cdot {\varepsilon}^{4}\right)\right)} \]

    if 2.34999999999999993e-4 < eps

    1. Initial program 29.8

      \[\tan \left(x + \varepsilon\right) - \tan x \]
    2. Applied egg-rr0.4

      \[\leadsto \color{blue}{\left(\tan x + \tan \varepsilon\right) \cdot \frac{1}{1 - \tan x \cdot \tan \varepsilon}} - \tan x \]
    3. Simplified0.4

      \[\leadsto \color{blue}{\frac{\tan x + \tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon}} - \tan x \]
      Proof

      [Start]0.4

      \[ \left(\tan x + \tan \varepsilon\right) \cdot \frac{1}{1 - \tan x \cdot \tan \varepsilon} - \tan x \]

      *-commutative [<=]0.4

      \[ \color{blue}{\frac{1}{1 - \tan x \cdot \tan \varepsilon} \cdot \left(\tan x + \tan \varepsilon\right)} - \tan x \]

      associate-*l/ [=>]0.4

      \[ \color{blue}{\frac{1 \cdot \left(\tan x + \tan \varepsilon\right)}{1 - \tan x \cdot \tan \varepsilon}} - \tan x \]

      *-lft-identity [=>]0.4

      \[ \frac{\color{blue}{\tan x + \tan \varepsilon}}{1 - \tan x \cdot \tan \varepsilon} - \tan x \]
    4. Applied egg-rr0.4

      \[\leadsto \color{blue}{\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{-1 + \tan x \cdot \tan \varepsilon}, -\tan x\right)} \]
    5. Simplified0.4

      \[\leadsto \color{blue}{\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}, -\tan x\right)} \]
      Proof

      [Start]0.4

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{-1 + \tan x \cdot \tan \varepsilon}, -\tan x\right) \]

      +-commutative [=>]0.4

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\color{blue}{\tan x \cdot \tan \varepsilon + -1}}, -\tan x\right) \]

      metadata-eval [<=]0.4

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\tan x \cdot \tan \varepsilon + \color{blue}{\left(-1\right)}}, -\tan x\right) \]

      sub-neg [<=]0.4

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\color{blue}{\tan x \cdot \tan \varepsilon - 1}}, -\tan x\right) \]

      fma-neg [=>]0.4

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\color{blue}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}}, -\tan x\right) \]

      metadata-eval [=>]0.4

      \[ \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, \color{blue}{-1}\right)}, -\tan x\right) \]
    6. Applied egg-rr0.5

      \[\leadsto \mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\color{blue}{\log \left(e^{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}\right)}}, -\tan x\right) \]
  3. Recombined 3 regimes into one program.
  4. Final simplification0.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;\varepsilon \leq -0.046:\\ \;\;\;\;\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}, -\tan x\right)\\ \mathbf{elif}\;\varepsilon \leq 0.000235:\\ \;\;\;\;\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \left(\left(\frac{\varepsilon}{{\cos x}^{2}} \cdot {\sin x}^{2} + \left(\frac{\varepsilon \cdot \varepsilon}{\frac{{\cos x}^{3}}{{\sin x}^{3}}} + {\varepsilon}^{3} \cdot \left(\frac{{\sin x}^{4}}{{\cos x}^{4}} - \frac{-0.3333333333333333}{\frac{{\cos x}^{2}}{{\sin x}^{2}}}\right)\right)\right) - \mathsf{fma}\left(-0.3333333333333333, \frac{{\sin x}^{3}}{{\cos x}^{3}}, \left(\frac{-0.3333333333333333}{\frac{{\cos x}^{2}}{{\sin x}^{2}}} - \frac{{\sin x}^{4}}{{\cos x}^{4}}\right) \cdot \frac{\sin x}{\cos x}\right) \cdot {\varepsilon}^{4}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\log \left(e^{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}\right)}, -\tan x\right)\\ \end{array} \]

Alternatives

Alternative 1
Error0.3
Cost130952
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ t_1 := {\cos x}^{2}\\ t_2 := -\tan x\\ t_3 := \mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)\\ t_4 := {\sin x}^{2}\\ \mathbf{if}\;\varepsilon \leq -5.3 \cdot 10^{-5}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{t_3}, t_2\right)\\ \mathbf{elif}\;\varepsilon \leq 5.3 \cdot 10^{-5}:\\ \;\;\;\;\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \left(\frac{\varepsilon}{t_1} \cdot t_4 + \left(\frac{\varepsilon \cdot \varepsilon}{\frac{{\cos x}^{3}}{{\sin x}^{3}}} + {\varepsilon}^{3} \cdot \left(\frac{{\sin x}^{4}}{{\cos x}^{4}} - \frac{-0.3333333333333333}{\frac{t_1}{t_4}}\right)\right)\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{\log \left(e^{t_3}\right)}, t_2\right)\\ \end{array} \]
Alternative 2
Error0.3
Cost85448
\[\begin{array}{l} t_0 := 1 - \tan x \cdot \tan \varepsilon\\ t_1 := \frac{\tan \varepsilon}{t_0}\\ t_2 := \frac{\tan x}{t_0}\\ \mathbf{if}\;\varepsilon \leq -1.22 \cdot 10^{-5}:\\ \;\;\;\;\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}, -\tan x\right)\\ \mathbf{elif}\;\varepsilon \leq 7.6 \cdot 10^{-7}:\\ \;\;\;\;t_1 + \left(\frac{\varepsilon \cdot \varepsilon}{\frac{{\cos x}^{3}}{{\sin x}^{3}}} + \frac{\varepsilon}{\frac{{\cos x}^{2}}{{\sin x}^{2}}}\right)\\ \mathbf{else}:\\ \;\;\;\;t_1 + \frac{1}{\tan x + t_2} \cdot \left({t_2}^{2} - {\tan x}^{2}\right)\\ \end{array} \]
Alternative 3
Error0.4
Cost72264
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ t_1 := \mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)\\ t_2 := -\tan x\\ \mathbf{if}\;\varepsilon \leq -1.22 \cdot 10^{-5}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{t_1}, t_2\right)\\ \mathbf{elif}\;\varepsilon \leq 7.6 \cdot 10^{-7}:\\ \;\;\;\;\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \left(\frac{\varepsilon \cdot \varepsilon}{\frac{{\cos x}^{3}}{{\sin x}^{3}}} + \frac{\varepsilon}{\frac{{\cos x}^{2}}{{\sin x}^{2}}}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{\log \left(e^{t_1}\right)}, t_2\right)\\ \end{array} \]
Alternative 4
Error0.4
Cost65736
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ t_1 := \mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)\\ t_2 := -\tan x\\ \mathbf{if}\;\varepsilon \leq -3.7 \cdot 10^{-7}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{t_1}, t_2\right)\\ \mathbf{elif}\;\varepsilon \leq 2.6 \cdot 10^{-7}:\\ \;\;\;\;\varepsilon \cdot \left(1 + \frac{{\sin x}^{2}}{{\cos x}^{2}}\right) + \left(\varepsilon \cdot \varepsilon\right) \cdot \left(\frac{{\sin x}^{3}}{{\cos x}^{3}} + \frac{\sin x}{\cos x}\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{\log \left(e^{t_1}\right)}, t_2\right)\\ \end{array} \]
Alternative 5
Error0.5
Cost58504
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ t_1 := \mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)\\ t_2 := -\tan x\\ \mathbf{if}\;\varepsilon \leq -9.5 \cdot 10^{-9}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{t_1}, t_2\right)\\ \mathbf{elif}\;\varepsilon \leq 5.6 \cdot 10^{-9}:\\ \;\;\;\;\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \frac{\varepsilon}{{\cos x}^{2}} \cdot {\sin x}^{2}\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(t_0, \frac{-1}{\log \left(e^{t_1}\right)}, t_2\right)\\ \end{array} \]
Alternative 6
Error0.4
Cost46025
\[\begin{array}{l} \mathbf{if}\;\varepsilon \leq -9.5 \cdot 10^{-9} \lor \neg \left(\varepsilon \leq 3.7 \cdot 10^{-9}\right):\\ \;\;\;\;\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}, -\tan x\right)\\ \mathbf{else}:\\ \;\;\;\;\frac{\tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} + \frac{\varepsilon}{{\cos x}^{2}} \cdot {\sin x}^{2}\\ \end{array} \]
Alternative 7
Error0.4
Cost45705
\[\begin{array}{l} \mathbf{if}\;\varepsilon \leq -2.1 \cdot 10^{-9} \lor \neg \left(\varepsilon \leq 3.2 \cdot 10^{-9}\right):\\ \;\;\;\;\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}, -\tan x\right)\\ \mathbf{else}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \end{array} \]
Alternative 8
Error0.4
Cost39433
\[\begin{array}{l} \mathbf{if}\;\varepsilon \leq -2 \cdot 10^{-9} \lor \neg \left(\varepsilon \leq 2.4 \cdot 10^{-9}\right):\\ \;\;\;\;\mathsf{fma}\left(\tan x + \tan \varepsilon, \frac{-1}{-1 + \tan x \cdot \tan \varepsilon}, -\tan x\right)\\ \mathbf{else}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \end{array} \]
Alternative 9
Error0.4
Cost39432
\[\begin{array}{l} t_0 := -\tan x\\ t_1 := \tan x + \tan \varepsilon\\ \mathbf{if}\;\varepsilon \leq -1.75 \cdot 10^{-9}:\\ \;\;\;\;\mathsf{fma}\left(\frac{1}{1 - \frac{\tan x}{\frac{1}{\tan \varepsilon}}}, t_1, t_0\right)\\ \mathbf{elif}\;\varepsilon \leq 3.8 \cdot 10^{-9}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\mathsf{fma}\left(t_1, \frac{-1}{-1 + \tan x \cdot \tan \varepsilon}, t_0\right)\\ \end{array} \]
Alternative 10
Error0.4
Cost39304
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ \mathbf{if}\;\varepsilon \leq -2.1 \cdot 10^{-9}:\\ \;\;\;\;t_0 \cdot \frac{1}{1 - \tan x \cdot \tan \varepsilon} - \tan x\\ \mathbf{elif}\;\varepsilon \leq 2.9 \cdot 10^{-9}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\left(-\tan x\right) - \frac{t_0}{\mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)}\\ \end{array} \]
Alternative 11
Error0.4
Cost39304
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ t_1 := \mathsf{fma}\left(\tan x, \tan \varepsilon, -1\right)\\ \mathbf{if}\;\varepsilon \leq -1.9 \cdot 10^{-9}:\\ \;\;\;\;t_0 \cdot \frac{-1}{t_1} - \tan x\\ \mathbf{elif}\;\varepsilon \leq 3.5 \cdot 10^{-9}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\left(-\tan x\right) - \frac{t_0}{t_1}\\ \end{array} \]
Alternative 12
Error0.4
Cost33096
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ \mathbf{if}\;\varepsilon \leq -2.1 \cdot 10^{-9}:\\ \;\;\;\;t_0 \cdot \frac{1}{1 - \tan x \cdot \tan \varepsilon} - \tan x\\ \mathbf{elif}\;\varepsilon \leq 4.2 \cdot 10^{-9}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\frac{t_0}{1 - \frac{\tan x}{\frac{1}{\tan \varepsilon}}} - \tan x\\ \end{array} \]
Alternative 13
Error0.4
Cost32969
\[\begin{array}{l} \mathbf{if}\;\varepsilon \leq -2 \cdot 10^{-9} \lor \neg \left(\varepsilon \leq 2.6 \cdot 10^{-9}\right):\\ \;\;\;\;\frac{\tan x + \tan \varepsilon}{1 - \tan x \cdot \tan \varepsilon} - \tan x\\ \mathbf{else}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \end{array} \]
Alternative 14
Error0.4
Cost32968
\[\begin{array}{l} t_0 := \tan x + \tan \varepsilon\\ t_1 := 1 - \tan x \cdot \tan \varepsilon\\ \mathbf{if}\;\varepsilon \leq -2.1 \cdot 10^{-9}:\\ \;\;\;\;t_0 \cdot \frac{1}{t_1} - \tan x\\ \mathbf{elif}\;\varepsilon \leq 4.2 \cdot 10^{-9}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\frac{t_0}{t_1} - \tan x\\ \end{array} \]
Alternative 15
Error15.3
Cost26440
\[\begin{array}{l} \mathbf{if}\;\varepsilon \leq -4.5 \cdot 10^{-6}:\\ \;\;\;\;\frac{\sin \varepsilon}{\cos \varepsilon} - \tan x\\ \mathbf{elif}\;\varepsilon \leq 7.5 \cdot 10^{-5}:\\ \;\;\;\;\varepsilon \cdot \left(1 + \frac{{\sin x}^{2}}{{\cos x}^{2}}\right)\\ \mathbf{else}:\\ \;\;\;\;\tan \left(\varepsilon + x\right) + \sin x \cdot \frac{-1}{\cos x}\\ \end{array} \]
Alternative 16
Error15.2
Cost26440
\[\begin{array}{l} \mathbf{if}\;\varepsilon \leq -1.2 \cdot 10^{-5}:\\ \;\;\;\;\frac{\sin \varepsilon}{\cos \varepsilon} - \tan x\\ \mathbf{elif}\;\varepsilon \leq 5 \cdot 10^{-5}:\\ \;\;\;\;\varepsilon + \varepsilon \cdot \frac{{\sin x}^{2}}{{\cos x}^{2}}\\ \mathbf{else}:\\ \;\;\;\;\tan \left(\varepsilon + x\right) + \sin x \cdot \frac{-1}{\cos x}\\ \end{array} \]
Alternative 17
Error26.9
Cost6464
\[\tan \varepsilon \]
Alternative 18
Error61.3
Cost64
\[0 \]
Alternative 19
Error44.5
Cost64
\[\varepsilon \]

Error

Reproduce?

herbie shell --seed 2023088 
(FPCore (x eps)
  :name "2tan (problem 3.3.2)"
  :precision binary64

  :herbie-target
  (/ (sin eps) (* (cos x) (cos (+ x eps))))

  (- (tan (+ x eps)) (tan x)))