Average Error: 39.8 → 0.7
Time: 17.4s
Precision: binary64
Cost: 33218
\[\cos \left(x + \varepsilon\right) - \cos x\]
↓
\[\begin{array}{l}
\mathbf{if}\;\varepsilon \leq -0.028077178329225884:\\
\;\;\;\;\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)\\
\mathbf{elif}\;\varepsilon \leq 0.0013137094133468092:\\
\;\;\;\;-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)\\
\end{array}\]
\cos \left(x + \varepsilon\right) - \cos x
↓
\begin{array}{l}
\mathbf{if}\;\varepsilon \leq -0.028077178329225884:\\
\;\;\;\;\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)\\
\mathbf{elif}\;\varepsilon \leq 0.0013137094133468092:\\
\;\;\;\;-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)\\
\end{array}(FPCore (x eps) :precision binary64 (- (cos (+ x eps)) (cos x)))
↓
(FPCore (x eps)
:precision binary64
(if (<= eps -0.028077178329225884)
(- (* (cos x) (cos eps)) (+ (cos x) (* (sin x) (sin eps))))
(if (<= eps 0.0013137094133468092)
(* -2.0 (* (sin (/ eps 2.0)) (sin (/ (+ x (+ eps x)) 2.0))))
(- (* (cos x) (cos eps)) (+ (cos x) (* (sin x) (sin eps)))))))double code(double x, double eps) {
return cos(x + eps) - cos(x);
}
↓
double code(double x, double eps) {
double tmp;
if (eps <= -0.028077178329225884) {
tmp = (cos(x) * cos(eps)) - (cos(x) + (sin(x) * sin(eps)));
} else if (eps <= 0.0013137094133468092) {
tmp = -2.0 * (sin(eps / 2.0) * sin((x + (eps + x)) / 2.0));
} else {
tmp = (cos(x) * cos(eps)) - (cos(x) + (sin(x) * sin(eps)));
}
return tmp;
}
Try it out
Enter valid numbers for all inputs
Alternatives
| Alternative 1 |
|---|
| Error | 16.1 |
|---|
| Cost | 92480 |
|---|
\[-2 \cdot \left(\left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right) \cdot \left(\sqrt[3]{\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}} \cdot \left(\sqrt[3]{\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}} \cdot \sqrt[3]{\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}}\right)\right)\right)\]
| Alternative 2 |
|---|
| Error | 16.0 |
|---|
| Cost | 86080 |
|---|
\[-2 \cdot \left(\left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right) \cdot \left(\sqrt[3]{\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}} \cdot \sqrt[3]{\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}}\right)\right)\]
| Alternative 3 |
|---|
| Error | 16.0 |
|---|
| Cost | 59968 |
|---|
\[-2 \cdot \left(\sqrt[3]{\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \left(\sqrt[3]{\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right)\]
| Alternative 4 |
|---|
| Error | 39.8 |
|---|
| Cost | 58944 |
|---|
\[\frac{{\cos \left(\varepsilon + x\right)}^{3} - {\cos x}^{3}}{\cos x \cdot \cos x + \cos \left(\varepsilon + x\right) \cdot \left(\cos x + \cos \left(\varepsilon + x\right)\right)}\]
| Alternative 5 |
|---|
| Error | 40.0 |
|---|
| Cost | 58688 |
|---|
\[\sqrt[3]{\cos \left(\varepsilon + x\right) - \cos x} \cdot \left(\sqrt[3]{\cos \left(\varepsilon + x\right) - \cos x} \cdot \sqrt[3]{\cos \left(\varepsilon + x\right) - \cos x}\right)\]
| Alternative 6 |
|---|
| Error | 45.5 |
|---|
| Cost | 52800 |
|---|
\[-2 \cdot \left(\left(\sqrt{\sin \left(\frac{\varepsilon}{2}\right)} \cdot \sqrt{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right) \cdot \left(\sqrt{\sin \left(\frac{\varepsilon}{2}\right)} \cdot \sqrt{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right)\]
| Alternative 7 |
|---|
| Error | 49.2 |
|---|
| Cost | 51904 |
|---|
\[\left(\sqrt{\cos \left(\varepsilon + x\right)} + \sqrt{\cos x}\right) \cdot \left(\sqrt{\cos \left(\varepsilon + x\right)} - \sqrt{\cos x}\right)\]
| Alternative 8 |
|---|
| Error | 15.9 |
|---|
| Cost | 46656 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right)\right)\]
| Alternative 9 |
|---|
| Error | 15.9 |
|---|
| Cost | 46656 |
|---|
\[-2 \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right)\right)\]
| Alternative 10 |
|---|
| Error | 15.9 |
|---|
| Cost | 46528 |
|---|
\[-2 \cdot \left(\left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right) \cdot \sqrt[3]{\sin \left(x + \varepsilon \cdot 0.5\right)}\right)\]
| Alternative 11 |
|---|
| Error | 15.9 |
|---|
| Cost | 46528 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right) \cdot \sqrt[3]{\sin \left(x + \varepsilon \cdot 0.5\right)}\right)\right)\]
| Alternative 12 |
|---|
| Error | 36.2 |
|---|
| Cost | 46272 |
|---|
\[-2 \cdot \left(\left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right) \cdot \sqrt[3]{\sin x}\right)\]
| Alternative 13 |
|---|
| Error | 36.2 |
|---|
| Cost | 46272 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\left(\sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right) \cdot \sqrt[3]{\sin x}\right)\right)\]
| Alternative 14 |
|---|
| Error | 16.0 |
|---|
| Cost | 46144 |
|---|
\[-2 \cdot \left(\left(\sqrt[3]{\sin \left(\frac{\varepsilon}{2}\right)} \cdot \sqrt[3]{\sin \left(\frac{\varepsilon}{2}\right)}\right) \cdot \left(\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right) \cdot \sqrt[3]{\sin \left(\frac{\varepsilon}{2}\right)}\right)\right)\]
| Alternative 15 |
|---|
| Error | 40.1 |
|---|
| Cost | 45632 |
|---|
\[\sqrt[3]{\cos \left(\varepsilon + x\right)} \cdot \left(\sqrt[3]{\cos \left(\varepsilon + x\right)} \cdot \sqrt[3]{\cos \left(\varepsilon + x\right)}\right) - \cos x\]
| Alternative 16 |
|---|
| Error | 48.1 |
|---|
| Cost | 40128 |
|---|
\[\sqrt{-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)} \cdot \sqrt{-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)}\]
| Alternative 17 |
|---|
| Error | 26.0 |
|---|
| Cost | 40000 |
|---|
\[-2 \cdot \left(\sqrt{\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt{\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\]
| Alternative 18 |
|---|
| Error | 39.9 |
|---|
| Cost | 39488 |
|---|
\[\frac{\cos \left(\varepsilon + x\right) \cdot \cos \left(\varepsilon + x\right) - \cos x \cdot \cos x}{\cos x + \cos \left(\varepsilon + x\right)}\]
| Alternative 19 |
|---|
| Error | 39.3 |
|---|
| Cost | 33344 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \left(\sqrt{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)} \cdot \sqrt{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right)\]
| Alternative 20 |
|---|
| Error | 39.2 |
|---|
| Cost | 33088 |
|---|
\[-2 \cdot \left(\sqrt{\sin \left(\frac{\varepsilon}{2}\right)} \cdot \left(\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right) \cdot \sqrt{\sin \left(\frac{\varepsilon}{2}\right)}\right)\right)\]
| Alternative 21 |
|---|
| Error | 24.5 |
|---|
| Cost | 32576 |
|---|
\[\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)\]
| Alternative 22 |
|---|
| Error | 48.9 |
|---|
| Cost | 32576 |
|---|
\[\sqrt{\cos \left(\varepsilon + x\right)} \cdot \sqrt{\cos \left(\varepsilon + x\right)} - \cos x\]
| Alternative 23 |
|---|
| Error | 24.5 |
|---|
| Cost | 32576 |
|---|
\[\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right) - \cos x\]
| Alternative 24 |
|---|
| Error | 41.5 |
|---|
| Cost | 26880 |
|---|
\[\left(\cos \varepsilon \cdot \left(-0.5 \cdot \left(x \cdot x\right) + 1\right) + \sin \varepsilon \cdot \left(0.16666666666666666 \cdot {x}^{3} - x\right)\right) - \cos x\]
| Alternative 25 |
|---|
| Error | 43.5 |
|---|
| Cost | 26496 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{\sqrt[3]{{\left(x + \left(\varepsilon + x\right)\right)}^{3}}}{2}\right)\right)\]
| Alternative 26 |
|---|
| Error | 17.3 |
|---|
| Cost | 26496 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sqrt[3]{{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}^{3}}\right)\]
| Alternative 27 |
|---|
| Error | 39.6 |
|---|
| Cost | 26432 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot e^{\log \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\]
| Alternative 28 |
|---|
| Error | 24.0 |
|---|
| Cost | 26432 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \log \left(e^{\sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)}\right)\right)\]
| Alternative 29 |
|---|
| Error | 27.3 |
|---|
| Cost | 26432 |
|---|
\[-2 \cdot e^{\log \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)}\]
| Alternative 30 |
|---|
| Error | 39.8 |
|---|
| Cost | 25984 |
|---|
\[\sqrt[3]{{\left(\cos \left(\varepsilon + x\right) - \cos x\right)}^{3}}\]
| Alternative 31 |
|---|
| Error | 39.9 |
|---|
| Cost | 25984 |
|---|
\[\sqrt[3]{{\cos \left(\varepsilon + x\right)}^{3}} - \cos x\]
| Alternative 32 |
|---|
| Error | 39.8 |
|---|
| Cost | 25920 |
|---|
\[\log \left(e^{\cos \left(\varepsilon + x\right) - \cos x}\right)\]
| Alternative 33 |
|---|
| Error | 48.9 |
|---|
| Cost | 25920 |
|---|
\[e^{\log \cos \left(\varepsilon + x\right)} - \cos x\]
| Alternative 34 |
|---|
| Error | 39.9 |
|---|
| Cost | 25920 |
|---|
\[\log \left(e^{\cos \left(\varepsilon + x\right)}\right) - \cos x\]
| Alternative 35 |
|---|
| Error | 40.9 |
|---|
| Cost | 19648 |
|---|
\[\left(\cos \varepsilon - x \cdot \sin \varepsilon\right) - \cos x\]
| Alternative 36 |
|---|
| Error | 15.2 |
|---|
| Cost | 13632 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)\]
| Alternative 37 |
|---|
| Error | 31.8 |
|---|
| Cost | 13376 |
|---|
\[\varepsilon \cdot \left(\varepsilon \cdot \left(\cos x \cdot -0.5\right) - \sin x\right)\]
| Alternative 38 |
|---|
| Error | 34.2 |
|---|
| Cost | 13376 |
|---|
\[-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\varepsilon \cdot 0.5\right)\right)\]
| Alternative 39 |
|---|
| Error | 40.6 |
|---|
| Cost | 13248 |
|---|
\[-1 + \left(\cos \varepsilon - x \cdot \sin \varepsilon\right)\]
| Alternative 40 |
|---|
| Error | 34.2 |
|---|
| Cost | 13184 |
|---|
\[-2 \cdot {\sin \left(\varepsilon \cdot 0.5\right)}^{2}\]
| Alternative 41 |
|---|
| Error | 39.8 |
|---|
| Cost | 13120 |
|---|
\[\cos \left(\varepsilon + x\right) - \cos x\]
| Alternative 42 |
|---|
| Error | 39.4 |
|---|
| Cost | 12992 |
|---|
\[\cos \varepsilon - \cos x\]
| Alternative 43 |
|---|
| Error | 37.2 |
|---|
| Cost | 6656 |
|---|
\[-\varepsilon \cdot \sin x\]
| Alternative 44 |
|---|
| Error | 39.5 |
|---|
| Cost | 6592 |
|---|
\[-1 + \cos \varepsilon\]
| Alternative 45 |
|---|
| Error | 61.0 |
|---|
| Cost | 64 |
|---|
\[1\]
| Alternative 46 |
|---|
| Error | 56.0 |
|---|
| Cost | 64 |
|---|
\[0\]
| Alternative 47 |
|---|
| Error | 58.0 |
|---|
| Cost | 64 |
|---|
\[-1\]
Error

