Average Error: 37.2 → 0.4
Time: 15.5s
Precision: binary64
Cost: 32576
\[\sin \left(x + \varepsilon\right) - \sin x\]
↓
\[\cos x \cdot \sin \varepsilon + \left(\cos \varepsilon \cdot \sin x - \sin x\right)\]
\sin \left(x + \varepsilon\right) - \sin x
↓
\cos x \cdot \sin \varepsilon + \left(\cos \varepsilon \cdot \sin x - \sin x\right)
(FPCore (x eps) :precision binary64 (- (sin (+ x eps)) (sin x)))
↓
(FPCore (x eps)
:precision binary64
(+ (* (cos x) (sin eps)) (- (* (cos eps) (sin x)) (sin x))))
double code(double x, double eps) {
return sin(x + eps) - sin(x);
}
↓
double code(double x, double eps) {
return (cos(x) * sin(eps)) + ((cos(eps) * sin(x)) - sin(x));
}
Try it out
Enter valid numbers for all inputs
Target
| Original | 37.2 |
|---|
| Target | 15.2 |
|---|
| Herbie | 0.4 |
|---|
\[2 \cdot \left(\cos \left(x + \frac{\varepsilon}{2}\right) \cdot \sin \left(\frac{\varepsilon}{2}\right)\right)\]
Alternatives
| Alternative 1 |
|---|
| Error | 25.7 |
|---|
| Cost | 110912 |
|---|
\[\frac{{\left(\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x\right)}^{3} - {\sin x}^{3}}{\sin x \cdot \sin x + \left(\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x\right) \cdot \left(\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + 1\right)\right)}\]
| Alternative 2 |
|---|
| Error | 1.6 |
|---|
| Cost | 97856 |
|---|
\[\sqrt[3]{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)} \cdot \left(\sqrt[3]{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)} \cdot \sqrt[3]{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)}\right)\]
| Alternative 3 |
|---|
| Error | 53.2 |
|---|
| Cost | 90816 |
|---|
\[\left(\sqrt{\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x} + \sqrt{\sin x}\right) \cdot \left(\sqrt{\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x} - \sqrt{\sin x}\right)\]
| Alternative 4 |
|---|
| Error | 5.4 |
|---|
| Cost | 78656 |
|---|
\[\frac{\left(\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\right) \cdot \left(\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + 1\right)\right)}{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + 1\right)}\]
| Alternative 5 |
|---|
| Error | 1.5 |
|---|
| Cost | 71488 |
|---|
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt[3]{\cos x \cdot \sin \varepsilon} \cdot \left(\sqrt[3]{\cos x \cdot \sin \varepsilon} \cdot \sqrt[3]{\cos x \cdot \sin \varepsilon}\right)\]
| Alternative 6 |
|---|
| Error | 32.1 |
|---|
| Cost | 65216 |
|---|
\[\sqrt{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)} \cdot \sqrt{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)}\]
| Alternative 7 |
|---|
| Error | 0.7 |
|---|
| Cost | 58432 |
|---|
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \left(\sqrt[3]{\cos x} \cdot \sqrt[3]{\cos x}\right) \cdot \left(\sin \varepsilon \cdot \sqrt[3]{\cos x}\right)\]
| Alternative 8 |
|---|
| Error | 32.2 |
|---|
| Cost | 52032 |
|---|
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt{\cos x \cdot \sin \varepsilon} \cdot \sqrt{\cos x \cdot \sin \varepsilon}\]
| Alternative 9 |
|---|
| Error | 37.9 |
|---|
| Cost | 45632 |
|---|
\[\sqrt[3]{\sin \left(x + \varepsilon\right)} \cdot \left(\sqrt[3]{\sin \left(x + \varepsilon\right)} \cdot \sqrt[3]{\sin \left(x + \varepsilon\right)}\right) - \sin x\]
| Alternative 10 |
|---|
| Error | 32.0 |
|---|
| Cost | 45504 |
|---|
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt{\sin \varepsilon} \cdot \left(\cos x \cdot \sqrt{\sin \varepsilon}\right)\]
| Alternative 11 |
|---|
| Error | 16.6 |
|---|
| Cost | 45504 |
|---|
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt{\cos x} \cdot \left(\sin \varepsilon \cdot \sqrt{\cos x}\right)\]
| Alternative 12 |
|---|
| Error | 22.7 |
|---|
| Cost | 45440 |
|---|
\[\left(\cos x \cdot \sin \varepsilon + \sqrt[3]{{\left(\cos \varepsilon \cdot \sin x\right)}^{3}}\right) - \sin x\]
| Alternative 13 |
|---|
| Error | 25.5 |
|---|
| Cost | 45440 |
|---|
\[\left(\cos \varepsilon \cdot \sin x + \sqrt[3]{{\left(\cos x \cdot \sin \varepsilon\right)}^{3}}\right) - \sin x\]
| Alternative 14 |
|---|
| Error | 29.6 |
|---|
| Cost | 45376 |
|---|
\[\log \left(e^{\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x}\right) - \sin x\]
| Alternative 15 |
|---|
| Error | 23.0 |
|---|
| Cost | 45376 |
|---|
\[\left(\cos x \cdot \sin \varepsilon + \log \left(e^{\cos \varepsilon \cdot \sin x}\right)\right) - \sin x\]
| Alternative 16 |
|---|
| Error | 0.4 |
|---|
| Cost | 39232 |
|---|
\[\cos x \cdot \sin \varepsilon - \frac{\sin x \cdot \left(\sin \varepsilon \cdot \sin \varepsilon\right)}{\cos \varepsilon + 1}\]
| Alternative 17 |
|---|
| Error | 0.4 |
|---|
| Cost | 39232 |
|---|
\[\cos x \cdot \sin \varepsilon - \sin x \cdot \frac{\sin \varepsilon \cdot \sin \varepsilon}{\cos \varepsilon + 1}\]
| Alternative 18 |
|---|
| Error | 20.4 |
|---|
| Cost | 39040 |
|---|
\[\sqrt[3]{{\left(\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\right)}^{3}}\]
| Alternative 19 |
|---|
| Error | 20.4 |
|---|
| Cost | 39040 |
|---|
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt[3]{{\left(\cos x \cdot \sin \varepsilon\right)}^{3}}\]
| Alternative 20 |
|---|
| Error | 0.4 |
|---|
| Cost | 39040 |
|---|
\[\cos x \cdot \sin \varepsilon + \sqrt[3]{{\left(\sin x \cdot \left(\cos \varepsilon + -1\right)\right)}^{3}}\]
| Alternative 21 |
|---|
| Error | 33.4 |
|---|
| Cost | 38976 |
|---|
\[e^{\log \left(\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\right)}\]
| Alternative 22 |
|---|
| Error | 29.4 |
|---|
| Cost | 38976 |
|---|
\[\log \left(e^{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)}\right)\]
| Alternative 23 |
|---|
| Error | 29.4 |
|---|
| Cost | 38976 |
|---|
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \log \left(e^{\cos x \cdot \sin \varepsilon}\right)\]
| Alternative 24 |
|---|
| Error | 0.4 |
|---|
| Cost | 38976 |
|---|
\[\cos x \cdot \sin \varepsilon + \log \left(e^{\sin x \cdot \left(\cos \varepsilon + -1\right)}\right)\]
| Alternative 25 |
|---|
| Error | 0.4 |
|---|
| Cost | 38976 |
|---|
\[\cos x \cdot \sin \varepsilon + \sin x \cdot \log \left(e^{\cos \varepsilon + -1}\right)\]
| Alternative 26 |
|---|
| Error | 21.9 |
|---|
| Cost | 32576 |
|---|
\[\cos \varepsilon \cdot \sin x + \left(\cos x \cdot \sin \varepsilon - \sin x\right)\]
| Alternative 27 |
|---|
| Error | 50.7 |
|---|
| Cost | 32576 |
|---|
\[\sqrt{\sin \left(x + \varepsilon\right)} \cdot \sqrt{\sin \left(x + \varepsilon\right)} - \sin x\]
| Alternative 28 |
|---|
| Error | 21.9 |
|---|
| Cost | 32576 |
|---|
\[\left(\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x\right) - \sin x\]
| Alternative 29 |
|---|
| Error | 32.2 |
|---|
| Cost | 26944 |
|---|
\[\cos x \cdot \left(\varepsilon + {\varepsilon}^{3} \cdot -0.16666666666666666\right) + \sin x \cdot \left(0.041666666666666664 \cdot {\varepsilon}^{4} - 0.5 \cdot \left(\varepsilon \cdot \varepsilon\right)\right)\]
| Alternative 30 |
|---|
| Error | 0.4 |
|---|
| Cost | 26176 |
|---|
\[\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\]
| Alternative 31 |
|---|
| Error | 40.8 |
|---|
| Cost | 25984 |
|---|
\[\sqrt[3]{{\sin \left(x + \varepsilon\right)}^{3}} - \sin x\]
| Alternative 32 |
|---|
| Error | 50.9 |
|---|
| Cost | 25920 |
|---|
\[e^{\log \sin \left(x + \varepsilon\right)} - \sin x\]
| Alternative 33 |
|---|
| Error | 44.8 |
|---|
| Cost | 25920 |
|---|
\[\log \left(e^{\sin \left(x + \varepsilon\right)}\right) - \sin x\]
| Alternative 34 |
|---|
| Error | 32.1 |
|---|
| Cost | 20224 |
|---|
\[\cos x \cdot \left(\varepsilon + {\varepsilon}^{3} \cdot -0.16666666666666666\right) + \sin x \cdot \left(\left(\varepsilon \cdot \varepsilon\right) \cdot -0.5\right)\]
| Alternative 35 |
|---|
| Error | 31.2 |
|---|
| Cost | 20032 |
|---|
\[\sin \varepsilon + \left(x \cdot \left(\cos \varepsilon + x \cdot \left(\sin \varepsilon \cdot -0.5\right)\right) - x\right)\]
| Alternative 36 |
|---|
| Error | 28.1 |
|---|
| Cost | 19904 |
|---|
\[\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\left(\varepsilon \cdot \varepsilon\right) \cdot -0.5\right)\]
| Alternative 37 |
|---|
| Error | 16.3 |
|---|
| Cost | 19776 |
|---|
\[\cos x \cdot \sin \varepsilon + x \cdot \left(\cos \varepsilon + -1\right)\]
| Alternative 38 |
|---|
| Error | 28.1 |
|---|
| Cost | 19648 |
|---|
\[\sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\]
| Alternative 39 |
|---|
| Error | 38.5 |
|---|
| Cost | 19648 |
|---|
\[\left(\sin \varepsilon + x \cdot \cos \varepsilon\right) - \sin x\]
| Alternative 40 |
|---|
| Error | 15.2 |
|---|
| Cost | 13632 |
|---|
\[2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \cos \left(\frac{x + \left(x + \varepsilon\right)}{2}\right)\right)\]
| Alternative 41 |
|---|
| Error | 31.8 |
|---|
| Cost | 13376 |
|---|
\[\varepsilon \cdot \left(\cos x + \varepsilon \cdot \left(\sin x \cdot -0.5\right)\right)\]
| Alternative 42 |
|---|
| Error | 38.0 |
|---|
| Cost | 13248 |
|---|
\[\left(\sin \varepsilon + x \cdot \cos \varepsilon\right) - x\]
| Alternative 43 |
|---|
| Error | 30.1 |
|---|
| Cost | 13248 |
|---|
\[\sin \varepsilon + x \cdot \left(\cos \varepsilon + -1\right)\]
| Alternative 44 |
|---|
| Error | 37.2 |
|---|
| Cost | 13120 |
|---|
\[\sin \left(x + \varepsilon\right) - \sin x\]
| Alternative 45 |
|---|
| Error | 37.7 |
|---|
| Cost | 12992 |
|---|
\[\sin \varepsilon - \sin x\]
| Alternative 46 |
|---|
| Error | 31.7 |
|---|
| Cost | 6592 |
|---|
\[\cos x \cdot \varepsilon\]
| Alternative 47 |
|---|
| Error | 29.0 |
|---|
| Cost | 6464 |
|---|
\[\sin \varepsilon\]
| Alternative 48 |
|---|
| Error | 59.3 |
|---|
| Cost | 64 |
|---|
\[1\]
| Alternative 49 |
|---|
| Error | 61.3 |
|---|
| Cost | 64 |
|---|
\[0\]
| Alternative 50 |
|---|
| Error | 59.3 |
|---|
| Cost | 64 |
|---|
\[-1\]
Error

