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));
}

Error

Bits error versus x

Bits error versus eps

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Target

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

Alternatives

Alternative 1
Error25.7
Cost110912
\[\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
Error1.6
Cost97856
\[\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
Error53.2
Cost90816
\[\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
Error5.4
Cost78656
\[\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
Error1.5
Cost71488
\[\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
Error32.1
Cost65216
\[\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
Error0.7
Cost58432
\[\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
Error32.2
Cost52032
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt{\cos x \cdot \sin \varepsilon} \cdot \sqrt{\cos x \cdot \sin \varepsilon}\]
Alternative 9
Error37.9
Cost45632
\[\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
Error32.0
Cost45504
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt{\sin \varepsilon} \cdot \left(\cos x \cdot \sqrt{\sin \varepsilon}\right)\]
Alternative 11
Error16.6
Cost45504
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt{\cos x} \cdot \left(\sin \varepsilon \cdot \sqrt{\cos x}\right)\]
Alternative 12
Error22.7
Cost45440
\[\left(\cos x \cdot \sin \varepsilon + \sqrt[3]{{\left(\cos \varepsilon \cdot \sin x\right)}^{3}}\right) - \sin x\]
Alternative 13
Error25.5
Cost45440
\[\left(\cos \varepsilon \cdot \sin x + \sqrt[3]{{\left(\cos x \cdot \sin \varepsilon\right)}^{3}}\right) - \sin x\]
Alternative 14
Error29.6
Cost45376
\[\log \left(e^{\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x}\right) - \sin x\]
Alternative 15
Error23.0
Cost45376
\[\left(\cos x \cdot \sin \varepsilon + \log \left(e^{\cos \varepsilon \cdot \sin x}\right)\right) - \sin x\]
Alternative 16
Error0.4
Cost39232
\[\cos x \cdot \sin \varepsilon - \frac{\sin x \cdot \left(\sin \varepsilon \cdot \sin \varepsilon\right)}{\cos \varepsilon + 1}\]
Alternative 17
Error0.4
Cost39232
\[\cos x \cdot \sin \varepsilon - \sin x \cdot \frac{\sin \varepsilon \cdot \sin \varepsilon}{\cos \varepsilon + 1}\]
Alternative 18
Error20.4
Cost39040
\[\sqrt[3]{{\left(\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\right)}^{3}}\]
Alternative 19
Error20.4
Cost39040
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \sqrt[3]{{\left(\cos x \cdot \sin \varepsilon\right)}^{3}}\]
Alternative 20
Error0.4
Cost39040
\[\cos x \cdot \sin \varepsilon + \sqrt[3]{{\left(\sin x \cdot \left(\cos \varepsilon + -1\right)\right)}^{3}}\]
Alternative 21
Error33.4
Cost38976
\[e^{\log \left(\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\right)}\]
Alternative 22
Error29.4
Cost38976
\[\log \left(e^{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)}\right)\]
Alternative 23
Error29.4
Cost38976
\[\sin x \cdot \left(\cos \varepsilon + -1\right) + \log \left(e^{\cos x \cdot \sin \varepsilon}\right)\]
Alternative 24
Error0.4
Cost38976
\[\cos x \cdot \sin \varepsilon + \log \left(e^{\sin x \cdot \left(\cos \varepsilon + -1\right)}\right)\]
Alternative 25
Error0.4
Cost38976
\[\cos x \cdot \sin \varepsilon + \sin x \cdot \log \left(e^{\cos \varepsilon + -1}\right)\]
Alternative 26
Error21.9
Cost32576
\[\cos \varepsilon \cdot \sin x + \left(\cos x \cdot \sin \varepsilon - \sin x\right)\]
Alternative 27
Error50.7
Cost32576
\[\sqrt{\sin \left(x + \varepsilon\right)} \cdot \sqrt{\sin \left(x + \varepsilon\right)} - \sin x\]
Alternative 28
Error21.9
Cost32576
\[\left(\cos x \cdot \sin \varepsilon + \cos \varepsilon \cdot \sin x\right) - \sin x\]
Alternative 29
Error32.2
Cost26944
\[\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
Error0.4
Cost26176
\[\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\]
Alternative 31
Error40.8
Cost25984
\[\sqrt[3]{{\sin \left(x + \varepsilon\right)}^{3}} - \sin x\]
Alternative 32
Error50.9
Cost25920
\[e^{\log \sin \left(x + \varepsilon\right)} - \sin x\]
Alternative 33
Error44.8
Cost25920
\[\log \left(e^{\sin \left(x + \varepsilon\right)}\right) - \sin x\]
Alternative 34
Error32.1
Cost20224
\[\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
Error31.2
Cost20032
\[\sin \varepsilon + \left(x \cdot \left(\cos \varepsilon + x \cdot \left(\sin \varepsilon \cdot -0.5\right)\right) - x\right)\]
Alternative 36
Error28.1
Cost19904
\[\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\left(\varepsilon \cdot \varepsilon\right) \cdot -0.5\right)\]
Alternative 37
Error16.3
Cost19776
\[\cos x \cdot \sin \varepsilon + x \cdot \left(\cos \varepsilon + -1\right)\]
Alternative 38
Error28.1
Cost19648
\[\sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)\]
Alternative 39
Error38.5
Cost19648
\[\left(\sin \varepsilon + x \cdot \cos \varepsilon\right) - \sin x\]
Alternative 40
Error15.2
Cost13632
\[2 \cdot \left(\sin \left(\frac{\varepsilon}{2}\right) \cdot \cos \left(\frac{x + \left(x + \varepsilon\right)}{2}\right)\right)\]
Alternative 41
Error31.8
Cost13376
\[\varepsilon \cdot \left(\cos x + \varepsilon \cdot \left(\sin x \cdot -0.5\right)\right)\]
Alternative 42
Error38.0
Cost13248
\[\left(\sin \varepsilon + x \cdot \cos \varepsilon\right) - x\]
Alternative 43
Error30.1
Cost13248
\[\sin \varepsilon + x \cdot \left(\cos \varepsilon + -1\right)\]
Alternative 44
Error37.2
Cost13120
\[\sin \left(x + \varepsilon\right) - \sin x\]
Alternative 45
Error37.7
Cost12992
\[\sin \varepsilon - \sin x\]
Alternative 46
Error31.7
Cost6592
\[\cos x \cdot \varepsilon\]
Alternative 47
Error29.0
Cost6464
\[\sin \varepsilon\]
Alternative 48
Error59.3
Cost64
\[1\]
Alternative 49
Error61.3
Cost64
\[0\]
Alternative 50
Error59.3
Cost64
\[-1\]

Error

Derivation

  1. Initial program 37.2

    \[\sin \left(x + \varepsilon\right) - \sin x\]
  2. Using strategy rm
  3. Applied sin-sum_binary64_153621.9

    \[\leadsto \color{blue}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right)} - \sin x\]
  4. Taylor expanded around inf 21.9

    \[\leadsto \color{blue}{\left(\sin \varepsilon \cdot \cos x + \sin x \cdot \cos \varepsilon\right) - \sin x}\]
  5. Simplified0.4

    \[\leadsto \color{blue}{\cos x \cdot \sin \varepsilon + \sin x \cdot \left(\cos \varepsilon + -1\right)}\]
  6. Using strategy rm
  7. 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)}\]
  8. Simplified0.4

    \[\leadsto \cos x \cdot \sin \varepsilon + \left(\cos \varepsilon \cdot \sin x + \color{blue}{\left(-\sin x\right)}\right)\]
  9. Using strategy rm
  10. Applied unsub-neg_binary64_13970.4

    \[\leadsto \cos x \cdot \sin \varepsilon + \color{blue}{\left(\cos \varepsilon \cdot \sin x - \sin x\right)}\]
  11. Simplified0.4

    \[\leadsto \color{blue}{\cos x \cdot \sin \varepsilon + \left(\cos \varepsilon \cdot \sin x - \sin x\right)}\]
  12. 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)))