Derivation
- Split input into 2 regimes
if eps < -0.028077178329225884 or 0.0013137094133468092 < eps
Initial program 30.3
\[\cos \left(x + \varepsilon\right) - \cos x\]
- Using strategy
rm Applied cos-sum_binary64_12040.8
\[\leadsto \color{blue}{\left(\cos x \cdot \cos \varepsilon - \sin x \cdot \sin \varepsilon\right)} - \cos x\]
Applied associate--l-_binary64_10080.8
\[\leadsto \color{blue}{\cos x \cdot \cos \varepsilon - \left(\sin x \cdot \sin \varepsilon + \cos x\right)}\]
Simplified0.8
\[\leadsto \cos x \cdot \cos \varepsilon - \color{blue}{\left(\cos x + \sin x \cdot \sin \varepsilon\right)}\]
Simplified0.8
\[\leadsto \color{blue}{\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)}\]
if -0.028077178329225884 < eps < 0.0013137094133468092
Initial program 49.4
\[\cos \left(x + \varepsilon\right) - \cos x\]
- Using strategy
rm Applied diff-cos_binary64_122137.9
\[\leadsto \color{blue}{-2 \cdot \left(\sin \left(\frac{\left(x + \varepsilon\right) - x}{2}\right) \cdot \sin \left(\frac{\left(x + \varepsilon\right) + x}{2}\right)\right)}\]
Simplified0.6
\[\leadsto -2 \cdot \color{blue}{\left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(x + \varepsilon\right)}{2}\right)\right)}\]
Simplified0.6
\[\leadsto \color{blue}{-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)}\]
- Recombined 2 regimes into one program.
Final simplification0.7
\[\leadsto \begin{array}{l}
\mathbf{if}\;\varepsilon \leq -0.028077178329225884:\\
\;\;\;\;\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)\\
\mathbf{elif}\;\varepsilon \leq 0.0013137094133468092:\\
\;\;\;\;-2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{x + \left(\varepsilon + x\right)}{2}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\cos x \cdot \cos \varepsilon - \left(\cos x + \sin x \cdot \sin \varepsilon\right)\\
\end{array}\]
Reproduce
herbie shell --seed 2021042
(FPCore (x eps)
:name "2cos (problem 3.3.5)"
:precision binary64
(- (cos (+ x eps)) (cos x)))