Derivation
Initial program 37.2
\[\sin \left(x + \varepsilon\right) - \sin x\]
- Using strategy
rm Applied sin-sum_binary64_153621.9
\[\leadsto \color{blue}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right)} - \sin x\]
Taylor expanded around inf 21.9
\[\leadsto \color{blue}{\left(\sin \varepsilon \cdot \cos x + \sin x \cdot \cos \varepsilon\right) - \sin x}\]
Simplified0.4
\[\leadsto \color{blue}{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)}\]
- Using strategy
rm Applied distribute-rgt-in_binary64_13530.4
\[\leadsto \cos x \cdot \sin \varepsilon + \color{blue}{\left(\cos \varepsilon \cdot \sin x + -1 \cdot \sin x\right)}\]
Simplified0.4
\[\leadsto \cos x \cdot \sin \varepsilon + \left(\cos \varepsilon \cdot \sin x + \color{blue}{\left(-\sin x\right)}\right)\]
- Using strategy
rm Applied unsub-neg_binary64_13970.4
\[\leadsto \cos x \cdot \sin \varepsilon + \color{blue}{\left(\cos \varepsilon \cdot \sin x - \sin x\right)}\]
Simplified0.4
\[\leadsto \color{blue}{\cos x \cdot \sin \varepsilon + \left(\cos \varepsilon \cdot \sin x - \sin x\right)}\]
Final simplification0.4
\[\leadsto \cos x \cdot \sin \varepsilon + \left(\cos \varepsilon \cdot \sin x - \sin x\right)\]
Reproduce
herbie shell --seed 2021042
(FPCore (x eps)
:name "2sin (example 3.3)"
:precision binary64
:herbie-target
(* 2.0 (* (cos (+ x (/ eps 2.0))) (sin (/ eps 2.0))))
(- (sin (+ x eps)) (sin x)))