\[\sin \left(x + \varepsilon\right) - \sin x\]
Test:
NMSE example 3.3
Bits:
128 bits
Bits error versus x
Bits error versus eps
Time: 15.7 s
Input Error: 37.0
Output Error: 0.4
Log:
Profile: 🕒
\(\cos x \cdot \sin \varepsilon - \left(\sin x - \cos \varepsilon \cdot \sin x\right)\)
  1. Started with
    \[\sin \left(x + \varepsilon\right) - \sin x\]
    37.0
  2. Using strategy rm
    37.0
  3. Applied sin-sum to get
    \[\color{red}{\sin \left(x + \varepsilon\right)} - \sin x \leadsto \color{blue}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right)} - \sin x\]
    22.1
  4. Applied associate--l+ to get
    \[\color{red}{\left(\sin x \cdot \cos \varepsilon + \cos x \cdot \sin \varepsilon\right) - \sin x} \leadsto \color{blue}{\sin x \cdot \cos \varepsilon + \left(\cos x \cdot \sin \varepsilon - \sin x\right)}\]
    22.1
  5. Using strategy rm
    22.1
  6. Applied add-cube-cbrt to get
    \[\sin x \cdot \cos \varepsilon + \left(\color{red}{\cos x \cdot \sin \varepsilon} - \sin x\right) \leadsto \sin x \cdot \cos \varepsilon + \left(\color{blue}{{\left(\sqrt[3]{\cos x \cdot \sin \varepsilon}\right)}^3} - \sin x\right)\]
    22.7
  7. Applied taylor to get
    \[\sin x \cdot \cos \varepsilon + \left({\left(\sqrt[3]{\cos x \cdot \sin \varepsilon}\right)}^3 - \sin x\right) \leadsto \sin x \cdot \cos \varepsilon + \left({\left(\sqrt[3]{\sin \varepsilon \cdot \cos x}\right)}^3 - \sin x\right)\]
    22.7
  8. Taylor expanded around 0 to get
    \[\sin x \cdot \cos \varepsilon + \left({\color{red}{\left(\sqrt[3]{\sin \varepsilon \cdot \cos x}\right)}}^3 - \sin x\right) \leadsto \sin x \cdot \cos \varepsilon + \left({\color{blue}{\left(\sqrt[3]{\sin \varepsilon \cdot \cos x}\right)}}^3 - \sin x\right)\]
    22.7
  9. Applied simplify to get
    \[\color{red}{\sin x \cdot \cos \varepsilon + \left({\left(\sqrt[3]{\sin \varepsilon \cdot \cos x}\right)}^3 - \sin x\right)} \leadsto \color{blue}{\cos x \cdot \sin \varepsilon - \left(\sin x - \cos \varepsilon \cdot \sin x\right)}\]
    0.4

Original test:


(lambda ((x default) (eps default))
  #:name "NMSE example 3.3"
  (- (sin (+ x eps)) (sin x))
  #:target
  (* 2 (* (cos (+ x (/ eps 2))) (sin (/ eps 2)))))